Skip to content

Commit a49bdf6

Browse files
committed
fix: add override
1 parent 3d30a8a commit a49bdf6

File tree

7 files changed

+20
-2
lines changed

7 files changed

+20
-2
lines changed

package/src/components/AutoCompleteInput/InputView.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { AutoCompleteInput } from './AutoCompleteInput';
66
import { CommandChip } from '../MessageInput/CommandChip';
77
import { ShowThreadMessageInChannelButton } from '../MessageInput/ShowThreadMessageInChannelButton';
88

9-
type InputViewProps = React.ComponentProps<typeof AutoCompleteInput>;
9+
export type InputViewProps = React.ComponentProps<typeof AutoCompleteInput>;
1010

1111
export const InputView = (props: InputViewProps) => (
1212
<View style={styles.container}>

package/src/components/Channel/Channel.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@ import { ImageOverlaySelectedComponent as DefaultImageOverlaySelectedComponent }
131131
import { AutoCompleteSuggestionHeader as AutoCompleteSuggestionHeaderDefault } from '../AutoCompleteInput/AutoCompleteSuggestionHeader';
132132
import { AutoCompleteSuggestionItem as AutoCompleteSuggestionItemDefault } from '../AutoCompleteInput/AutoCompleteSuggestionItem';
133133
import { AutoCompleteSuggestionList as AutoCompleteSuggestionListDefault } from '../AutoCompleteInput/AutoCompleteSuggestionList';
134+
import { InputView as InputViewDefault } from '../AutoCompleteInput/InputView';
134135
import { EmptyStateIndicator as EmptyStateIndicatorDefault } from '../Indicators/EmptyStateIndicator';
135136
import {
136137
LoadingErrorIndicator as LoadingErrorIndicatorDefault,
@@ -667,6 +668,7 @@ const ChannelWithContext = (props: PropsWithChildren<ChannelPropsWithContext>) =
667668
InlineDateSeparator = InlineDateSeparatorDefault,
668669
InlineUnreadIndicator = InlineUnreadIndicatorDefault,
669670
Input,
671+
InputView = InputViewDefault,
670672
InputButtons = InputButtonsDefault,
671673
MessageComposerLeadingView = MessageComposerLeadingViewDefault,
672674
MessageComposerTrailingView = MessageComposerTrailingViewDefault,
@@ -1886,6 +1888,7 @@ const ChannelWithContext = (props: PropsWithChildren<ChannelPropsWithContext>) =
18861888
hasImagePicker,
18871889
ImageAttachmentUploadPreview,
18881890
Input,
1891+
InputView,
18891892
InputButtons,
18901893
MessageComposerLeadingView,
18911894
MessageComposerTrailingView,

package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ export const useCreateInputMessageInputContext = ({
4545
hasImagePicker,
4646
ImageAttachmentUploadPreview,
4747
Input,
48+
InputView,
4849
InputButtons,
4950
MessageComposerLeadingView,
5051
MessageComposerTrailingView,
@@ -113,6 +114,7 @@ export const useCreateInputMessageInputContext = ({
113114
hasImagePicker,
114115
ImageAttachmentUploadPreview,
115116
Input,
117+
InputView,
116118
InputButtons,
117119
MessageComposerLeadingView,
118120
MessageComposerTrailingView,

package/src/components/MessageInput/MessageInput.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,6 @@ import { AudioRecorderManagerState } from '../../state-store/audio-recorder-mana
5555
import { MessageInputHeightState } from '../../state-store/message-input-height-store';
5656
import { primitives } from '../../theme';
5757
import { type TextInputOverrideComponent } from '../AutoCompleteInput/AutoCompleteInput';
58-
import { InputView } from '../AutoCompleteInput/InputView';
5958
import { CreatePoll } from '../Poll/CreatePollContent';
6059
import { PortalWhileClosingView } from '../UIComponents/PortalWhileClosingView';
6160
import { SafeAreaViewWrapper } from '../UIComponents/SafeAreaViewWrapper';
@@ -170,6 +169,7 @@ type MessageInputPropsWithContext = Pick<ChatContextValue, 'isOnline'> &
170169
| 'closeAttachmentPicker'
171170
| 'compressImageQuality'
172171
| 'Input'
172+
| 'InputView'
173173
| 'inputBoxRef'
174174
| 'InputButtons'
175175
| 'MessageComposerLeadingView'
@@ -220,6 +220,7 @@ const MessageInputWithContext = (props: MessageInputPropsWithContext) => {
220220
CreatePollContent,
221221
createPollOptionGap,
222222
editing,
223+
InputView,
223224
MessageComposerLeadingView,
224225
MessageComposerTrailingView,
225226
messageInputFloating,
@@ -674,6 +675,7 @@ export const MessageInput = (props: MessageInputProps) => {
674675
compressImageQuality,
675676
CreatePollContent,
676677
Input,
678+
InputView,
677679
inputBoxRef,
678680
InputButtons,
679681
MessageComposerLeadingView,
@@ -741,6 +743,7 @@ export const MessageInput = (props: MessageInputProps) => {
741743
CreatePollContent,
742744
editing,
743745
Input,
746+
InputView,
744747
inputBoxRef,
745748
InputButtons,
746749
MessageComposerLeadingView,

package/src/components/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ export * from './AutoCompleteInput/AutoCompleteInput';
2121
export * from './AutoCompleteInput/AutoCompleteSuggestionHeader';
2222
export * from './AutoCompleteInput/AutoCompleteSuggestionItem';
2323
export * from './AutoCompleteInput/AutoCompleteSuggestionList';
24+
export * from './AutoCompleteInput/InputView';
2425

2526
export * from './Avatar/GroupAvatar';
2627

package/src/contexts/messageInputContext/MessageInputContext.tsx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ import {
3333
PollContentProps,
3434
StopMessageStreamingButtonProps,
3535
} from '../../components';
36+
import type { InputViewProps } from '../../components/AutoCompleteInput/InputView';
3637
import { dismissKeyboard } from '../../components/KeyboardCompatibleView/KeyboardControllerAvoidingView';
3738
import { parseLinksFromText } from '../../components/Message/MessageSimple/utils/parseLinks';
3839
import { AttachmentUploadPreviewListProps } from '../../components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList';
@@ -337,6 +338,12 @@ export type InputMessageInputContextValue = {
337338
getUsers: () => UserResponse[];
338339
}
339340
>;
341+
/**
342+
* Custom UI component to override the combined input body view.
343+
* Defaults to
344+
* [InputView](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/AutoCompleteInput/InputView.tsx)
345+
*/
346+
InputView: React.ComponentType<InputViewProps>;
340347
/**
341348
* Custom UI component to override buttons on left side of input box
342349
* Defaults to

package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ export const useCreateMessageInputContext = ({
4545
hasImagePicker,
4646
ImageAttachmentUploadPreview,
4747
Input,
48+
InputView,
4849
inputBoxRef,
4950
InputButtons,
5051
MessageComposerLeadingView,
@@ -123,6 +124,7 @@ export const useCreateMessageInputContext = ({
123124
hasImagePicker,
124125
ImageAttachmentUploadPreview,
125126
Input,
127+
InputView,
126128
inputBoxRef,
127129
InputButtons,
128130
MessageComposerLeadingView,

0 commit comments

Comments
 (0)