Skip to content

Commit 97df522

Browse files
committed
[v3.3.1] (Nov 23 2022)
Fixes: * Rename properties of `useThreadContext` * `channelStatus` to `channelState` * `parentMessageInfoStatus` to `parentMessageState` * `threadListStatus` to `threadListState` * Change the state types to enum
1 parent df73f01 commit 97df522

File tree

16 files changed

+130
-88
lines changed

16 files changed

+130
-88
lines changed

CHANGELOG.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,33 @@
11
# Changelog - v3
22

3+
## [v3.3.1] (Nov 23 2022)
4+
Fixes:
5+
* Rename properties of `useThreadContext`
6+
* `channelStatus` to `channelState`
7+
* `parentMessageInfoStatus` to `parentMessageState`
8+
* `threadListStatus` to `threadListState`
9+
* Change the state types to enum
10+
```typescript
11+
enum ChannelStateTypes {
12+
NIL = 'NIL',
13+
LOADING = 'LOADING',
14+
INVALID = 'INVALID',
15+
INITIALIZED = 'INITIALIZED',
16+
}
17+
enum ParentMessageStateTypes {
18+
NIL = 'NIL',
19+
LOADING = 'LOADING',
20+
INVALID = 'INVALID',
21+
INITIALIZED = 'INITIALIZED',
22+
}
23+
enum ThreadListStateTypes {
24+
NIL = 'NIL',
25+
LOADING = 'LOADING',
26+
INVALID = 'INVALID',
27+
INITIALIZED = 'INITIALIZED',
28+
}
29+
```
30+
331
## [v3.3.0] (Nov 23 2022)
432
Features:
533
* Provide new module `Thread`. See the specific informations of this module on the [Docs page](https://sendbird.com/docs/uikit)

scripts/index_d_ts

Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -893,7 +893,7 @@ declare module "SendbirdUIKitGlobal" {
893893
INVALID = 'INVALID',
894894
INITIALIZED = 'INITIALIZED',
895895
}
896-
export enum ParentMessageInfoStateTypes {
896+
export enum ParentMessageStateTypes {
897897
NIL = 'NIL',
898898
LOADING = 'LOADING',
899899
INVALID = 'INVALID',
@@ -942,9 +942,9 @@ declare module "SendbirdUIKitGlobal" {
942942
currentChannel: GroupChannel;
943943
allThreadMessages: Array<BaseMessage>;
944944
parentMessage: UserMessage | FileMessage;
945-
channelStatus: ChannelStateTypes;
946-
parentMessageInfoStatus: ParentMessageInfoStateTypes;
947-
threadListStatus: ThreadListStateTypes;
945+
channelState: ChannelStateTypes;
946+
parentMessageState: ParentMessageStateTypes;
947+
threadListState: ThreadListStateTypes;
948948
hasMorePrev: boolean;
949949
hasMoreNext: boolean;
950950
emojiContainer: EmojiContainer;
@@ -959,7 +959,7 @@ declare module "SendbirdUIKitGlobal" {
959959
renderMessage?: (props: { message: UserMessage | FileMessage }) => React.ReactElement;
960960
renderMessageInput?: () => React.ReactElement;
961961
renderCustomSeparator?: () => React.ReactElement;
962-
renderParentMessageInfoPlaceholder?: (type: ParentMessageInfoStateTypes) => React.ReactElement;
962+
renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;
963963
renderThreadListPlaceHolder?: (type: ThreadListStateTypes) => React.ReactElement;
964964
}
965965

@@ -1501,10 +1501,24 @@ declare module '@sendbird/uikit-react/Thread/context' {
15011501
}
15021502

15031503
declare module '@sendbird/uikit-react/Thread/context/types' {
1504-
import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1505-
export const ChannelStateTypes: SendbirdUIKitGlobal.ChannelStateTypes;
1506-
export const ParentMessageInfoStateTypes: SendbirdUIKitGlobal.ParentMessageInfoStateTypes;
1507-
export const ThreadListStateTypes: SendbirdUIKitGlobal.ThreadListStateTypes;
1504+
export enum ChannelStateTypes {
1505+
NIL = 'NIL',
1506+
LOADING = 'LOADING',
1507+
INVALID = 'INVALID',
1508+
INITIALIZED = 'INITIALIZED',
1509+
}
1510+
export enum ParentMessageStateTypes {
1511+
NIL = 'NIL',
1512+
LOADING = 'LOADING',
1513+
INVALID = 'INVALID',
1514+
INITIALIZED = 'INITIALIZED',
1515+
}
1516+
export enum ThreadListStateTypes {
1517+
NIL = 'NIL',
1518+
LOADING = 'LOADING',
1519+
INVALID = 'INVALID',
1520+
INITIALIZED = 'INITIALIZED',
1521+
}
15081522
}
15091523

15101524
declare module '@sendbird/uikit-react/Thread/components/ThreadUI' {

src/smart-components/ChannelSettings/components/ModerationPanel/MembersModal.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ export default function MembersModal({ onCancel }: Props): ReactElement {
7272
<UserListItem
7373
user={member}
7474
key={member.userId}
75-
currentUserId={currentUser}
75+
currentUser={currentUser}
7676
action={({ parentRef, actionRef }) => (
7777
<>
7878
{channel?.myRole === 'operator' && (

src/smart-components/ChannelSettings/components/ModerationPanel/MutedMembersModal.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ export default function MutedMembersModal({
7070
>
7171
{ members.map((member) => (
7272
<UserListItem
73-
currentUserId={currentUser}
73+
currentUser={currentUser}
7474
user={member}
7575
key={member.userId}
7676
action={({ actionRef, parentRef }) => (

src/smart-components/ChannelSettings/components/ModerationPanel/OperatorsModal.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ export default function OperatorsModal({ onCancel }: Props): ReactElement {
6464
>
6565
{operators.map((member) => (
6666
<UserListItem
67-
currentUserId={currentUserId}
67+
currentUser={currentUserId}
6868
user={member}
6969
key={member.userId}
7070
action={({ parentRef, actionRef }) => (

src/smart-components/Thread/components/ThreadList/ThreadListItem.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ export default function ThreadListItem({
5151
nicknamesMap,
5252
emojiContainer,
5353
toggleReaction,
54-
threadListStatus,
54+
threadListState,
5555
updateMessage,
5656
resendMessage,
5757
deleteMessage,
@@ -112,7 +112,7 @@ export default function ThreadListItem({
112112
}, [mentionedUserIds]);
113113

114114
// edit input
115-
const disabled = !(threadListStatus === ThreadListStateTypes.INITIALIZED)
115+
const disabled = !(threadListState === ThreadListStateTypes.INITIALIZED)
116116
|| !isOnline
117117
|| isMuted
118118
|| isChannelFrozen;

src/smart-components/Thread/components/ThreadUI/index.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';
77
import { useLocalization } from '../../../../lib/LocalizationContext';
88
import { getChannelTitle } from '../../../Channel/components/ChannelHeader/utils';
99
import { useThreadContext } from '../../context/ThreadProvider';
10-
import { ParentMessageInfoStateTypes, ThreadListStateTypes } from '../../types';
10+
import { ParentMessageStateTypes, ThreadListStateTypes } from '../../types';
1111
import ParentMessageInfo from '../ParentMessageInfo';
1212
import ThreadHeader from '../ThreadHeader';
1313
import ThreadList from '../ThreadList';
@@ -24,7 +24,7 @@ export interface ThreadUIProps {
2424
renderMessage?: (props: { message: UserMessage | FileMessage }) => React.ReactElement;
2525
renderMessageInput?: () => React.ReactElement;
2626
renderCustomSeparator?: () => React.ReactElement;
27-
renderParentMessageInfoPlaceholder?: (type: ParentMessageInfoStateTypes) => React.ReactElement;
27+
renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;
2828
renderThreadListPlaceHolder?: (type: ThreadListStateTypes) => React.ReactElement;
2929
}
3030

@@ -48,8 +48,8 @@ const ThreadUI: React.FC<ThreadUIProps> = ({
4848
currentChannel,
4949
allThreadMessages,
5050
parentMessage,
51-
parentMessageInfoStatus,
52-
threadListStatus,
51+
parentMessageState,
52+
threadListState,
5353
hasMorePrev,
5454
hasMoreNext,
5555
fetchPrevThreads,
@@ -63,12 +63,12 @@ const ThreadUI: React.FC<ThreadUIProps> = ({
6363
const MemorizedHeader = useMemorizedHeader({ renderHeader });
6464
const MemorizedParentMessageInfo = useMemorizedParentMessageInfo({
6565
parentMessage,
66-
parentMessageInfoStatus,
66+
parentMessageState,
6767
renderParentMessageInfo,
6868
renderParentMessageInfoPlaceholder, // nil, loading, invalid
6969
});
7070
const MemorizedThreadList = useMemorizedThreadList({
71-
threadListStatus,
71+
threadListState,
7272
renderThreadListPlaceHolder,
7373
});
7474

src/smart-components/Thread/components/ThreadUI/useMemorizedParentMessageInfo.tsx

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,31 @@
11
import React, { ReactElement, useMemo } from 'react';
22

3-
import { ParentMessageInfoStateTypes } from '../../types';
3+
import { ParentMessageStateTypes } from '../../types';
44
import PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';
55
import { FileMessage, UserMessage } from '@sendbird/chat/message';
66

77
export interface UseMemorizedParentMessageInfoProps {
88
parentMessage: UserMessage | FileMessage;
9-
parentMessageInfoStatus: ParentMessageInfoStateTypes;
9+
parentMessageState: ParentMessageStateTypes;
1010
renderParentMessageInfo?: () => React.ReactElement;
11-
renderParentMessageInfoPlaceholder?: (type: ParentMessageInfoStateTypes) => React.ReactElement;
11+
renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;
1212
}
1313

1414
const useMemorizedParentMessageInfo = ({
1515
parentMessage,
16-
parentMessageInfoStatus,
16+
parentMessageState,
1717
renderParentMessageInfo,
1818
renderParentMessageInfoPlaceholder,
1919
}: UseMemorizedParentMessageInfoProps): ReactElement => useMemo(() => {
20-
if (parentMessageInfoStatus === ParentMessageInfoStateTypes.NIL
21-
|| parentMessageInfoStatus === ParentMessageInfoStateTypes.LOADING
22-
|| parentMessageInfoStatus === ParentMessageInfoStateTypes.INVALID
20+
if (parentMessageState === ParentMessageStateTypes.NIL
21+
|| parentMessageState === ParentMessageStateTypes.LOADING
22+
|| parentMessageState === ParentMessageStateTypes.INVALID
2323
) {
2424
if (typeof renderParentMessageInfoPlaceholder === 'function') {
25-
return renderParentMessageInfoPlaceholder(parentMessageInfoStatus);
25+
return renderParentMessageInfoPlaceholder(parentMessageState);
2626
}
27-
switch (parentMessageInfoStatus) {
28-
case ParentMessageInfoStateTypes.NIL: {
27+
switch (parentMessageState) {
28+
case ParentMessageStateTypes.NIL: {
2929
return (
3030
<PlaceHolder
3131
className="sendbird-thread-ui__parent-message-info placeholder-nil"
@@ -34,7 +34,7 @@ const useMemorizedParentMessageInfo = ({
3434
/>
3535
);
3636
}
37-
case ParentMessageInfoStateTypes.LOADING: {
37+
case ParentMessageStateTypes.LOADING: {
3838
return (
3939
<PlaceHolder
4040
className="sendbird-thread-ui__parent-message-info placeholder-loading"
@@ -43,7 +43,7 @@ const useMemorizedParentMessageInfo = ({
4343
/>
4444
);
4545
}
46-
case ParentMessageInfoStateTypes.INVALID: {
46+
case ParentMessageStateTypes.INVALID: {
4747
return (
4848
<PlaceHolder
4949
className="sendbird-thread-ui__parent-message-info placeholder-invalid"
@@ -56,15 +56,15 @@ const useMemorizedParentMessageInfo = ({
5656
return null;
5757
}
5858
}
59-
} else if (parentMessageInfoStatus === ParentMessageInfoStateTypes.INITIALIZED) {
59+
} else if (parentMessageState === ParentMessageStateTypes.INITIALIZED) {
6060
if (typeof renderParentMessageInfo === 'function') {
6161
return renderParentMessageInfo();
6262
}
6363
}
6464
return null;
6565
}, [
6666
parentMessage,
67-
parentMessageInfoStatus,
67+
parentMessageState,
6868
renderParentMessageInfo,
6969
renderParentMessageInfoPlaceholder,
7070
]);

src/smart-components/Thread/components/ThreadUI/useMemorizedThreadList.tsx

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,22 @@ import PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';
44
import { ThreadListStateTypes } from '../../types';
55

66
export interface UseMemorizedThreadListProps {
7-
threadListStatus: ThreadListStateTypes;
7+
threadListState: ThreadListStateTypes;
88
renderThreadListPlaceHolder?: (tyep: ThreadListStateTypes) => React.ReactElement;
99
}
1010

1111
const useMemorizedThreadList = ({
12-
threadListStatus,
12+
threadListState,
1313
renderThreadListPlaceHolder,
1414
}: UseMemorizedThreadListProps): ReactElement => useMemo(() => {
15-
if (threadListStatus === ThreadListStateTypes.NIL
16-
|| threadListStatus === ThreadListStateTypes.LOADING
17-
|| threadListStatus === ThreadListStateTypes.INVALID
15+
if (threadListState === ThreadListStateTypes.NIL
16+
|| threadListState === ThreadListStateTypes.LOADING
17+
|| threadListState === ThreadListStateTypes.INVALID
1818
) {
1919
if (typeof renderThreadListPlaceHolder === 'function') {
20-
return renderThreadListPlaceHolder(threadListStatus);
20+
return renderThreadListPlaceHolder(threadListState);
2121
}
22-
switch (threadListStatus) {
22+
switch (threadListState) {
2323
case ThreadListStateTypes.LOADING: {
2424
return (
2525
<PlaceHolder
@@ -48,7 +48,7 @@ const useMemorizedThreadList = ({
4848
}
4949
return null;
5050
}, [
51-
threadListStatus,
51+
threadListState,
5252
renderThreadListPlaceHolder,
5353
]);
5454

src/smart-components/Thread/context/ThreadProvider.tsx

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,9 @@ export const ThreadProvider: React.FC<ThreadProviderProps> = (props: ThreadProvi
9595
currentChannel,
9696
allThreadMessages,
9797
parentMessage,
98-
channelStatus,
99-
threadListStatus,
100-
parentMessageInfoStatus,
98+
channelState,
99+
threadListState,
100+
parentMessageState,
101101
hasMorePrev,
102102
hasMoreNext,
103103
emojiContainer,
@@ -146,14 +146,14 @@ export const ThreadProvider: React.FC<ThreadProviderProps> = (props: ThreadProvi
146146
const fetchPrevThreads = useGetPrevThreadsCallback({
147147
hasMorePrev,
148148
parentMessage,
149-
threadListStatus,
149+
threadListState,
150150
isReactionEnabled,
151151
oldestMessageTimeStamp: allThreadMessages[0]?.createdAt || 0,
152152
}, { logger, threadDispatcher });
153153
const fetchNextThreads = useGetNextThreadsCallback({
154154
hasMoreNext,
155155
parentMessage,
156-
threadListStatus,
156+
threadListState,
157157
isReactionEnabled,
158158
latestMessageTimeStamp: allThreadMessages[allThreadMessages.length - 1]?.createdAt || 0
159159
}, { logger, threadDispatcher });
@@ -193,9 +193,9 @@ export const ThreadProvider: React.FC<ThreadProviderProps> = (props: ThreadProvi
193193
currentChannel,
194194
allThreadMessages,
195195
parentMessage,
196-
channelStatus,
197-
threadListStatus,
198-
parentMessageInfoStatus,
196+
channelState,
197+
threadListState,
198+
parentMessageState,
199199
hasMorePrev,
200200
hasMoreNext,
201201
emojiContainer,

0 commit comments

Comments
 (0)