stream-chat-react-native-core 5.24.1-beta.1 → 5.25.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.
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
- package/lib/commonjs/components/Channel/Channel.js +16 -13
- package/lib/commonjs/components/Channel/Channel.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js +2 -0
- package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/commonjs/components/MessageInput/SendButton.js +3 -1
- package/lib/commonjs/components/MessageInput/SendButton.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +13 -11
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -0
- package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
- package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
- package/lib/commonjs/emoji-data/compile.js +63 -11
- package/lib/commonjs/emoji-data/compile.js.map +1 -1
- package/lib/commonjs/emoji-data/index.js +9843 -37
- package/lib/commonjs/emoji-data/index.js.map +1 -1
- package/lib/commonjs/i18n/en.json +1 -1
- package/lib/commonjs/i18n/es.json +34 -34
- package/lib/commonjs/i18n/fr.json +36 -36
- package/lib/commonjs/i18n/he.json +36 -36
- package/lib/commonjs/i18n/hi.json +36 -36
- package/lib/commonjs/i18n/it.json +36 -36
- package/lib/commonjs/i18n/ja.json +36 -36
- package/lib/commonjs/i18n/ko.json +36 -36
- package/lib/commonjs/i18n/nl.json +36 -36
- package/lib/commonjs/i18n/ru.json +35 -35
- package/lib/commonjs/i18n/tr.json +36 -36
- package/lib/commonjs/index.js +4 -4
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/utils/utils.js +84 -31
- package/lib/commonjs/utils/utils.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
- package/lib/module/components/Channel/Channel.js +16 -13
- package/lib/module/components/Channel/Channel.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +2 -0
- package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/module/components/MessageInput/SendButton.js +3 -1
- package/lib/module/components/MessageInput/SendButton.js.map +1 -1
- package/lib/module/contexts/messageInputContext/MessageInputContext.js +13 -11
- package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -0
- package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
- package/lib/module/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
- package/lib/module/emoji-data/compile.js +63 -11
- package/lib/module/emoji-data/compile.js.map +1 -1
- package/lib/module/emoji-data/index.js +9843 -37
- package/lib/module/emoji-data/index.js.map +1 -1
- package/lib/module/i18n/en.json +1 -1
- package/lib/module/i18n/es.json +34 -34
- package/lib/module/i18n/fr.json +36 -36
- package/lib/module/i18n/he.json +36 -36
- package/lib/module/i18n/hi.json +36 -36
- package/lib/module/i18n/it.json +36 -36
- package/lib/module/i18n/ja.json +36 -36
- package/lib/module/i18n/ko.json +36 -36
- package/lib/module/i18n/nl.json +36 -36
- package/lib/module/i18n/ru.json +35 -35
- package/lib/module/i18n/tr.json +36 -36
- package/lib/module/index.js +4 -4
- package/lib/module/index.js.map +1 -1
- package/lib/module/utils/utils.js +84 -31
- package/lib/module/utils/utils.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +1 -1
- package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +11 -3
- package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +1 -1
- package/lib/typescript/contexts/suggestionsContext/SuggestionsContext.d.ts +1 -1
- package/lib/typescript/emoji-data/index.d.ts +9 -0
- package/lib/typescript/i18n/en.json +1 -1
- package/lib/typescript/i18n/es.json +34 -34
- package/lib/typescript/i18n/fr.json +36 -36
- package/lib/typescript/i18n/he.json +36 -36
- package/lib/typescript/i18n/hi.json +36 -36
- package/lib/typescript/i18n/it.json +36 -36
- package/lib/typescript/i18n/ja.json +36 -36
- package/lib/typescript/i18n/ko.json +36 -36
- package/lib/typescript/i18n/nl.json +36 -36
- package/lib/typescript/i18n/ru.json +35 -35
- package/lib/typescript/i18n/tr.json +36 -36
- package/lib/typescript/index.d.ts +1 -1
- package/lib/typescript/utils/utils.d.ts +9 -4
- package/package.json +3 -2
- package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +1 -1
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionItem.tsx +1 -1
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +1 -1
- package/src/components/Channel/Channel.tsx +3 -0
- package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +2 -0
- package/src/components/MessageInput/SendButton.tsx +1 -1
- package/src/contexts/messageInputContext/MessageInputContext.tsx +17 -2
- package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +2 -0
- package/src/contexts/suggestionsContext/SuggestionsContext.tsx +1 -1
- package/src/emoji-data/compile.js +56 -36
- package/src/emoji-data/index.ts +5178 -0
- package/src/i18n/en.json +1 -1
- package/src/i18n/es.json +34 -34
- package/src/i18n/fr.json +36 -36
- package/src/i18n/he.json +36 -36
- package/src/i18n/hi.json +36 -36
- package/src/i18n/it.json +36 -36
- package/src/i18n/ja.json +36 -36
- package/src/i18n/ko.json +36 -36
- package/src/i18n/nl.json +36 -36
- package/src/i18n/ru.json +35 -35
- package/src/i18n/tr.json +36 -36
- package/src/index.ts +1 -1
- package/src/utils/utils.ts +47 -33
- package/src/version.json +1 -1
- package/lib/commonjs/emoji-data/compiled.js +0 -15587
- package/lib/commonjs/emoji-data/compiled.js.map +0 -1
- package/lib/commonjs/emoji-data/emojiNames.js +0 -4913
- package/lib/commonjs/emoji-data/emojiNames.js.map +0 -1
- package/lib/commonjs/emoji-data/emojis.js +0 -13155
- package/lib/commonjs/emoji-data/emojis.js.map +0 -1
- package/lib/module/emoji-data/compiled.js +0 -15587
- package/lib/module/emoji-data/compiled.js.map +0 -1
- package/lib/module/emoji-data/emojiNames.js +0 -4913
- package/lib/module/emoji-data/emojiNames.js.map +0 -1
- package/lib/module/emoji-data/emojis.js +0 -13155
- package/lib/module/emoji-data/emojis.js.map +0 -1
- package/lib/typescript/emoji-data/compiled.d.ts +0 -20
- package/lib/typescript/emoji-data/emojiNames.d.ts +0 -0
- package/lib/typescript/emoji-data/emojis.d.ts +0 -0
- package/src/emoji-data/compiled.ts +0 -8930
- package/src/emoji-data/emojiNames.ts +0 -6960
- package/src/emoji-data/emojis.ts +0 -14893
- package/src/emoji-data/index.js +0 -38
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_throttle","_interopRequireDefault","_ChannelContext","_MessageInputContext","_SuggestionsContext","_ThemeContext","_TranslationContext","_utils","_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","inputBox","flex","fontSize","includeFontPadding","padding","paddingTop","textAlignVertical","computeCaretPosition","token","startOfTokenPosition","length","isCommand","text","split","AutoCompleteInputWithContext","props","additionalTextInputProps","autoCompleteSuggestionsLimit","closeSuggestions","_props$cooldownActive","cooldownActive","giphyActive","giphyEnabled","maxMessageLength","mentionAllAppUsersEnabled","mentionAllAppUsersQuery","numberOfLines","onChange","openSuggestions","setGiphyActive","setInputBoxRef","t","triggerSettings","updateSuggestionsContext","updateSuggestions","isTrackingStarted","useRef","selectionEnd","_useState","useState","_useState2","_slicedToArray2","textHeight","setTextHeight","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","black","grey","messageInput","handleChange","newText","fromUpdate","arguments","undefined","handleSuggestionsThrottled","useEffect","startTracking","trigger","triggerSetting","current","type","stopTracking","_ref2","_asyncToGenerator2","_regenerator","mark","_callee","_ref","query","_triggerSetting","_triggerSetting2","wrap","_callee$","_context","prev","next","isMentionTrigger","dataProvider","data","queryCallback","onSelect","item","onSelectSuggestion","queryText","limit","isCommandTrigger","stop","_x","apply","handleSelectionChange","_ref3","end","nativeEvent","selection","_ref4","newTokenString","isSuggestionCommand","output","isEmojiTrigger","isSuggestionEmoji","isSuggestionUser","textToModify","slice","lastIndexOf","newCaretPosition","modifiedText","substring","replace","startsWith","callback","handleCommand","_ref5","_callee2","actualToken","_callee2$","_context2","abrupt","trim","_x2","handleMentions","_ref6","tokenMatch","lastToken","handleMentionsTrigger","keys","find","handleEmojis","_ref7","handleEmojisTrigger","handleSuggestions","_ref8","_callee3","mentionTokenMatch","emojiTokenMatch","_callee3$","_context3","test","sent","match","_x3","placeholderText","throttle","leading","createElement","TextInput","_extends2","autoFocus","maxLength","multiline","onChangeText","onContentSizeChange","_ref9","height","contentSize","onSelectionChange","placeholder","placeholderTextColor","ref","style","color","maxHeight","textAlign","I18nManager","isRTL","testID","value","__self","__source","fileName","lineNumber","columnNumber","areEqual","prevProps","nextProps","prevCooldownActive","prevGiphyActive","prevT","prevText","nextCooldownActive","nextGiphyActive","nextT","nextText","giphyActiveEqual","tEqual","textEqual","cooldownActiveEqual","MemoizedAutoCompleteInput","React","memo","AutoCompleteInput","_useChannelContext","useChannelContext","_useMessageInputConte","useMessageInputContext","_useSuggestionsContex","useSuggestionsContext","_useTranslationContex","useTranslationContext","exports","displayName"],"sources":["AutoCompleteInput.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { I18nManager, StyleSheet, TextInput, TextInputProps } from 'react-native';\n\nimport throttle from 'lodash/throttle';\n\nimport {\n ChannelContextValue,\n useChannelContext,\n} from '../../contexts/channelContext/ChannelContext';\nimport {\n MessageInputContextValue,\n useMessageInputContext,\n} from '../../contexts/messageInputContext/MessageInputContext';\nimport {\n isSuggestionCommand,\n isSuggestionEmoji,\n isSuggestionUser,\n Suggestion,\n SuggestionCommand,\n SuggestionsContextValue,\n SuggestionUser,\n useSuggestionsContext,\n} from '../../contexts/suggestionsContext/SuggestionsContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n TranslationContextValue,\n useTranslationContext,\n} from '../../contexts/translationContext/TranslationContext';\nimport type { Emoji } from '../../emoji-data/compiled';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { isCommandTrigger, isEmojiTrigger, isMentionTrigger } from '../../utils/utils';\n\nimport type { Trigger } from '../../utils/utils';\n\nconst styles = StyleSheet.create({\n inputBox: {\n flex: 1,\n fontSize: 14,\n includeFontPadding: false, // for android vertical text centering\n padding: 0, // removal of default text input padding on android\n paddingTop: 0, // removal of iOS top padding for weird centering\n textAlignVertical: 'center', // for android vertical text centering\n },\n});\n\nconst computeCaretPosition = (token: string, startOfTokenPosition: number) =>\n startOfTokenPosition + token.length;\n\nconst isCommand = (text: string) => text[0] === '/' && text.split(' ').length <= 1;\n\ntype AutoCompleteInputPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<ChannelContextValue<StreamChatGenerics>, 'giphyEnabled'> &\n Pick<\n MessageInputContextValue<StreamChatGenerics>,\n | 'additionalTextInputProps'\n | 'autoCompleteSuggestionsLimit'\n | 'giphyActive'\n | 'maxMessageLength'\n | 'mentionAllAppUsersEnabled'\n | 'mentionAllAppUsersQuery'\n | 'numberOfLines'\n | 'onChange'\n | 'setGiphyActive'\n | 'setInputBoxRef'\n | 'text'\n | 'triggerSettings'\n > &\n Pick<\n SuggestionsContextValue<StreamChatGenerics>,\n 'closeSuggestions' | 'openSuggestions' | 'updateSuggestions'\n > &\n Pick<TranslationContextValue, 't'> & {\n /**\n * This is currently passed in from MessageInput to avoid rerenders\n * that would happen if we put this in the MessageInputContext\n */\n cooldownActive?: boolean;\n };\n\nexport type AutoCompleteInputProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<AutoCompleteInputPropsWithContext<StreamChatGenerics>>;\n\nconst AutoCompleteInputWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteInputPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n additionalTextInputProps,\n autoCompleteSuggestionsLimit,\n closeSuggestions,\n cooldownActive = false,\n giphyActive,\n giphyEnabled,\n maxMessageLength,\n mentionAllAppUsersEnabled,\n mentionAllAppUsersQuery,\n numberOfLines,\n onChange,\n openSuggestions,\n setGiphyActive,\n setInputBoxRef,\n t,\n text,\n triggerSettings,\n updateSuggestions: updateSuggestionsContext,\n } = props;\n\n const isTrackingStarted = useRef(false);\n const selectionEnd = useRef(0);\n const [textHeight, setTextHeight] = useState(0);\n\n const {\n theme: {\n colors: { black, grey },\n messageInput: { inputBox },\n },\n } = useTheme();\n\n const handleChange = (newText: string, fromUpdate = false) => {\n if (!fromUpdate) {\n onChange(newText);\n } else {\n handleSuggestionsThrottled(newText);\n }\n };\n\n useEffect(() => {\n handleChange(text, true);\n }, [text]);\n\n const startTracking = (trigger: Trigger) => {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n isTrackingStarted.current = true;\n const { type } = triggerSetting;\n openSuggestions(type);\n }\n };\n\n const stopTracking = () => {\n isTrackingStarted.current = false;\n closeSuggestions();\n };\n\n const updateSuggestions = async ({\n query,\n trigger,\n }: {\n query: Suggestion['name'];\n trigger: Trigger;\n }) => {\n if (isMentionTrigger(trigger)) {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n await triggerSetting.dataProvider(\n query as SuggestionUser<StreamChatGenerics>['name'],\n text,\n (data, queryCallback) => {\n if (query === queryCallback) {\n updateSuggestionsContext({\n data,\n onSelect: (item) => onSelectSuggestion({ item, trigger }),\n queryText: query,\n });\n }\n },\n {\n limit: autoCompleteSuggestionsLimit,\n mentionAllAppUsersEnabled,\n mentionAllAppUsersQuery,\n },\n );\n }\n } else if (isCommandTrigger(trigger)) {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n await triggerSetting.dataProvider(\n query as SuggestionCommand<StreamChatGenerics>['name'],\n text,\n (data, queryCallback) => {\n if (query !== queryCallback) {\n return;\n }\n\n updateSuggestionsContext({\n data,\n onSelect: (item) => onSelectSuggestion({ item, trigger }),\n queryText: query,\n });\n },\n {\n limit: autoCompleteSuggestionsLimit,\n },\n );\n }\n } else {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n await triggerSetting.dataProvider(query as Emoji['name'], text, (data, queryCallback) => {\n if (query !== queryCallback) {\n return;\n }\n\n updateSuggestionsContext({\n data,\n onSelect: (item) => onSelectSuggestion({ item, trigger }),\n queryText: query,\n });\n });\n }\n }\n };\n\n const handleSelectionChange: TextInputProps['onSelectionChange'] = ({\n nativeEvent: {\n selection: { end },\n },\n }) => {\n selectionEnd.current = end;\n };\n\n const onSelectSuggestion = ({\n item,\n trigger,\n }: {\n item: Suggestion<StreamChatGenerics>;\n trigger: Trigger;\n }) => {\n if (!trigger || !triggerSettings[trigger]) {\n return;\n }\n\n let newTokenString = '';\n if (isCommandTrigger(trigger) && isSuggestionCommand(item)) {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n newTokenString = `${triggerSetting.output(item).text} `;\n }\n }\n if (isEmojiTrigger(trigger) && isSuggestionEmoji(item)) {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n newTokenString = `${triggerSetting.output(item).text} `;\n }\n }\n if (isMentionTrigger(trigger) && isSuggestionUser(item)) {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n newTokenString = `${triggerSetting.output(item).text} `;\n }\n }\n\n const textToModify = text.slice(0, selectionEnd.current);\n\n const startOfTokenPosition = textToModify.lastIndexOf(trigger, selectionEnd.current);\n\n const newCaretPosition = computeCaretPosition(newTokenString, startOfTokenPosition);\n\n const modifiedText = `${textToModify.substring(0, startOfTokenPosition)}${newTokenString}`;\n\n stopTracking();\n\n const newText = text.replace(textToModify, modifiedText);\n\n if (giphyEnabled && newText.startsWith('/giphy ')) {\n onChange(newText.slice(7)); // 7 because of '/giphy ' length\n setGiphyActive(true);\n } else {\n onChange(newText);\n }\n\n selectionEnd.current = newCaretPosition || 0;\n\n if (isMentionTrigger(trigger) && isSuggestionUser(item)) {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n triggerSetting.callback(item);\n }\n }\n };\n\n const handleCommand = async (text: string) => {\n if (!isCommand(text)) {\n return false;\n }\n\n if (!isTrackingStarted.current) {\n startTracking('/');\n }\n const actualToken = text.trim().slice(1);\n await updateSuggestions({ query: actualToken, trigger: '/' });\n\n return true;\n };\n\n const handleMentions = ({ tokenMatch }: { tokenMatch: RegExpMatchArray | null }) => {\n const lastToken = tokenMatch?.[tokenMatch.length - 1];\n const handleMentionsTrigger =\n (lastToken && Object.keys(triggerSettings).find((trigger) => trigger === lastToken[0])) ||\n null;\n\n /*\n if we lost the trigger token or there is no following character we want to close\n the autocomplete\n */\n if (!lastToken || lastToken.length <= 0) {\n stopTracking();\n return;\n }\n\n const actualToken = lastToken.slice(1);\n\n // if trigger is not configured step out from the function, otherwise proceed\n if (!handleMentionsTrigger) {\n return;\n }\n\n if (!isTrackingStarted.current) {\n startTracking('@');\n }\n\n updateSuggestions({ query: actualToken, trigger: '@' });\n };\n\n const handleEmojis = ({ tokenMatch }: { tokenMatch: RegExpMatchArray | null }) => {\n const lastToken = tokenMatch?.[tokenMatch.length - 1].trim();\n const handleEmojisTrigger =\n (lastToken && Object.keys(triggerSettings).find((trigger) => trigger === lastToken[0])) ||\n null;\n\n /*\n if we lost the trigger token or there is no following character we want to close\n the autocomplete\n */\n if (!lastToken || lastToken.length <= 0) {\n stopTracking();\n return;\n }\n\n const actualToken = lastToken.slice(1);\n\n // if trigger is not configured step out from the function, otherwise proceed\n if (!handleEmojisTrigger) {\n return;\n }\n\n if (!isTrackingStarted.current) {\n startTracking(':');\n }\n\n updateSuggestions({ query: actualToken, trigger: ':' });\n };\n\n const handleSuggestions = async (text: string) => {\n if (\n /\\s/.test(text.slice(selectionEnd.current - 1, selectionEnd.current)) &&\n isTrackingStarted.current\n ) {\n stopTracking();\n } else if (!(await handleCommand(text))) {\n const mentionTokenMatch = text\n .slice(0, selectionEnd.current)\n .match(/(?!^|\\W)?@[^\\s@]*\\s?[^\\s@]*$/g);\n if (mentionTokenMatch) {\n handleMentions({ tokenMatch: mentionTokenMatch });\n } else {\n const emojiTokenMatch = text\n .slice(0, selectionEnd.current)\n .match(/(?!^|\\W)?:\\w{2,}[^\\s]*\\s?[^\\s]*$/g);\n handleEmojis({ tokenMatch: emojiTokenMatch });\n }\n }\n };\n\n const placeholderText = giphyActive\n ? t('Search GIFs')\n : cooldownActive\n ? t('Slow mode ON')\n : t('Send a message');\n\n const handleSuggestionsThrottled = throttle(handleSuggestions, 100, {\n leading: false,\n });\n\n return (\n <TextInput\n autoFocus={giphyActive}\n maxLength={maxMessageLength}\n multiline\n onChangeText={(newText) => {\n if (giphyEnabled && newText.startsWith('/giphy ')) {\n handleChange(newText.slice(7)); // 7 because of '/giphy' length\n setGiphyActive(true);\n } else {\n handleChange(newText);\n }\n }}\n onContentSizeChange={({\n nativeEvent: {\n contentSize: { height },\n },\n }) => {\n if (!textHeight) {\n setTextHeight(height);\n }\n }}\n onSelectionChange={handleSelectionChange}\n placeholder={placeholderText}\n placeholderTextColor={grey}\n ref={setInputBoxRef}\n style={[\n styles.inputBox,\n {\n color: black,\n maxHeight: (textHeight || 17) * numberOfLines,\n textAlign: I18nManager.isRTL ? 'right' : 'left',\n },\n inputBox,\n ]}\n testID='auto-complete-text-input'\n value={text}\n {...additionalTextInputProps}\n />\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: AutoCompleteInputPropsWithContext<StreamChatGenerics>,\n nextProps: AutoCompleteInputPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n cooldownActive: prevCooldownActive,\n giphyActive: prevGiphyActive,\n t: prevT,\n text: prevText,\n } = prevProps;\n const {\n cooldownActive: nextCooldownActive,\n giphyActive: nextGiphyActive,\n t: nextT,\n text: nextText,\n } = nextProps;\n\n const giphyActiveEqual = prevGiphyActive === nextGiphyActive;\n if (!giphyActiveEqual) return false;\n\n const tEqual = prevT === nextT;\n if (!tEqual) return false;\n\n const textEqual = prevText === nextText;\n if (!textEqual) return false;\n\n const cooldownActiveEqual = prevCooldownActive === nextCooldownActive;\n if (!cooldownActiveEqual) return false;\n\n return true;\n};\n\nconst MemoizedAutoCompleteInput = React.memo(\n AutoCompleteInputWithContext,\n areEqual,\n) as typeof AutoCompleteInputWithContext;\n\nexport const AutoCompleteInput = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteInputProps<StreamChatGenerics>,\n) => {\n const { giphyEnabled } = useChannelContext<StreamChatGenerics>();\n const {\n additionalTextInputProps,\n autoCompleteSuggestionsLimit,\n giphyActive,\n maxMessageLength,\n mentionAllAppUsersEnabled,\n mentionAllAppUsersQuery,\n numberOfLines,\n onChange,\n setGiphyActive,\n setInputBoxRef,\n text,\n triggerSettings,\n } = useMessageInputContext<StreamChatGenerics>();\n const { closeSuggestions, openSuggestions, updateSuggestions } =\n useSuggestionsContext<StreamChatGenerics>();\n const { t } = useTranslationContext();\n\n return (\n <MemoizedAutoCompleteInput\n {...{\n additionalTextInputProps,\n autoCompleteSuggestionsLimit,\n closeSuggestions,\n giphyActive,\n giphyEnabled,\n maxMessageLength,\n mentionAllAppUsersEnabled,\n mentionAllAppUsersQuery,\n numberOfLines,\n onChange,\n openSuggestions,\n setGiphyActive,\n setInputBoxRef,\n t,\n text,\n triggerSettings,\n updateSuggestions,\n }}\n {...props}\n />\n );\n};\n\nAutoCompleteInput.displayName = 'AutoCompleteInput{messageInput{inputBox}}';\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,SAAA,GAAAC,sBAAA,CAAAH,OAAA;AAEA,IAAAI,eAAA,GAAAJ,OAAA;AAIA,IAAAK,oBAAA,GAAAL,OAAA;AAIA,IAAAM,mBAAA,GAAAN,OAAA;AAUA,IAAAO,aAAA,GAAAP,OAAA;AACA,IAAAQ,mBAAA,GAAAR,OAAA;AAMA,IAAAS,MAAA,GAAAT,OAAA;AAAuF,IAAAU,KAAA;EAAAC,YAAA;AAAA,SAAAC,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAd,wBAAAkB,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,cAAAN,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAIvF,IAAMW,MAAM,GAAGC,uBAAU,CAACC,MAAM,CAAC;EAC/BC,QAAQ,EAAE;IACRC,IAAI,EAAE,CAAC;IACPC,QAAQ,EAAE,EAAE;IACZC,kBAAkB,EAAE,KAAK;IACzBC,OAAO,EAAE,CAAC;IACVC,UAAU,EAAE,CAAC;IACbC,iBAAiB,EAAE;EACrB;AACF,CAAC,CAAC;AAEF,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAIC,KAAa,EAAEC,oBAA4B;EAAA,OACvEA,oBAAoB,GAAGD,KAAK,CAACE,MAAM;AAAA;AAErC,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAIC,IAAY;EAAA,OAAKA,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAIA,IAAI,CAACC,KAAK,CAAC,GAAG,CAAC,CAACH,MAAM,IAAI,CAAC;AAAA;AAoClF,IAAMI,4BAA4B,GAAG,SAA/BA,4BAA4BA,CAGhCC,KAA4D,EACzD;EACH,IACEC,wBAAwB,GAkBtBD,KAAK,CAlBPC,wBAAwB;IACxBC,4BAA4B,GAiB1BF,KAAK,CAjBPE,4BAA4B;IAC5BC,gBAAgB,GAgBdH,KAAK,CAhBPG,gBAAgB;IAAAC,qBAAA,GAgBdJ,KAAK,CAfPK,cAAc;IAAdA,cAAc,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA;IACtBE,WAAW,GAcTN,KAAK,CAdPM,WAAW;IACXC,YAAY,GAaVP,KAAK,CAbPO,YAAY;IACZC,gBAAgB,GAYdR,KAAK,CAZPQ,gBAAgB;IAChBC,yBAAyB,GAWvBT,KAAK,CAXPS,yBAAyB;IACzBC,uBAAuB,GAUrBV,KAAK,CAVPU,uBAAuB;IACvBC,aAAa,GASXX,KAAK,CATPW,aAAa;IACbC,QAAQ,GAQNZ,KAAK,CARPY,QAAQ;IACRC,eAAe,GAObb,KAAK,CAPPa,eAAe;IACfC,cAAc,GAMZd,KAAK,CANPc,cAAc;IACdC,cAAc,GAKZf,KAAK,CALPe,cAAc;IACdC,CAAC,GAIChB,KAAK,CAJPgB,CAAC;IACDnB,IAAI,GAGFG,KAAK,CAHPH,IAAI;IACJoB,eAAe,GAEbjB,KAAK,CAFPiB,eAAe;IACIC,wBAAwB,GACzClB,KAAK,CADPmB,iBAAiB;EAGnB,IAAMC,iBAAiB,GAAG,IAAAC,aAAM,EAAC,KAAK,CAAC;EACvC,IAAMC,YAAY,GAAG,IAAAD,aAAM,EAAC,CAAC,CAAC;EAC9B,IAAAE,SAAA,GAAoC,IAAAC,eAAQ,EAAC,CAAC,CAAC;IAAAC,UAAA,OAAAC,eAAA,aAAAH,SAAA;IAAxCI,UAAU,GAAAF,UAAA;IAAEG,aAAa,GAAAH,UAAA;EAEhC,IAAAI,SAAA,GAKI,IAAAC,sBAAQ,EAAC,CAAC;IAAAC,eAAA,GAAAF,SAAA,CAJZG,KAAK;IAAAC,qBAAA,GAAAF,eAAA,CACHG,MAAM;IAAIC,KAAK,GAAAF,qBAAA,CAALE,KAAK;IAAEC,IAAI,GAAAH,qBAAA,CAAJG,IAAI;IACLnD,QAAQ,GAAA8C,eAAA,CAAxBM,YAAY,CAAIpD,QAAQ;EAI5B,IAAMqD,YAAY,GAAG,SAAfA,YAAYA,CAAIC,OAAe,EAAyB;IAAA,IAAvBC,UAAU,GAAAC,SAAA,CAAA9C,MAAA,QAAA8C,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,KAAK;IACvD,IAAI,CAACD,UAAU,EAAE;MACf5B,QAAQ,CAAC2B,OAAO,CAAC;IACnB,CAAC,MAAM;MACLI,0BAA0B,CAACJ,OAAO,CAAC;IACrC;EACF,CAAC;EAED,IAAAK,gBAAS,EAAC,YAAM;IACdN,YAAY,CAACzC,IAAI,EAAE,IAAI,CAAC;EAC1B,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,IAAMgD,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,OAAgB,EAAK;IAC1C,IAAMC,cAAc,GAAG9B,eAAe,CAAC6B,OAAO,CAAC;IAC/C,IAAIC,cAAc,EAAE;MAClB3B,iBAAiB,CAAC4B,OAAO,GAAG,IAAI;MAChC,IAAQC,IAAI,GAAKF,cAAc,CAAvBE,IAAI;MACZpC,eAAe,CAACoC,IAAI,CAAC;IACvB;EACF,CAAC;EAED,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAA,EAAS;IACzB9B,iBAAiB,CAAC4B,OAAO,GAAG,KAAK;IACjC7C,gBAAgB,CAAC,CAAC;EACpB,CAAC;EAED,IAAMgB,iBAAiB;IAAA,IAAAgC,KAAA,OAAAC,kBAAA,aAAAC,YAAA,YAAAC,IAAA,CAAG,SAAAC,QAAAC,IAAA;MAAA,IAAAC,KAAA,EAAAX,OAAA,EAAAC,cAAA,EAAAW,eAAA,EAAAC,gBAAA;MAAA,OAAAN,YAAA,YAAAO,IAAA,UAAAC,SAAAC,QAAA;QAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;UAAA;YACxBP,KAAK,GAAAD,IAAA,CAALC,KAAK,EACLX,OAAO,GAAAU,IAAA,CAAPV,OAAO;YAAA,KAKH,IAAAmB,uBAAgB,EAACnB,OAAO,CAAC;cAAAgB,QAAA,CAAAE,IAAA;cAAA;YAAA;YACrBjB,cAAc,GAAG9B,eAAe,CAAC6B,OAAO,CAAC;YAAA,KAC3CC,cAAc;cAAAe,QAAA,CAAAE,IAAA;cAAA;YAAA;YAAAF,QAAA,CAAAE,IAAA;YAAA,OACVjB,cAAc,CAACmB,YAAY,CAC/BT,KAAK,EACL5D,IAAI,EACJ,UAACsE,IAAI,EAAEC,aAAa,EAAK;cACvB,IAAIX,KAAK,KAAKW,aAAa,EAAE;gBAC3BlD,wBAAwB,CAAC;kBACvBiD,IAAI,EAAJA,IAAI;kBACJE,QAAQ,EAAE,SAAAA,SAACC,IAAI;oBAAA,OAAKC,kBAAkB,CAAC;sBAAED,IAAI,EAAJA,IAAI;sBAAExB,OAAO,EAAPA;oBAAQ,CAAC,CAAC;kBAAA;kBACzD0B,SAAS,EAAEf;gBACb,CAAC,CAAC;cACJ;YACF,CAAC,EACD;cACEgB,KAAK,EAAEvE,4BAA4B;cACnCO,yBAAyB,EAAzBA,yBAAyB;cACzBC,uBAAuB,EAAvBA;YACF,CACF,CAAC;UAAA;YAAAoD,QAAA,CAAAE,IAAA;YAAA;UAAA;YAAA,KAEM,IAAAU,uBAAgB,EAAC5B,OAAO,CAAC;cAAAgB,QAAA,CAAAE,IAAA;cAAA;YAAA;YAC5BjB,eAAc,GAAG9B,eAAe,CAAC6B,OAAO,CAAC;YAAA,KAC3CC,eAAc;cAAAe,QAAA,CAAAE,IAAA;cAAA;YAAA;YAAAF,QAAA,CAAAE,IAAA;YAAA,OACVjB,eAAc,CAACmB,YAAY,CAC/BT,KAAK,EACL5D,IAAI,EACJ,UAACsE,IAAI,EAAEC,aAAa,EAAK;cACvB,IAAIX,KAAK,KAAKW,aAAa,EAAE;gBAC3B;cACF;cAEAlD,wBAAwB,CAAC;gBACvBiD,IAAI,EAAJA,IAAI;gBACJE,QAAQ,EAAE,SAAAA,SAACC,IAAI;kBAAA,OAAKC,kBAAkB,CAAC;oBAAED,IAAI,EAAJA,IAAI;oBAAExB,OAAO,EAAPA;kBAAQ,CAAC,CAAC;gBAAA;gBACzD0B,SAAS,EAAEf;cACb,CAAC,CAAC;YACJ,CAAC,EACD;cACEgB,KAAK,EAAEvE;YACT,CACF,CAAC;UAAA;YAAA4D,QAAA,CAAAE,IAAA;YAAA;UAAA;YAGGjB,gBAAc,GAAG9B,eAAe,CAAC6B,OAAO,CAAC;YAAA,KAC3CC,gBAAc;cAAAe,QAAA,CAAAE,IAAA;cAAA;YAAA;YAAAF,QAAA,CAAAE,IAAA;YAAA,OACVjB,gBAAc,CAACmB,YAAY,CAACT,KAAK,EAAmB5D,IAAI,EAAE,UAACsE,IAAI,EAAEC,aAAa,EAAK;cACvF,IAAIX,KAAK,KAAKW,aAAa,EAAE;gBAC3B;cACF;cAEAlD,wBAAwB,CAAC;gBACvBiD,IAAI,EAAJA,IAAI;gBACJE,QAAQ,EAAE,SAAAA,SAACC,IAAI;kBAAA,OAAKC,kBAAkB,CAAC;oBAAED,IAAI,EAAJA,IAAI;oBAAExB,OAAO,EAAPA;kBAAQ,CAAC,CAAC;gBAAA;gBACzD0B,SAAS,EAAEf;cACb,CAAC,CAAC;YACJ,CAAC,CAAC;UAAA;UAAA;YAAA,OAAAK,QAAA,CAAAa,IAAA;QAAA;MAAA,GAAApB,OAAA;IAAA,CAGP;IAAA,gBAnEKpC,iBAAiBA,CAAAyD,EAAA;MAAA,OAAAzB,KAAA,CAAA0B,KAAA,OAAApC,SAAA;IAAA;EAAA,GAmEtB;EAED,IAAMqC,qBAA0D,GAAG,SAA7DA,qBAA0DA,CAAAC,KAAA,EAI1D;IAAA,IAFWC,GAAG,GAAAD,KAAA,CADlBE,WAAW,CACTC,SAAS,CAAIF,GAAG;IAGlB1D,YAAY,CAAC0B,OAAO,GAAGgC,GAAG;EAC5B,CAAC;EAED,IAAMT,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAY,KAAA,EAMlB;IAAA,IALJb,IAAI,GAAAa,KAAA,CAAJb,IAAI;MACJxB,OAAO,GAAAqC,KAAA,CAAPrC,OAAO;IAKP,IAAI,CAACA,OAAO,IAAI,CAAC7B,eAAe,CAAC6B,OAAO,CAAC,EAAE;MACzC;IACF;IAEA,IAAIsC,cAAc,GAAG,EAAE;IACvB,IAAI,IAAAV,uBAAgB,EAAC5B,OAAO,CAAC,IAAI,IAAAuC,uCAAmB,EAACf,IAAI,CAAC,EAAE;MAC1D,IAAMvB,cAAc,GAAG9B,eAAe,CAAC6B,OAAO,CAAC;MAC/C,IAAIC,cAAc,EAAE;QAClBqC,cAAc,GAAMrC,cAAc,CAACuC,MAAM,CAAChB,IAAI,CAAC,CAACzE,IAAI,MAAG;MACzD;IACF;IACA,IAAI,IAAA0F,qBAAc,EAACzC,OAAO,CAAC,IAAI,IAAA0C,qCAAiB,EAAClB,IAAI,CAAC,EAAE;MACtD,IAAMvB,gBAAc,GAAG9B,eAAe,CAAC6B,OAAO,CAAC;MAC/C,IAAIC,gBAAc,EAAE;QAClBqC,cAAc,GAAMrC,gBAAc,CAACuC,MAAM,CAAChB,IAAI,CAAC,CAACzE,IAAI,MAAG;MACzD;IACF;IACA,IAAI,IAAAoE,uBAAgB,EAACnB,OAAO,CAAC,IAAI,IAAA2C,oCAAgB,EAACnB,IAAI,CAAC,EAAE;MACvD,IAAMvB,gBAAc,GAAG9B,eAAe,CAAC6B,OAAO,CAAC;MAC/C,IAAIC,gBAAc,EAAE;QAClBqC,cAAc,GAAMrC,gBAAc,CAACuC,MAAM,CAAChB,IAAI,CAAC,CAACzE,IAAI,MAAG;MACzD;IACF;IAEA,IAAM6F,YAAY,GAAG7F,IAAI,CAAC8F,KAAK,CAAC,CAAC,EAAErE,YAAY,CAAC0B,OAAO,CAAC;IAExD,IAAMtD,oBAAoB,GAAGgG,YAAY,CAACE,WAAW,CAAC9C,OAAO,EAAExB,YAAY,CAAC0B,OAAO,CAAC;IAEpF,IAAM6C,gBAAgB,GAAGrG,oBAAoB,CAAC4F,cAAc,EAAE1F,oBAAoB,CAAC;IAEnF,IAAMoG,YAAY,QAAMJ,YAAY,CAACK,SAAS,CAAC,CAAC,EAAErG,oBAAoB,CAAC,GAAG0F,cAAgB;IAE1FlC,YAAY,CAAC,CAAC;IAEd,IAAMX,OAAO,GAAG1C,IAAI,CAACmG,OAAO,CAACN,YAAY,EAAEI,YAAY,CAAC;IAExD,IAAIvF,YAAY,IAAIgC,OAAO,CAAC0D,UAAU,CAAC,SAAS,CAAC,EAAE;MACjDrF,QAAQ,CAAC2B,OAAO,CAACoD,KAAK,CAAC,CAAC,CAAC,CAAC;MAC1B7E,cAAc,CAAC,IAAI,CAAC;IACtB,CAAC,MAAM;MACLF,QAAQ,CAAC2B,OAAO,CAAC;IACnB;IAEAjB,YAAY,CAAC0B,OAAO,GAAG6C,gBAAgB,IAAI,CAAC;IAE5C,IAAI,IAAA5B,uBAAgB,EAACnB,OAAO,CAAC,IAAI,IAAA2C,oCAAgB,EAACnB,IAAI,CAAC,EAAE;MACvD,IAAMvB,gBAAc,GAAG9B,eAAe,CAAC6B,OAAO,CAAC;MAC/C,IAAIC,gBAAc,EAAE;QAClBA,gBAAc,CAACmD,QAAQ,CAAC5B,IAAI,CAAC;MAC/B;IACF;EACF,CAAC;EAED,IAAM6B,aAAa;IAAA,IAAAC,KAAA,OAAAhD,kBAAA,aAAAC,YAAA,YAAAC,IAAA,CAAG,SAAA+C,SAAOxG,IAAY;MAAA,IAAAyG,WAAA;MAAA,OAAAjD,YAAA,YAAAO,IAAA,UAAA2C,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAAzC,IAAA,GAAAyC,SAAA,CAAAxC,IAAA;UAAA;YAAA,IAClCpE,SAAS,CAACC,IAAI,CAAC;cAAA2G,SAAA,CAAAxC,IAAA;cAAA;YAAA;YAAA,OAAAwC,SAAA,CAAAC,MAAA,WACX,KAAK;UAAA;YAGd,IAAI,CAACrF,iBAAiB,CAAC4B,OAAO,EAAE;cAC9BH,aAAa,CAAC,GAAG,CAAC;YACpB;YACMyD,WAAW,GAAGzG,IAAI,CAAC6G,IAAI,CAAC,CAAC,CAACf,KAAK,CAAC,CAAC,CAAC;YAAAa,SAAA,CAAAxC,IAAA;YAAA,OAClC7C,iBAAiB,CAAC;cAAEsC,KAAK,EAAE6C,WAAW;cAAExD,OAAO,EAAE;YAAI,CAAC,CAAC;UAAA;YAAA,OAAA0D,SAAA,CAAAC,MAAA,WAEtD,IAAI;UAAA;UAAA;YAAA,OAAAD,SAAA,CAAA7B,IAAA;QAAA;MAAA,GAAA0B,QAAA;IAAA,CACZ;IAAA,gBAZKF,aAAaA,CAAAQ,GAAA;MAAA,OAAAP,KAAA,CAAAvB,KAAA,OAAApC,SAAA;IAAA;EAAA,GAYlB;EAED,IAAMmE,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,KAAA,EAAgE;IAAA,IAA1DC,UAAU,GAAAD,KAAA,CAAVC,UAAU;IAClC,IAAMC,SAAS,GAAGD,UAAU,oBAAVA,UAAU,CAAGA,UAAU,CAACnH,MAAM,GAAG,CAAC,CAAC;IACrD,IAAMqH,qBAAqB,GACxBD,SAAS,IAAI1I,MAAM,CAAC4I,IAAI,CAAChG,eAAe,CAAC,CAACiG,IAAI,CAAC,UAACpE,OAAO;MAAA,OAAKA,OAAO,KAAKiE,SAAS,CAAC,CAAC,CAAC;IAAA,EAAC,IACtF,IAAI;IAMN,IAAI,CAACA,SAAS,IAAIA,SAAS,CAACpH,MAAM,IAAI,CAAC,EAAE;MACvCuD,YAAY,CAAC,CAAC;MACd;IACF;IAEA,IAAMoD,WAAW,GAAGS,SAAS,CAACpB,KAAK,CAAC,CAAC,CAAC;IAGtC,IAAI,CAACqB,qBAAqB,EAAE;MAC1B;IACF;IAEA,IAAI,CAAC5F,iBAAiB,CAAC4B,OAAO,EAAE;MAC9BH,aAAa,CAAC,GAAG,CAAC;IACpB;IAEA1B,iBAAiB,CAAC;MAAEsC,KAAK,EAAE6C,WAAW;MAAExD,OAAO,EAAE;IAAI,CAAC,CAAC;EACzD,CAAC;EAED,IAAMqE,YAAY,GAAG,SAAfA,YAAYA,CAAAC,KAAA,EAAgE;IAAA,IAA1DN,UAAU,GAAAM,KAAA,CAAVN,UAAU;IAChC,IAAMC,SAAS,GAAGD,UAAU,oBAAVA,UAAU,CAAGA,UAAU,CAACnH,MAAM,GAAG,CAAC,CAAC,CAAC+G,IAAI,CAAC,CAAC;IAC5D,IAAMW,mBAAmB,GACtBN,SAAS,IAAI1I,MAAM,CAAC4I,IAAI,CAAChG,eAAe,CAAC,CAACiG,IAAI,CAAC,UAACpE,OAAO;MAAA,OAAKA,OAAO,KAAKiE,SAAS,CAAC,CAAC,CAAC;IAAA,EAAC,IACtF,IAAI;IAMN,IAAI,CAACA,SAAS,IAAIA,SAAS,CAACpH,MAAM,IAAI,CAAC,EAAE;MACvCuD,YAAY,CAAC,CAAC;MACd;IACF;IAEA,IAAMoD,WAAW,GAAGS,SAAS,CAACpB,KAAK,CAAC,CAAC,CAAC;IAGtC,IAAI,CAAC0B,mBAAmB,EAAE;MACxB;IACF;IAEA,IAAI,CAACjG,iBAAiB,CAAC4B,OAAO,EAAE;MAC9BH,aAAa,CAAC,GAAG,CAAC;IACpB;IAEA1B,iBAAiB,CAAC;MAAEsC,KAAK,EAAE6C,WAAW;MAAExD,OAAO,EAAE;IAAI,CAAC,CAAC;EACzD,CAAC;EAED,IAAMwE,iBAAiB;IAAA,IAAAC,KAAA,OAAAnE,kBAAA,aAAAC,YAAA,YAAAC,IAAA,CAAG,SAAAkE,SAAO3H,IAAY;MAAA,IAAA4H,iBAAA,EAAAC,eAAA;MAAA,OAAArE,YAAA,YAAAO,IAAA,UAAA+D,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAA7D,IAAA,GAAA6D,SAAA,CAAA5D,IAAA;UAAA;YAAA,MAEzC,IAAI,CAAC6D,IAAI,CAAChI,IAAI,CAAC8F,KAAK,CAACrE,YAAY,CAAC0B,OAAO,GAAG,CAAC,EAAE1B,YAAY,CAAC0B,OAAO,CAAC,CAAC,IACrE5B,iBAAiB,CAAC4B,OAAO;cAAA4E,SAAA,CAAA5D,IAAA;cAAA;YAAA;YAEzBd,YAAY,CAAC,CAAC;YAAC0E,SAAA,CAAA5D,IAAA;YAAA;UAAA;YAAA4D,SAAA,CAAA5D,IAAA;YAAA,OACEmC,aAAa,CAACtG,IAAI,CAAC;UAAA;YAAA,IAAA+H,SAAA,CAAAE,IAAA;cAAAF,SAAA,CAAA5D,IAAA;cAAA;YAAA;YAC9ByD,iBAAiB,GAAG5H,IAAI,CAC3B8F,KAAK,CAAC,CAAC,EAAErE,YAAY,CAAC0B,OAAO,CAAC,CAC9B+E,KAAK,CAAC,+BAA+B,CAAC;YACzC,IAAIN,iBAAiB,EAAE;cACrBb,cAAc,CAAC;gBAAEE,UAAU,EAAEW;cAAkB,CAAC,CAAC;YACnD,CAAC,MAAM;cACCC,eAAe,GAAG7H,IAAI,CACzB8F,KAAK,CAAC,CAAC,EAAErE,YAAY,CAAC0B,OAAO,CAAC,CAC9B+E,KAAK,CAAC,mCAAmC,CAAC;cAC7CZ,YAAY,CAAC;gBAAEL,UAAU,EAAEY;cAAgB,CAAC,CAAC;YAC/C;UAAC;UAAA;YAAA,OAAAE,SAAA,CAAAjD,IAAA;QAAA;MAAA,GAAA6C,QAAA;IAAA,CAEJ;IAAA,gBAnBKF,iBAAiBA,CAAAU,GAAA;MAAA,OAAAT,KAAA,CAAA1C,KAAA,OAAApC,SAAA;IAAA;EAAA,GAmBtB;EAED,IAAMwF,eAAe,GAAG3H,WAAW,GAC/BU,CAAC,CAAC,aAAa,CAAC,GAChBX,cAAc,GACdW,CAAC,CAAC,cAAc,CAAC,GACjBA,CAAC,CAAC,gBAAgB,CAAC;EAEvB,IAAM2B,0BAA0B,GAAG,IAAAuF,oBAAQ,EAACZ,iBAAiB,EAAE,GAAG,EAAE;IAClEa,OAAO,EAAE;EACX,CAAC,CAAC;EAEF,OACEzL,MAAA,YAAA0L,aAAA,CAACvL,YAAA,CAAAwL,SAAS,MAAAC,SAAA;IACRC,SAAS,EAAEjI,WAAY;IACvBkI,SAAS,EAAEhI,gBAAiB;IAC5BiI,SAAS;IACTC,YAAY,EAAE,SAAAA,aAACnG,OAAO,EAAK;MACzB,IAAIhC,YAAY,IAAIgC,OAAO,CAAC0D,UAAU,CAAC,SAAS,CAAC,EAAE;QACjD3D,YAAY,CAACC,OAAO,CAACoD,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9B7E,cAAc,CAAC,IAAI,CAAC;MACtB,CAAC,MAAM;QACLwB,YAAY,CAACC,OAAO,CAAC;MACvB;IACF,CAAE;IACFoG,mBAAmB,EAAE,SAAAA,oBAAAC,KAAA,EAIf;MAAA,IAFaC,MAAM,GAAAD,KAAA,CADvB3D,WAAW,CACT6D,WAAW,CAAID,MAAM;MAGvB,IAAI,CAAClH,UAAU,EAAE;QACfC,aAAa,CAACiH,MAAM,CAAC;MACvB;IACF,CAAE;IACFE,iBAAiB,EAAEjE,qBAAsB;IACzCkE,WAAW,EAAEf,eAAgB;IAC7BgB,oBAAoB,EAAE7G,IAAK;IAC3B8G,GAAG,EAAEnI,cAAe;IACpBoI,KAAK,EAAE,CACLrK,MAAM,CAACG,QAAQ,EACf;MACEmK,KAAK,EAAEjH,KAAK;MACZkH,SAAS,EAAE,CAAC1H,UAAU,IAAI,EAAE,IAAIhB,aAAa;MAC7C2I,SAAS,EAAEC,wBAAW,CAACC,KAAK,GAAG,OAAO,GAAG;IAC3C,CAAC,EACDvK,QAAQ,CACR;IACFwK,MAAM,EAAC,0BAA0B;IACjCC,KAAK,EAAE7J;EAAK,GACRI,wBAAwB;IAAA0J,MAAA,EAAArM,KAAA;IAAAsM,QAAA;MAAAC,QAAA,EAAAtM,YAAA;MAAAuM,UAAA;MAAAC,YAAA;IAAA;EAAA,EAC7B,CAAC;AAEN,CAAC;AAED,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CACZC,SAAgE,EAChEC,SAAgE,EAC7D;EACH,IACkBC,kBAAkB,GAIhCF,SAAS,CAJX5J,cAAc;IACD+J,eAAe,GAG1BH,SAAS,CAHX3J,WAAW;IACR+J,KAAK,GAENJ,SAAS,CAFXjJ,CAAC;IACKsJ,QAAQ,GACZL,SAAS,CADXpK,IAAI;EAEN,IACkB0K,kBAAkB,GAIhCL,SAAS,CAJX7J,cAAc;IACDmK,eAAe,GAG1BN,SAAS,CAHX5J,WAAW;IACRmK,KAAK,GAENP,SAAS,CAFXlJ,CAAC;IACK0J,QAAQ,GACZR,SAAS,CADXrK,IAAI;EAGN,IAAM8K,gBAAgB,GAAGP,eAAe,KAAKI,eAAe;EAC5D,IAAI,CAACG,gBAAgB,EAAE,OAAO,KAAK;EAEnC,IAAMC,MAAM,GAAGP,KAAK,KAAKI,KAAK;EAC9B,IAAI,CAACG,MAAM,EAAE,OAAO,KAAK;EAEzB,IAAMC,SAAS,GAAGP,QAAQ,KAAKI,QAAQ;EACvC,IAAI,CAACG,SAAS,EAAE,OAAO,KAAK;EAE5B,IAAMC,mBAAmB,GAAGX,kBAAkB,KAAKI,kBAAkB;EACrE,IAAI,CAACO,mBAAmB,EAAE,OAAO,KAAK;EAEtC,OAAO,IAAI;AACb,CAAC;AAED,IAAMC,yBAAyB,GAAGC,iBAAK,CAACC,IAAI,CAC1ClL,4BAA4B,EAC5BiK,QACF,CAAwC;AAEjC,IAAMkB,iBAAiB,GAAG,SAApBA,iBAAiBA,CAG5BlL,KAAiD,EAC9C;EACH,IAAAmL,kBAAA,GAAyB,IAAAC,iCAAiB,EAAqB,CAAC;IAAxD7K,YAAY,GAAA4K,kBAAA,CAAZ5K,YAAY;EACpB,IAAA8K,qBAAA,GAaI,IAAAC,2CAAsB,EAAqB,CAAC;IAZ9CrL,wBAAwB,GAAAoL,qBAAA,CAAxBpL,wBAAwB;IACxBC,4BAA4B,GAAAmL,qBAAA,CAA5BnL,4BAA4B;IAC5BI,WAAW,GAAA+K,qBAAA,CAAX/K,WAAW;IACXE,gBAAgB,GAAA6K,qBAAA,CAAhB7K,gBAAgB;IAChBC,yBAAyB,GAAA4K,qBAAA,CAAzB5K,yBAAyB;IACzBC,uBAAuB,GAAA2K,qBAAA,CAAvB3K,uBAAuB;IACvBC,aAAa,GAAA0K,qBAAA,CAAb1K,aAAa;IACbC,QAAQ,GAAAyK,qBAAA,CAARzK,QAAQ;IACRE,cAAc,GAAAuK,qBAAA,CAAdvK,cAAc;IACdC,cAAc,GAAAsK,qBAAA,CAAdtK,cAAc;IACdlB,IAAI,GAAAwL,qBAAA,CAAJxL,IAAI;IACJoB,eAAe,GAAAoK,qBAAA,CAAfpK,eAAe;EAEjB,IAAAsK,qBAAA,GACE,IAAAC,yCAAqB,EAAqB,CAAC;IADrCrL,gBAAgB,GAAAoL,qBAAA,CAAhBpL,gBAAgB;IAAEU,eAAe,GAAA0K,qBAAA,CAAf1K,eAAe;IAAEM,iBAAiB,GAAAoK,qBAAA,CAAjBpK,iBAAiB;EAE5D,IAAAsK,qBAAA,GAAc,IAAAC,yCAAqB,EAAC,CAAC;IAA7B1K,CAAC,GAAAyK,qBAAA,CAADzK,CAAC;EAET,OACEtE,MAAA,YAAA0L,aAAA,CAAC2C,yBAAyB,MAAAzC,SAAA;IAEtBrI,wBAAwB,EAAxBA,wBAAwB;IACxBC,4BAA4B,EAA5BA,4BAA4B;IAC5BC,gBAAgB,EAAhBA,gBAAgB;IAChBG,WAAW,EAAXA,WAAW;IACXC,YAAY,EAAZA,YAAY;IACZC,gBAAgB,EAAhBA,gBAAgB;IAChBC,yBAAyB,EAAzBA,yBAAyB;IACzBC,uBAAuB,EAAvBA,uBAAuB;IACvBC,aAAa,EAAbA,aAAa;IACbC,QAAQ,EAARA,QAAQ;IACRC,eAAe,EAAfA,eAAe;IACfC,cAAc,EAAdA,cAAc;IACdC,cAAc,EAAdA,cAAc;IACdC,CAAC,EAADA,CAAC;IACDnB,IAAI,EAAJA,IAAI;IACJoB,eAAe,EAAfA,eAAe;IACfE,iBAAiB,EAAjBA;EAAiB,GAEfnB,KAAK;IAAA2J,MAAA,EAAArM,KAAA;IAAAsM,QAAA;MAAAC,QAAA,EAAAtM,YAAA;MAAAuM,UAAA;MAAAC,YAAA;IAAA;EAAA,EACV,CAAC;AAEN,CAAC;AAAC4B,OAAA,CAAAT,iBAAA,GAAAA,iBAAA;AAEFA,iBAAiB,CAACU,WAAW,GAAG,2CAA2C"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_throttle","_interopRequireDefault","_ChannelContext","_MessageInputContext","_SuggestionsContext","_ThemeContext","_TranslationContext","_utils","_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","inputBox","flex","fontSize","includeFontPadding","padding","paddingTop","textAlignVertical","computeCaretPosition","token","startOfTokenPosition","length","isCommand","text","split","AutoCompleteInputWithContext","props","additionalTextInputProps","autoCompleteSuggestionsLimit","closeSuggestions","_props$cooldownActive","cooldownActive","giphyActive","giphyEnabled","maxMessageLength","mentionAllAppUsersEnabled","mentionAllAppUsersQuery","numberOfLines","onChange","openSuggestions","setGiphyActive","setInputBoxRef","t","triggerSettings","updateSuggestionsContext","updateSuggestions","isTrackingStarted","useRef","selectionEnd","_useState","useState","_useState2","_slicedToArray2","textHeight","setTextHeight","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","black","grey","messageInput","handleChange","newText","fromUpdate","arguments","undefined","handleSuggestionsThrottled","useEffect","startTracking","trigger","triggerSetting","current","type","stopTracking","_ref2","_asyncToGenerator2","_regenerator","mark","_callee","_ref","query","_triggerSetting","_triggerSetting2","wrap","_callee$","_context","prev","next","isMentionTrigger","dataProvider","data","queryCallback","onSelect","item","onSelectSuggestion","queryText","limit","isCommandTrigger","stop","_x","apply","handleSelectionChange","_ref3","end","nativeEvent","selection","_ref4","newTokenString","isSuggestionCommand","output","isEmojiTrigger","isSuggestionEmoji","isSuggestionUser","textToModify","slice","lastIndexOf","newCaretPosition","modifiedText","substring","replace","startsWith","callback","handleCommand","_ref5","_callee2","actualToken","_callee2$","_context2","abrupt","trim","_x2","handleMentions","_ref6","tokenMatch","lastToken","handleMentionsTrigger","keys","find","handleEmojis","_ref7","handleEmojisTrigger","handleSuggestions","_ref8","_callee3","mentionTokenMatch","emojiTokenMatch","_callee3$","_context3","test","sent","match","_x3","placeholderText","throttle","leading","createElement","TextInput","_extends2","autoFocus","maxLength","multiline","onChangeText","onContentSizeChange","_ref9","height","contentSize","onSelectionChange","placeholder","placeholderTextColor","ref","style","color","maxHeight","textAlign","I18nManager","isRTL","testID","value","__self","__source","fileName","lineNumber","columnNumber","areEqual","prevProps","nextProps","prevCooldownActive","prevGiphyActive","prevT","prevText","nextCooldownActive","nextGiphyActive","nextT","nextText","giphyActiveEqual","tEqual","textEqual","cooldownActiveEqual","MemoizedAutoCompleteInput","React","memo","AutoCompleteInput","_useChannelContext","useChannelContext","_useMessageInputConte","useMessageInputContext","_useSuggestionsContex","useSuggestionsContext","_useTranslationContex","useTranslationContext","exports","displayName"],"sources":["AutoCompleteInput.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { I18nManager, StyleSheet, TextInput, TextInputProps } from 'react-native';\n\nimport throttle from 'lodash/throttle';\n\nimport {\n ChannelContextValue,\n useChannelContext,\n} from '../../contexts/channelContext/ChannelContext';\nimport {\n MessageInputContextValue,\n useMessageInputContext,\n} from '../../contexts/messageInputContext/MessageInputContext';\nimport {\n isSuggestionCommand,\n isSuggestionEmoji,\n isSuggestionUser,\n Suggestion,\n SuggestionCommand,\n SuggestionsContextValue,\n SuggestionUser,\n useSuggestionsContext,\n} from '../../contexts/suggestionsContext/SuggestionsContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n TranslationContextValue,\n useTranslationContext,\n} from '../../contexts/translationContext/TranslationContext';\nimport type { Emoji } from '../../emoji-data';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { isCommandTrigger, isEmojiTrigger, isMentionTrigger } from '../../utils/utils';\n\nimport type { Trigger } from '../../utils/utils';\n\nconst styles = StyleSheet.create({\n inputBox: {\n flex: 1,\n fontSize: 14,\n includeFontPadding: false, // for android vertical text centering\n padding: 0, // removal of default text input padding on android\n paddingTop: 0, // removal of iOS top padding for weird centering\n textAlignVertical: 'center', // for android vertical text centering\n },\n});\n\nconst computeCaretPosition = (token: string, startOfTokenPosition: number) =>\n startOfTokenPosition + token.length;\n\nconst isCommand = (text: string) => text[0] === '/' && text.split(' ').length <= 1;\n\ntype AutoCompleteInputPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<ChannelContextValue<StreamChatGenerics>, 'giphyEnabled'> &\n Pick<\n MessageInputContextValue<StreamChatGenerics>,\n | 'additionalTextInputProps'\n | 'autoCompleteSuggestionsLimit'\n | 'giphyActive'\n | 'maxMessageLength'\n | 'mentionAllAppUsersEnabled'\n | 'mentionAllAppUsersQuery'\n | 'numberOfLines'\n | 'onChange'\n | 'setGiphyActive'\n | 'setInputBoxRef'\n | 'text'\n | 'triggerSettings'\n > &\n Pick<\n SuggestionsContextValue<StreamChatGenerics>,\n 'closeSuggestions' | 'openSuggestions' | 'updateSuggestions'\n > &\n Pick<TranslationContextValue, 't'> & {\n /**\n * This is currently passed in from MessageInput to avoid rerenders\n * that would happen if we put this in the MessageInputContext\n */\n cooldownActive?: boolean;\n };\n\nexport type AutoCompleteInputProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<AutoCompleteInputPropsWithContext<StreamChatGenerics>>;\n\nconst AutoCompleteInputWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteInputPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n additionalTextInputProps,\n autoCompleteSuggestionsLimit,\n closeSuggestions,\n cooldownActive = false,\n giphyActive,\n giphyEnabled,\n maxMessageLength,\n mentionAllAppUsersEnabled,\n mentionAllAppUsersQuery,\n numberOfLines,\n onChange,\n openSuggestions,\n setGiphyActive,\n setInputBoxRef,\n t,\n text,\n triggerSettings,\n updateSuggestions: updateSuggestionsContext,\n } = props;\n\n const isTrackingStarted = useRef(false);\n const selectionEnd = useRef(0);\n const [textHeight, setTextHeight] = useState(0);\n\n const {\n theme: {\n colors: { black, grey },\n messageInput: { inputBox },\n },\n } = useTheme();\n\n const handleChange = (newText: string, fromUpdate = false) => {\n if (!fromUpdate) {\n onChange(newText);\n } else {\n handleSuggestionsThrottled(newText);\n }\n };\n\n useEffect(() => {\n handleChange(text, true);\n }, [text]);\n\n const startTracking = (trigger: Trigger) => {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n isTrackingStarted.current = true;\n const { type } = triggerSetting;\n openSuggestions(type);\n }\n };\n\n const stopTracking = () => {\n isTrackingStarted.current = false;\n closeSuggestions();\n };\n\n const updateSuggestions = async ({\n query,\n trigger,\n }: {\n query: Suggestion['name'];\n trigger: Trigger;\n }) => {\n if (isMentionTrigger(trigger)) {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n await triggerSetting.dataProvider(\n query as SuggestionUser<StreamChatGenerics>['name'],\n text,\n (data, queryCallback) => {\n if (query === queryCallback) {\n updateSuggestionsContext({\n data,\n onSelect: (item) => onSelectSuggestion({ item, trigger }),\n queryText: query,\n });\n }\n },\n {\n limit: autoCompleteSuggestionsLimit,\n mentionAllAppUsersEnabled,\n mentionAllAppUsersQuery,\n },\n );\n }\n } else if (isCommandTrigger(trigger)) {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n await triggerSetting.dataProvider(\n query as SuggestionCommand<StreamChatGenerics>['name'],\n text,\n (data, queryCallback) => {\n if (query !== queryCallback) {\n return;\n }\n\n updateSuggestionsContext({\n data,\n onSelect: (item) => onSelectSuggestion({ item, trigger }),\n queryText: query,\n });\n },\n {\n limit: autoCompleteSuggestionsLimit,\n },\n );\n }\n } else {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n await triggerSetting.dataProvider(query as Emoji['name'], text, (data, queryCallback) => {\n if (query !== queryCallback) {\n return;\n }\n\n updateSuggestionsContext({\n data,\n onSelect: (item) => onSelectSuggestion({ item, trigger }),\n queryText: query,\n });\n });\n }\n }\n };\n\n const handleSelectionChange: TextInputProps['onSelectionChange'] = ({\n nativeEvent: {\n selection: { end },\n },\n }) => {\n selectionEnd.current = end;\n };\n\n const onSelectSuggestion = ({\n item,\n trigger,\n }: {\n item: Suggestion<StreamChatGenerics>;\n trigger: Trigger;\n }) => {\n if (!trigger || !triggerSettings[trigger]) {\n return;\n }\n\n let newTokenString = '';\n if (isCommandTrigger(trigger) && isSuggestionCommand(item)) {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n newTokenString = `${triggerSetting.output(item).text} `;\n }\n }\n if (isEmojiTrigger(trigger) && isSuggestionEmoji(item)) {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n newTokenString = `${triggerSetting.output(item).text} `;\n }\n }\n if (isMentionTrigger(trigger) && isSuggestionUser(item)) {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n newTokenString = `${triggerSetting.output(item).text} `;\n }\n }\n\n const textToModify = text.slice(0, selectionEnd.current);\n\n const startOfTokenPosition = textToModify.lastIndexOf(trigger, selectionEnd.current);\n\n const newCaretPosition = computeCaretPosition(newTokenString, startOfTokenPosition);\n\n const modifiedText = `${textToModify.substring(0, startOfTokenPosition)}${newTokenString}`;\n\n stopTracking();\n\n const newText = text.replace(textToModify, modifiedText);\n\n if (giphyEnabled && newText.startsWith('/giphy ')) {\n onChange(newText.slice(7)); // 7 because of '/giphy ' length\n setGiphyActive(true);\n } else {\n onChange(newText);\n }\n\n selectionEnd.current = newCaretPosition || 0;\n\n if (isMentionTrigger(trigger) && isSuggestionUser(item)) {\n const triggerSetting = triggerSettings[trigger];\n if (triggerSetting) {\n triggerSetting.callback(item);\n }\n }\n };\n\n const handleCommand = async (text: string) => {\n if (!isCommand(text)) {\n return false;\n }\n\n if (!isTrackingStarted.current) {\n startTracking('/');\n }\n const actualToken = text.trim().slice(1);\n await updateSuggestions({ query: actualToken, trigger: '/' });\n\n return true;\n };\n\n const handleMentions = ({ tokenMatch }: { tokenMatch: RegExpMatchArray | null }) => {\n const lastToken = tokenMatch?.[tokenMatch.length - 1];\n const handleMentionsTrigger =\n (lastToken && Object.keys(triggerSettings).find((trigger) => trigger === lastToken[0])) ||\n null;\n\n /*\n if we lost the trigger token or there is no following character we want to close\n the autocomplete\n */\n if (!lastToken || lastToken.length <= 0) {\n stopTracking();\n return;\n }\n\n const actualToken = lastToken.slice(1);\n\n // if trigger is not configured step out from the function, otherwise proceed\n if (!handleMentionsTrigger) {\n return;\n }\n\n if (!isTrackingStarted.current) {\n startTracking('@');\n }\n\n updateSuggestions({ query: actualToken, trigger: '@' });\n };\n\n const handleEmojis = ({ tokenMatch }: { tokenMatch: RegExpMatchArray | null }) => {\n const lastToken = tokenMatch?.[tokenMatch.length - 1].trim();\n const handleEmojisTrigger =\n (lastToken && Object.keys(triggerSettings).find((trigger) => trigger === lastToken[0])) ||\n null;\n\n /*\n if we lost the trigger token or there is no following character we want to close\n the autocomplete\n */\n if (!lastToken || lastToken.length <= 0) {\n stopTracking();\n return;\n }\n\n const actualToken = lastToken.slice(1);\n\n // if trigger is not configured step out from the function, otherwise proceed\n if (!handleEmojisTrigger) {\n return;\n }\n\n if (!isTrackingStarted.current) {\n startTracking(':');\n }\n\n updateSuggestions({ query: actualToken, trigger: ':' });\n };\n\n const handleSuggestions = async (text: string) => {\n if (\n /\\s/.test(text.slice(selectionEnd.current - 1, selectionEnd.current)) &&\n isTrackingStarted.current\n ) {\n stopTracking();\n } else if (!(await handleCommand(text))) {\n const mentionTokenMatch = text\n .slice(0, selectionEnd.current)\n .match(/(?!^|\\W)?@[^\\s@]*\\s?[^\\s@]*$/g);\n if (mentionTokenMatch) {\n handleMentions({ tokenMatch: mentionTokenMatch });\n } else {\n const emojiTokenMatch = text\n .slice(0, selectionEnd.current)\n .match(/(?!^|\\W)?:\\w{2,}[^\\s]*\\s?[^\\s]*$/g);\n handleEmojis({ tokenMatch: emojiTokenMatch });\n }\n }\n };\n\n const placeholderText = giphyActive\n ? t('Search GIFs')\n : cooldownActive\n ? t('Slow mode ON')\n : t('Send a message');\n\n const handleSuggestionsThrottled = throttle(handleSuggestions, 100, {\n leading: false,\n });\n\n return (\n <TextInput\n autoFocus={giphyActive}\n maxLength={maxMessageLength}\n multiline\n onChangeText={(newText) => {\n if (giphyEnabled && newText.startsWith('/giphy ')) {\n handleChange(newText.slice(7)); // 7 because of '/giphy' length\n setGiphyActive(true);\n } else {\n handleChange(newText);\n }\n }}\n onContentSizeChange={({\n nativeEvent: {\n contentSize: { height },\n },\n }) => {\n if (!textHeight) {\n setTextHeight(height);\n }\n }}\n onSelectionChange={handleSelectionChange}\n placeholder={placeholderText}\n placeholderTextColor={grey}\n ref={setInputBoxRef}\n style={[\n styles.inputBox,\n {\n color: black,\n maxHeight: (textHeight || 17) * numberOfLines,\n textAlign: I18nManager.isRTL ? 'right' : 'left',\n },\n inputBox,\n ]}\n testID='auto-complete-text-input'\n value={text}\n {...additionalTextInputProps}\n />\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: AutoCompleteInputPropsWithContext<StreamChatGenerics>,\n nextProps: AutoCompleteInputPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n cooldownActive: prevCooldownActive,\n giphyActive: prevGiphyActive,\n t: prevT,\n text: prevText,\n } = prevProps;\n const {\n cooldownActive: nextCooldownActive,\n giphyActive: nextGiphyActive,\n t: nextT,\n text: nextText,\n } = nextProps;\n\n const giphyActiveEqual = prevGiphyActive === nextGiphyActive;\n if (!giphyActiveEqual) return false;\n\n const tEqual = prevT === nextT;\n if (!tEqual) return false;\n\n const textEqual = prevText === nextText;\n if (!textEqual) return false;\n\n const cooldownActiveEqual = prevCooldownActive === nextCooldownActive;\n if (!cooldownActiveEqual) return false;\n\n return true;\n};\n\nconst MemoizedAutoCompleteInput = React.memo(\n AutoCompleteInputWithContext,\n areEqual,\n) as typeof AutoCompleteInputWithContext;\n\nexport const AutoCompleteInput = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteInputProps<StreamChatGenerics>,\n) => {\n const { giphyEnabled } = useChannelContext<StreamChatGenerics>();\n const {\n additionalTextInputProps,\n autoCompleteSuggestionsLimit,\n giphyActive,\n maxMessageLength,\n mentionAllAppUsersEnabled,\n mentionAllAppUsersQuery,\n numberOfLines,\n onChange,\n setGiphyActive,\n setInputBoxRef,\n text,\n triggerSettings,\n } = useMessageInputContext<StreamChatGenerics>();\n const { closeSuggestions, openSuggestions, updateSuggestions } =\n useSuggestionsContext<StreamChatGenerics>();\n const { t } = useTranslationContext();\n\n return (\n <MemoizedAutoCompleteInput\n {...{\n additionalTextInputProps,\n autoCompleteSuggestionsLimit,\n closeSuggestions,\n giphyActive,\n giphyEnabled,\n maxMessageLength,\n mentionAllAppUsersEnabled,\n mentionAllAppUsersQuery,\n numberOfLines,\n onChange,\n openSuggestions,\n setGiphyActive,\n setInputBoxRef,\n t,\n text,\n triggerSettings,\n updateSuggestions,\n }}\n {...props}\n />\n );\n};\n\nAutoCompleteInput.displayName = 'AutoCompleteInput{messageInput{inputBox}}';\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_AutoCompleteSuggestionCommandIcon","_ThemeContext","_AtMentions","_Avatar","_this","_jsxFileName","styles","StyleSheet","create","args","fontSize","column","flex","justifyContent","paddingLeft","container","alignItems","flexDirection","paddingHorizontal","paddingVertical","name","fontWeight","paddingBottom","tag","text","title","AutoCompleteSuggestionItemWithContext","_ref","itemProps","triggerType","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","black","grey","_useTheme$theme$messa","messageInput","suggestions","_useTheme$theme$messa2","command","argsStyle","commandContainer","_useTheme$theme$messa3","emoji","emojiContainer","_useTheme$theme$messa4","mention","avatarSize","mentionContainer","nameStyle","_ref2","id","image","online","createElement","View","style","__self","__source","fileName","lineNumber","columnNumber","Avatar","size","Text","color","testID","AtMentions","pathFill","_ref3","unicode","_ref4","AutoCompleteSuggestionCommandIcon","replace","char","toUpperCase","areEqual","prevProps","nextProps","prevItemProps","prevType","nextItemProps","nextType","itemPropsEqual","typeEqual","MemoizedAutoCompleteSuggestionItem","React","memo","AutoCompleteSuggestionItem","props","_extends2","exports","displayName"],"sources":["AutoCompleteSuggestionItem.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, View } from 'react-native';\n\nimport { AutoCompleteSuggestionCommandIcon } from './AutoCompleteSuggestionCommandIcon';\n\nimport type {\n Suggestion,\n SuggestionCommand,\n SuggestionsContextValue,\n SuggestionUser,\n} from '../../contexts/suggestionsContext/SuggestionsContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport type { Emoji } from '../../emoji-data/compiled';\nimport { AtMentions } from '../../icons/AtMentions';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { Avatar } from '../Avatar/Avatar';\n\nexport type AutoCompleteSuggestionItemPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<SuggestionsContextValue, 'triggerType'> & {\n itemProps: Suggestion<StreamChatGenerics>;\n};\n\nconst styles = StyleSheet.create({\n args: {\n fontSize: 14,\n },\n column: {\n flex: 1,\n justifyContent: 'space-evenly',\n paddingLeft: 8,\n },\n container: {\n alignItems: 'center',\n flexDirection: 'row',\n paddingHorizontal: 16,\n paddingVertical: 8,\n },\n name: {\n fontSize: 14,\n fontWeight: 'bold',\n paddingBottom: 2,\n },\n tag: {\n fontSize: 12,\n fontWeight: '600',\n },\n text: {\n fontSize: 14,\n },\n title: {\n fontSize: 14,\n fontWeight: 'bold',\n paddingHorizontal: 8,\n },\n});\n\nconst AutoCompleteSuggestionItemWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n itemProps,\n triggerType,\n}: AutoCompleteSuggestionItemPropsWithContext<StreamChatGenerics>) => {\n const {\n theme: {\n colors: { accent_blue, black, grey },\n messageInput: {\n suggestions: {\n command: { args: argsStyle, container: commandContainer, title },\n emoji: { container: emojiContainer, text },\n mention: { avatarSize, column, container: mentionContainer, name: nameStyle },\n },\n },\n },\n } = useTheme();\n\n if (triggerType === 'mention') {\n const { id, image, name, online } = itemProps as SuggestionUser<StreamChatGenerics>;\n return (\n <View style={[styles.container, mentionContainer]}>\n <Avatar image={image} name={name} online={online} size={avatarSize} />\n <View style={[styles.column, column]}>\n <Text style={[styles.name, { color: black }, nameStyle]} testID='mentions-item-name'>\n {name || id}\n </Text>\n </View>\n <AtMentions pathFill={accent_blue} />\n </View>\n );\n } else if (triggerType === 'emoji') {\n const { name, unicode } = itemProps as Emoji;\n return (\n <View style={[styles.container, emojiContainer]}>\n <Text style={[styles.text, { color: black }, text]} testID='emojis-item-unicode'>\n {unicode}\n </Text>\n <Text style={[styles.text, { color: black }, text]} testID='emojis-item-name'>\n {` ${name}`}\n </Text>\n </View>\n );\n } else if (triggerType === 'command') {\n const { args, name } = itemProps as SuggestionCommand<StreamChatGenerics>;\n return (\n <View style={[styles.container, commandContainer]}>\n <AutoCompleteSuggestionCommandIcon name={name} />\n <Text style={[styles.title, { color: black }, title]} testID='commands-item-title'>\n {(name || '').replace(/^\\w/, (char) => char.toUpperCase())}\n </Text>\n <Text style={[styles.args, { color: grey }, argsStyle]} testID='commands-item-args'>\n {`/${name} ${args}`}\n </Text>\n </View>\n );\n } else {\n return null;\n }\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: AutoCompleteSuggestionItemPropsWithContext<StreamChatGenerics>,\n nextProps: AutoCompleteSuggestionItemPropsWithContext<StreamChatGenerics>,\n) => {\n const { itemProps: prevItemProps, triggerType: prevType } = prevProps;\n const { itemProps: nextItemProps, triggerType: nextType } = nextProps;\n const itemPropsEqual = prevItemProps === nextItemProps;\n if (!itemPropsEqual) return false;\n const typeEqual = prevType === nextType;\n if (!typeEqual) return false;\n return true;\n};\n\nconst MemoizedAutoCompleteSuggestionItem = React.memo(\n AutoCompleteSuggestionItemWithContext,\n areEqual,\n) as typeof AutoCompleteSuggestionItemWithContext;\n\nexport type AutoCompleteSuggestionItemProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = AutoCompleteSuggestionItemPropsWithContext<StreamChatGenerics>;\n\nexport const AutoCompleteSuggestionItem = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteSuggestionItemProps<StreamChatGenerics>,\n) => <MemoizedAutoCompleteSuggestionItem {...props} />;\n\nAutoCompleteSuggestionItem.displayName =\n 'AutoCompleteSuggestionItem{messageInput{suggestions{Item}}}';\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_AutoCompleteSuggestionCommandIcon","_ThemeContext","_AtMentions","_Avatar","_this","_jsxFileName","styles","StyleSheet","create","args","fontSize","column","flex","justifyContent","paddingLeft","container","alignItems","flexDirection","paddingHorizontal","paddingVertical","name","fontWeight","paddingBottom","tag","text","title","AutoCompleteSuggestionItemWithContext","_ref","itemProps","triggerType","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","black","grey","_useTheme$theme$messa","messageInput","suggestions","_useTheme$theme$messa2","command","argsStyle","commandContainer","_useTheme$theme$messa3","emoji","emojiContainer","_useTheme$theme$messa4","mention","avatarSize","mentionContainer","nameStyle","_ref2","id","image","online","createElement","View","style","__self","__source","fileName","lineNumber","columnNumber","Avatar","size","Text","color","testID","AtMentions","pathFill","_ref3","unicode","_ref4","AutoCompleteSuggestionCommandIcon","replace","char","toUpperCase","areEqual","prevProps","nextProps","prevItemProps","prevType","nextItemProps","nextType","itemPropsEqual","typeEqual","MemoizedAutoCompleteSuggestionItem","React","memo","AutoCompleteSuggestionItem","props","_extends2","exports","displayName"],"sources":["AutoCompleteSuggestionItem.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, View } from 'react-native';\n\nimport { AutoCompleteSuggestionCommandIcon } from './AutoCompleteSuggestionCommandIcon';\n\nimport type {\n Suggestion,\n SuggestionCommand,\n SuggestionsContextValue,\n SuggestionUser,\n} from '../../contexts/suggestionsContext/SuggestionsContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport type { Emoji } from '../../emoji-data';\nimport { AtMentions } from '../../icons/AtMentions';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { Avatar } from '../Avatar/Avatar';\n\nexport type AutoCompleteSuggestionItemPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<SuggestionsContextValue, 'triggerType'> & {\n itemProps: Suggestion<StreamChatGenerics>;\n};\n\nconst styles = StyleSheet.create({\n args: {\n fontSize: 14,\n },\n column: {\n flex: 1,\n justifyContent: 'space-evenly',\n paddingLeft: 8,\n },\n container: {\n alignItems: 'center',\n flexDirection: 'row',\n paddingHorizontal: 16,\n paddingVertical: 8,\n },\n name: {\n fontSize: 14,\n fontWeight: 'bold',\n paddingBottom: 2,\n },\n tag: {\n fontSize: 12,\n fontWeight: '600',\n },\n text: {\n fontSize: 14,\n },\n title: {\n fontSize: 14,\n fontWeight: 'bold',\n paddingHorizontal: 8,\n },\n});\n\nconst AutoCompleteSuggestionItemWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n itemProps,\n triggerType,\n}: AutoCompleteSuggestionItemPropsWithContext<StreamChatGenerics>) => {\n const {\n theme: {\n colors: { accent_blue, black, grey },\n messageInput: {\n suggestions: {\n command: { args: argsStyle, container: commandContainer, title },\n emoji: { container: emojiContainer, text },\n mention: { avatarSize, column, container: mentionContainer, name: nameStyle },\n },\n },\n },\n } = useTheme();\n\n if (triggerType === 'mention') {\n const { id, image, name, online } = itemProps as SuggestionUser<StreamChatGenerics>;\n return (\n <View style={[styles.container, mentionContainer]}>\n <Avatar image={image} name={name} online={online} size={avatarSize} />\n <View style={[styles.column, column]}>\n <Text style={[styles.name, { color: black }, nameStyle]} testID='mentions-item-name'>\n {name || id}\n </Text>\n </View>\n <AtMentions pathFill={accent_blue} />\n </View>\n );\n } else if (triggerType === 'emoji') {\n const { name, unicode } = itemProps as Emoji;\n return (\n <View style={[styles.container, emojiContainer]}>\n <Text style={[styles.text, { color: black }, text]} testID='emojis-item-unicode'>\n {unicode}\n </Text>\n <Text style={[styles.text, { color: black }, text]} testID='emojis-item-name'>\n {` ${name}`}\n </Text>\n </View>\n );\n } else if (triggerType === 'command') {\n const { args, name } = itemProps as SuggestionCommand<StreamChatGenerics>;\n return (\n <View style={[styles.container, commandContainer]}>\n <AutoCompleteSuggestionCommandIcon name={name} />\n <Text style={[styles.title, { color: black }, title]} testID='commands-item-title'>\n {(name || '').replace(/^\\w/, (char) => char.toUpperCase())}\n </Text>\n <Text style={[styles.args, { color: grey }, argsStyle]} testID='commands-item-args'>\n {`/${name} ${args}`}\n </Text>\n </View>\n );\n } else {\n return null;\n }\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: AutoCompleteSuggestionItemPropsWithContext<StreamChatGenerics>,\n nextProps: AutoCompleteSuggestionItemPropsWithContext<StreamChatGenerics>,\n) => {\n const { itemProps: prevItemProps, triggerType: prevType } = prevProps;\n const { itemProps: nextItemProps, triggerType: nextType } = nextProps;\n const itemPropsEqual = prevItemProps === nextItemProps;\n if (!itemPropsEqual) return false;\n const typeEqual = prevType === nextType;\n if (!typeEqual) return false;\n return true;\n};\n\nconst MemoizedAutoCompleteSuggestionItem = React.memo(\n AutoCompleteSuggestionItemWithContext,\n areEqual,\n) as typeof AutoCompleteSuggestionItemWithContext;\n\nexport type AutoCompleteSuggestionItemProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = AutoCompleteSuggestionItemPropsWithContext<StreamChatGenerics>;\n\nexport const AutoCompleteSuggestionItem = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteSuggestionItemProps<StreamChatGenerics>,\n) => <MemoizedAutoCompleteSuggestionItem {...props} />;\n\nAutoCompleteSuggestionItem.displayName =\n 'AutoCompleteSuggestionItem{messageInput{suggestions{Item}}}';\n"],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ var _this = this,
|
|
|
17
17
|
_jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react-native/package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx";
|
|
18
18
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
19
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
20
|
-
var AUTO_COMPLETE_SUGGESTION_LIST_HEADER_HEIGHT =
|
|
20
|
+
var AUTO_COMPLETE_SUGGESTION_LIST_HEADER_HEIGHT = 50;
|
|
21
21
|
var SuggestionsItem = function SuggestionsItem(props) {
|
|
22
22
|
var children = props.children,
|
|
23
23
|
propsStyle = props.style,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_SuggestionsContext","_ThemeContext","_native","_excluded","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","AUTO_COMPLETE_SUGGESTION_LIST_HEADER_HEIGHT","SuggestionsItem","props","children","propsStyle","style","pressableProps","_objectWithoutProperties2","_ref","pressed","opacity","createElement","Pressable","_extends2","__self","__source","fileName","lineNumber","columnNumber","displayName","AutoCompleteSuggestionListWithContext","_useState","useState","_useState2","_slicedToArray2","itemHeight","setItemHeight","active","AutoCompleteSuggestionHeader","AutoCompleteSuggestionItem","data","onSelect","queryText","triggerType","_useTheme","useTheme","_useTheme$theme","theme","white","colors","_useTheme$theme$messa","messageInput","maxHeight","container","itemStyle","suggestions","item","flatlist","suggestionsListContainer","flatlistHeight","useMemo","totalItemHeight","length","renderItem","_ref2","onLayout","event","nativeEvent","layout","height","onPress","itemProps","View","styles","backgroundColor","FlatList","keyboardShouldPersistTaps","keyExtractor","index","name","isSuggestionUser","id","ListHeaderComponent","exports","areEqual","prevProps","nextProps","prevActive","prevData","prevQueryText","prevType","nextActive","nextData","nextQueryText","nextType","activeEqual","queryTextEqual","dataEqual","typeEqual","MemoizedAutoCompleteSuggestionList","React","memo","AutoCompleteSuggestionList","_useSuggestionsContex","useSuggestionsContext","StyleSheet","create","borderRadius","elevation","marginHorizontal","marginVertical","shadowOffset","width","shadowOpacity"],"sources":["AutoCompleteSuggestionList.tsx"],"sourcesContent":["import React, { useMemo, useState } from 'react';\nimport {\n LayoutChangeEvent,\n Pressable,\n PressableProps,\n PressableStateCallbackType,\n StyleSheet,\n View,\n ViewStyle,\n} from 'react-native';\n\nimport type { AutoCompleteSuggestionHeaderProps } from './AutoCompleteSuggestionHeader';\nimport type { AutoCompleteSuggestionItemProps } from './AutoCompleteSuggestionItem';\n\nimport {\n isSuggestionUser,\n Suggestion,\n SuggestionsContextValue,\n useSuggestionsContext,\n} from '../../contexts/suggestionsContext/SuggestionsContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { FlatList } from '../../native';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\n\nconst AUTO_COMPLETE_SUGGESTION_LIST_HEADER_HEIGHT = 30;\n\ntype AutoCompleteSuggestionListComponentProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<SuggestionsContextValue, 'queryText' | 'triggerType'> & {\n active: boolean;\n data: Suggestion<StreamChatGenerics>[];\n onSelect: (item: Suggestion<StreamChatGenerics>) => void;\n};\n\nexport type AutoCompleteSuggestionListPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n SuggestionsContextValue<StreamChatGenerics>,\n 'AutoCompleteSuggestionHeader' | 'AutoCompleteSuggestionItem'\n> &\n AutoCompleteSuggestionListComponentProps<StreamChatGenerics>;\n\nconst SuggestionsItem: React.FC<PressableProps> = (props) => {\n const { children, style: propsStyle, ...pressableProps } = props;\n\n const style = ({ pressed }: PressableStateCallbackType) => [\n propsStyle as ViewStyle,\n { opacity: pressed ? 0.2 : 1 },\n ];\n\n return (\n <Pressable {...pressableProps} style={style}>\n {children}\n </Pressable>\n );\n};\n\nSuggestionsItem.displayName = 'SuggestionsHeader{messageInput{suggestions}}';\n\nexport const AutoCompleteSuggestionListWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteSuggestionListPropsWithContext<StreamChatGenerics>,\n) => {\n const [itemHeight, setItemHeight] = useState<number>(0);\n const {\n active,\n AutoCompleteSuggestionHeader,\n AutoCompleteSuggestionItem,\n data,\n onSelect,\n queryText,\n triggerType,\n } = props;\n\n const {\n theme: {\n colors: { white },\n messageInput: {\n container: { maxHeight },\n suggestions: { item: itemStyle },\n suggestionsListContainer: { flatlist },\n },\n },\n } = useTheme();\n\n const flatlistHeight = useMemo(() => {\n let totalItemHeight;\n if (triggerType === 'emoji') {\n totalItemHeight = data.length < 7 ? data.length * itemHeight : itemHeight * 6;\n } else {\n totalItemHeight = data.length < 4 ? data.length * itemHeight : itemHeight * 3;\n }\n\n return triggerType === 'emoji' || triggerType === 'command'\n ? totalItemHeight + AUTO_COMPLETE_SUGGESTION_LIST_HEADER_HEIGHT\n : totalItemHeight;\n }, [itemHeight, data.length]);\n\n const renderItem = ({ item }: { item: Suggestion<StreamChatGenerics> }) => {\n switch (triggerType) {\n case 'command':\n case 'mention':\n case 'emoji':\n return (\n <SuggestionsItem\n onLayout={(event: LayoutChangeEvent) => setItemHeight(event.nativeEvent.layout.height)}\n onPress={() => {\n onSelect(item);\n }}\n style={itemStyle}\n >\n {AutoCompleteSuggestionItem && (\n <AutoCompleteSuggestionItem itemProps={item} triggerType={triggerType} />\n )}\n </SuggestionsItem>\n );\n default:\n return null;\n }\n };\n\n if (!active || data.length === 0) return null;\n\n return (\n <View style={[styles.container, { backgroundColor: white, height: flatlistHeight }]}>\n <FlatList\n data={data}\n keyboardShouldPersistTaps='always'\n keyExtractor={(item, index) =>\n `${item.name || (isSuggestionUser(item) ? item.id : '')}${index}`\n }\n ListHeaderComponent={\n AutoCompleteSuggestionHeader ? (\n <AutoCompleteSuggestionHeader queryText={queryText} triggerType={triggerType} />\n ) : null\n }\n renderItem={renderItem}\n style={[flatlist, { maxHeight }]}\n />\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: AutoCompleteSuggestionListPropsWithContext<StreamChatGenerics>,\n nextProps: AutoCompleteSuggestionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n active: prevActive,\n data: prevData,\n queryText: prevQueryText,\n triggerType: prevType,\n } = prevProps;\n const {\n active: nextActive,\n data: nextData,\n queryText: nextQueryText,\n triggerType: nextType,\n } = nextProps;\n\n const activeEqual = prevActive === nextActive;\n if (!activeEqual) return false;\n\n const queryTextEqual = prevQueryText === nextQueryText;\n if (!queryTextEqual) return false;\n\n const dataEqual = prevData === nextData;\n if (!dataEqual) return false;\n\n const typeEqual = prevType === nextType;\n if (!typeEqual) return false;\n\n return true;\n};\n\nconst MemoizedAutoCompleteSuggestionList = React.memo(\n AutoCompleteSuggestionListWithContext,\n areEqual,\n) as typeof AutoCompleteSuggestionListWithContext;\n\nexport type AutoCompleteSuggestionListProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = AutoCompleteSuggestionListComponentProps<StreamChatGenerics> & {\n AutoCompleteSuggestionHeader?: React.ComponentType<AutoCompleteSuggestionHeaderProps>;\n AutoCompleteSuggestionItem?: React.ComponentType<\n AutoCompleteSuggestionItemProps<StreamChatGenerics>\n >;\n};\n\nexport const AutoCompleteSuggestionList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteSuggestionListProps<StreamChatGenerics>,\n) => {\n const { AutoCompleteSuggestionHeader, AutoCompleteSuggestionItem } =\n useSuggestionsContext<StreamChatGenerics>();\n\n return (\n <MemoizedAutoCompleteSuggestionList\n {...{ AutoCompleteSuggestionHeader, AutoCompleteSuggestionItem }}\n {...props}\n />\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 8,\n elevation: 3,\n marginHorizontal: 8,\n marginVertical: 8,\n shadowOffset: { height: 1, width: 0 },\n shadowOpacity: 0.15,\n },\n});\n\nAutoCompleteSuggestionList.displayName =\n 'AutoCompleteSuggestionList{messageInput{suggestions{List}}}';\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_SuggestionsContext","_ThemeContext","_native","_excluded","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","AUTO_COMPLETE_SUGGESTION_LIST_HEADER_HEIGHT","SuggestionsItem","props","children","propsStyle","style","pressableProps","_objectWithoutProperties2","_ref","pressed","opacity","createElement","Pressable","_extends2","__self","__source","fileName","lineNumber","columnNumber","displayName","AutoCompleteSuggestionListWithContext","_useState","useState","_useState2","_slicedToArray2","itemHeight","setItemHeight","active","AutoCompleteSuggestionHeader","AutoCompleteSuggestionItem","data","onSelect","queryText","triggerType","_useTheme","useTheme","_useTheme$theme","theme","white","colors","_useTheme$theme$messa","messageInput","maxHeight","container","itemStyle","suggestions","item","flatlist","suggestionsListContainer","flatlistHeight","useMemo","totalItemHeight","length","renderItem","_ref2","onLayout","event","nativeEvent","layout","height","onPress","itemProps","View","styles","backgroundColor","FlatList","keyboardShouldPersistTaps","keyExtractor","index","name","isSuggestionUser","id","ListHeaderComponent","exports","areEqual","prevProps","nextProps","prevActive","prevData","prevQueryText","prevType","nextActive","nextData","nextQueryText","nextType","activeEqual","queryTextEqual","dataEqual","typeEqual","MemoizedAutoCompleteSuggestionList","React","memo","AutoCompleteSuggestionList","_useSuggestionsContex","useSuggestionsContext","StyleSheet","create","borderRadius","elevation","marginHorizontal","marginVertical","shadowOffset","width","shadowOpacity"],"sources":["AutoCompleteSuggestionList.tsx"],"sourcesContent":["import React, { useMemo, useState } from 'react';\nimport {\n LayoutChangeEvent,\n Pressable,\n PressableProps,\n PressableStateCallbackType,\n StyleSheet,\n View,\n ViewStyle,\n} from 'react-native';\n\nimport type { AutoCompleteSuggestionHeaderProps } from './AutoCompleteSuggestionHeader';\nimport type { AutoCompleteSuggestionItemProps } from './AutoCompleteSuggestionItem';\n\nimport {\n isSuggestionUser,\n Suggestion,\n SuggestionsContextValue,\n useSuggestionsContext,\n} from '../../contexts/suggestionsContext/SuggestionsContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { FlatList } from '../../native';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\n\nconst AUTO_COMPLETE_SUGGESTION_LIST_HEADER_HEIGHT = 50;\n\ntype AutoCompleteSuggestionListComponentProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<SuggestionsContextValue, 'queryText' | 'triggerType'> & {\n active: boolean;\n data: Suggestion<StreamChatGenerics>[];\n onSelect: (item: Suggestion<StreamChatGenerics>) => void;\n};\n\nexport type AutoCompleteSuggestionListPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n SuggestionsContextValue<StreamChatGenerics>,\n 'AutoCompleteSuggestionHeader' | 'AutoCompleteSuggestionItem'\n> &\n AutoCompleteSuggestionListComponentProps<StreamChatGenerics>;\n\nconst SuggestionsItem: React.FC<PressableProps> = (props) => {\n const { children, style: propsStyle, ...pressableProps } = props;\n\n const style = ({ pressed }: PressableStateCallbackType) => [\n propsStyle as ViewStyle,\n { opacity: pressed ? 0.2 : 1 },\n ];\n\n return (\n <Pressable {...pressableProps} style={style}>\n {children}\n </Pressable>\n );\n};\n\nSuggestionsItem.displayName = 'SuggestionsHeader{messageInput{suggestions}}';\n\nexport const AutoCompleteSuggestionListWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteSuggestionListPropsWithContext<StreamChatGenerics>,\n) => {\n const [itemHeight, setItemHeight] = useState<number>(0);\n const {\n active,\n AutoCompleteSuggestionHeader,\n AutoCompleteSuggestionItem,\n data,\n onSelect,\n queryText,\n triggerType,\n } = props;\n\n const {\n theme: {\n colors: { white },\n messageInput: {\n container: { maxHeight },\n suggestions: { item: itemStyle },\n suggestionsListContainer: { flatlist },\n },\n },\n } = useTheme();\n\n const flatlistHeight = useMemo(() => {\n let totalItemHeight;\n if (triggerType === 'emoji') {\n totalItemHeight = data.length < 7 ? data.length * itemHeight : itemHeight * 6;\n } else {\n totalItemHeight = data.length < 4 ? data.length * itemHeight : itemHeight * 3;\n }\n\n return triggerType === 'emoji' || triggerType === 'command'\n ? totalItemHeight + AUTO_COMPLETE_SUGGESTION_LIST_HEADER_HEIGHT\n : totalItemHeight;\n }, [itemHeight, data.length]);\n\n const renderItem = ({ item }: { item: Suggestion<StreamChatGenerics> }) => {\n switch (triggerType) {\n case 'command':\n case 'mention':\n case 'emoji':\n return (\n <SuggestionsItem\n onLayout={(event: LayoutChangeEvent) => setItemHeight(event.nativeEvent.layout.height)}\n onPress={() => {\n onSelect(item);\n }}\n style={itemStyle}\n >\n {AutoCompleteSuggestionItem && (\n <AutoCompleteSuggestionItem itemProps={item} triggerType={triggerType} />\n )}\n </SuggestionsItem>\n );\n default:\n return null;\n }\n };\n\n if (!active || data.length === 0) return null;\n\n return (\n <View style={[styles.container, { backgroundColor: white, height: flatlistHeight }]}>\n <FlatList\n data={data}\n keyboardShouldPersistTaps='always'\n keyExtractor={(item, index) =>\n `${item.name || (isSuggestionUser(item) ? item.id : '')}${index}`\n }\n ListHeaderComponent={\n AutoCompleteSuggestionHeader ? (\n <AutoCompleteSuggestionHeader queryText={queryText} triggerType={triggerType} />\n ) : null\n }\n renderItem={renderItem}\n style={[flatlist, { maxHeight }]}\n />\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: AutoCompleteSuggestionListPropsWithContext<StreamChatGenerics>,\n nextProps: AutoCompleteSuggestionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n active: prevActive,\n data: prevData,\n queryText: prevQueryText,\n triggerType: prevType,\n } = prevProps;\n const {\n active: nextActive,\n data: nextData,\n queryText: nextQueryText,\n triggerType: nextType,\n } = nextProps;\n\n const activeEqual = prevActive === nextActive;\n if (!activeEqual) return false;\n\n const queryTextEqual = prevQueryText === nextQueryText;\n if (!queryTextEqual) return false;\n\n const dataEqual = prevData === nextData;\n if (!dataEqual) return false;\n\n const typeEqual = prevType === nextType;\n if (!typeEqual) return false;\n\n return true;\n};\n\nconst MemoizedAutoCompleteSuggestionList = React.memo(\n AutoCompleteSuggestionListWithContext,\n areEqual,\n) as typeof AutoCompleteSuggestionListWithContext;\n\nexport type AutoCompleteSuggestionListProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = AutoCompleteSuggestionListComponentProps<StreamChatGenerics> & {\n AutoCompleteSuggestionHeader?: React.ComponentType<AutoCompleteSuggestionHeaderProps>;\n AutoCompleteSuggestionItem?: React.ComponentType<\n AutoCompleteSuggestionItemProps<StreamChatGenerics>\n >;\n};\n\nexport const AutoCompleteSuggestionList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteSuggestionListProps<StreamChatGenerics>,\n) => {\n const { AutoCompleteSuggestionHeader, AutoCompleteSuggestionItem } =\n useSuggestionsContext<StreamChatGenerics>();\n\n return (\n <MemoizedAutoCompleteSuggestionList\n {...{ AutoCompleteSuggestionHeader, AutoCompleteSuggestionItem }}\n {...props}\n />\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 8,\n elevation: 3,\n marginHorizontal: 8,\n marginVertical: 8,\n shadowOffset: { height: 1, width: 0 },\n shadowOpacity: 0.15,\n },\n});\n\nAutoCompleteSuggestionList.displayName =\n 'AutoCompleteSuggestionList{messageInput{suggestions{List}}}';\n"],"mappings":"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"}
|
|
@@ -197,6 +197,8 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
197
197
|
doMarkReadRequest = props.doMarkReadRequest,
|
|
198
198
|
doSendMessageRequest = props.doSendMessageRequest,
|
|
199
199
|
doUpdateMessageRequest = props.doUpdateMessageRequest,
|
|
200
|
+
_props$emojiSearchInd = props.emojiSearchIndex,
|
|
201
|
+
emojiSearchIndex = _props$emojiSearchInd === void 0 ? _utils.defaultEmojiSearchIndex : _props$emojiSearchInd,
|
|
200
202
|
_props$EmptyStateIndi = props.EmptyStateIndicator,
|
|
201
203
|
EmptyStateIndicator = _props$EmptyStateIndi === void 0 ? _EmptyStateIndicator.EmptyStateIndicator : _props$EmptyStateIndi,
|
|
202
204
|
_props$enableMessageG = props.enableMessageGroupingByUser,
|
|
@@ -2138,6 +2140,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
2138
2140
|
doImageUploadRequest: doImageUploadRequest,
|
|
2139
2141
|
editing: editing,
|
|
2140
2142
|
editMessage: editMessage,
|
|
2143
|
+
emojiSearchIndex: emojiSearchIndex,
|
|
2141
2144
|
FileUploadPreview: FileUploadPreview,
|
|
2142
2145
|
hasCommands: hasCommands,
|
|
2143
2146
|
hasFilePicker: hasFilePicker,
|
|
@@ -2293,7 +2296,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
2293
2296
|
__self: _this,
|
|
2294
2297
|
__source: {
|
|
2295
2298
|
fileName: _jsxFileName,
|
|
2296
|
-
lineNumber:
|
|
2299
|
+
lineNumber: 2312,
|
|
2297
2300
|
columnNumber: 12
|
|
2298
2301
|
}
|
|
2299
2302
|
});
|
|
@@ -2307,7 +2310,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
2307
2310
|
__self: _this,
|
|
2308
2311
|
__source: {
|
|
2309
2312
|
fileName: _jsxFileName,
|
|
2310
|
-
lineNumber:
|
|
2313
|
+
lineNumber: 2317,
|
|
2311
2314
|
columnNumber: 7
|
|
2312
2315
|
}
|
|
2313
2316
|
}, t('Please select a channel first'));
|
|
@@ -2320,7 +2323,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
2320
2323
|
__self: _this,
|
|
2321
2324
|
__source: {
|
|
2322
2325
|
fileName: _jsxFileName,
|
|
2323
|
-
lineNumber:
|
|
2326
|
+
lineNumber: 2324,
|
|
2324
2327
|
columnNumber: 5
|
|
2325
2328
|
}
|
|
2326
2329
|
}), _react["default"].createElement(_ChannelContext.ChannelProvider, {
|
|
@@ -2328,7 +2331,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
2328
2331
|
__self: _this,
|
|
2329
2332
|
__source: {
|
|
2330
2333
|
fileName: _jsxFileName,
|
|
2331
|
-
lineNumber:
|
|
2334
|
+
lineNumber: 2330,
|
|
2332
2335
|
columnNumber: 7
|
|
2333
2336
|
}
|
|
2334
2337
|
}, _react["default"].createElement(_OwnCapabilitiesContext.OwnCapabilitiesProvider, {
|
|
@@ -2336,7 +2339,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
2336
2339
|
__self: _this,
|
|
2337
2340
|
__source: {
|
|
2338
2341
|
fileName: _jsxFileName,
|
|
2339
|
-
lineNumber:
|
|
2342
|
+
lineNumber: 2331,
|
|
2340
2343
|
columnNumber: 9
|
|
2341
2344
|
}
|
|
2342
2345
|
}, _react["default"].createElement(_TypingContext.TypingProvider, {
|
|
@@ -2344,7 +2347,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
2344
2347
|
__self: _this,
|
|
2345
2348
|
__source: {
|
|
2346
2349
|
fileName: _jsxFileName,
|
|
2347
|
-
lineNumber:
|
|
2350
|
+
lineNumber: 2332,
|
|
2348
2351
|
columnNumber: 11
|
|
2349
2352
|
}
|
|
2350
2353
|
}, _react["default"].createElement(_PaginatedMessageListContext.PaginatedMessageListProvider, {
|
|
@@ -2352,7 +2355,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
2352
2355
|
__self: _this,
|
|
2353
2356
|
__source: {
|
|
2354
2357
|
fileName: _jsxFileName,
|
|
2355
|
-
lineNumber:
|
|
2358
|
+
lineNumber: 2333,
|
|
2356
2359
|
columnNumber: 13
|
|
2357
2360
|
}
|
|
2358
2361
|
}, _react["default"].createElement(_MessagesContext.MessagesProvider, {
|
|
@@ -2360,7 +2363,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
2360
2363
|
__self: _this,
|
|
2361
2364
|
__source: {
|
|
2362
2365
|
fileName: _jsxFileName,
|
|
2363
|
-
lineNumber:
|
|
2366
|
+
lineNumber: 2334,
|
|
2364
2367
|
columnNumber: 15
|
|
2365
2368
|
}
|
|
2366
2369
|
}, _react["default"].createElement(_ThreadContext.ThreadProvider, {
|
|
@@ -2368,7 +2371,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
2368
2371
|
__self: _this,
|
|
2369
2372
|
__source: {
|
|
2370
2373
|
fileName: _jsxFileName,
|
|
2371
|
-
lineNumber:
|
|
2374
|
+
lineNumber: 2335,
|
|
2372
2375
|
columnNumber: 17
|
|
2373
2376
|
}
|
|
2374
2377
|
}, _react["default"].createElement(_SuggestionsContext.SuggestionsProvider, {
|
|
@@ -2376,7 +2379,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
2376
2379
|
__self: _this,
|
|
2377
2380
|
__source: {
|
|
2378
2381
|
fileName: _jsxFileName,
|
|
2379
|
-
lineNumber:
|
|
2382
|
+
lineNumber: 2336,
|
|
2380
2383
|
columnNumber: 19
|
|
2381
2384
|
}
|
|
2382
2385
|
}, _react["default"].createElement(_MessageInputContext.MessageInputProvider, {
|
|
@@ -2384,7 +2387,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
2384
2387
|
__self: _this,
|
|
2385
2388
|
__source: {
|
|
2386
2389
|
fileName: _jsxFileName,
|
|
2387
|
-
lineNumber:
|
|
2390
|
+
lineNumber: 2337,
|
|
2388
2391
|
columnNumber: 21
|
|
2389
2392
|
}
|
|
2390
2393
|
}, _react["default"].createElement(_reactNative.View, {
|
|
@@ -2394,7 +2397,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
|
|
|
2394
2397
|
__self: _this,
|
|
2395
2398
|
__source: {
|
|
2396
2399
|
fileName: _jsxFileName,
|
|
2397
|
-
lineNumber:
|
|
2400
|
+
lineNumber: 2338,
|
|
2398
2401
|
columnNumber: 23
|
|
2399
2402
|
}
|
|
2400
2403
|
}, children))))))))));
|
|
@@ -2445,7 +2448,7 @@ var Channel = function Channel(props) {
|
|
|
2445
2448
|
__self: _this,
|
|
2446
2449
|
__source: {
|
|
2447
2450
|
fileName: _jsxFileName,
|
|
2448
|
-
lineNumber:
|
|
2451
|
+
lineNumber: 2395,
|
|
2449
2452
|
columnNumber: 5
|
|
2450
2453
|
}
|
|
2451
2454
|
}));
|