Skip to content

Commit eb5446a

Browse files
committed
fix: export Handlers thorough uikit (#260)
Handlers cannot seem to work when imported through `@sendbird/chat` fixes: https://sendbird.atlassian.net/browse/UIKIT-1993
1 parent c06361e commit eb5446a

8 files changed

+56
-0
lines changed

exports.js

+6
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,12 @@ export default {
1111
useSendbirdStateContext: 'src/hooks/useSendbirdStateContext.tsx',
1212
withSendbird: 'src/lib/SendbirdSdkContext.jsx',
1313

14+
// handlers - experimental
15+
'handlers/ConnectionHandler': 'src/lib/handlers/ConnectionHandler.ts',
16+
'handlers/GroupChannelHandler': 'src/lib/handlers/GroupChannelHandler.ts',
17+
'handlers/OpenChannelHandler': 'src/lib/handlers/OpenChannelHandler.ts',
18+
'handlers/UserEventHandler': 'src/lib/handlers/UserEventHandler.ts',
19+
1420
// ChannelList
1521
ChannelList: 'src/smart-components/ChannelList/index.tsx',
1622
'ChannelList/context': 'src/smart-components/ChannelList/context/ChannelListProvider.tsx',

scripts/index_d_ts

+18
Original file line numberDiff line numberDiff line change
@@ -865,6 +865,24 @@ declare module '@sendbird/uikit-react/withSendbird' {
865865
export default withSendbird;
866866
}
867867

868+
// handlers
869+
declare module '@sendbird/uikit-react/handlers/ConnectionHandler' {
870+
import type { ConnectionHandler } from '@sendbird/chat';
871+
export default ConnectionHandler;
872+
}
873+
declare module '@sendbird/uikit-react/handlers/GroupChannelHandler' {
874+
import type { GroupChannelHandler } from '@sendbird/chat/groupChannel';
875+
export default GroupChannelHandler;
876+
}
877+
declare module '@sendbird/uikit-react/handlers/OpenChannelHandler' {
878+
import type { OpenChannelHandler } from '@sendbird/chat/openChannel';
879+
export default OpenChannelHandler;
880+
}
881+
declare module '@sendbird/uikit-react/handlers/UserEventHandler' {
882+
import type { UserEventHandler } from "@sendbird/chat";
883+
export default UserEventHandler;
884+
}
885+
868886
/** ChannelList */
869887
declare module '@sendbird/uikit-react/ChannelList' {
870888
import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';

src/lib/handlers/ConnectionHandler.ts

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import { ConnectionHandler } from "@sendbird/chat";
2+
3+
/**
4+
* Returns the instance of ConnectionHandler
5+
*/
6+
export default ConnectionHandler;
+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import { GroupChannelHandler } from "@sendbird/chat/groupChannel";
2+
3+
/**
4+
* Returns the instance of GroupChannelHandler
5+
* workaround for: https://sendbird.atlassian.net/browse/UIKIT-1993
6+
* Recommended fix: remove instanceOf validation check from SDK
7+
*/
8+
export default GroupChannelHandler;
+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
/**
2+
* Returns the instance of OpenChannelHandler
3+
*/
4+
import { OpenChannelHandler } from "@sendbird/chat/openChannel";
5+
6+
export default OpenChannelHandler;

src/lib/handlers/README.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
* Returns the instance of GroupChannelHandler
2+
* workaround for: https://sendbird.atlassian.net/browse/UIKIT-1993
3+
* Recommended fix: remove instanceOf validation check from SDK
4+
* We keep these fns seperate from sendbird selectors because they seems
5+
to break jest and lint, and fix is a bit tricky

src/lib/handlers/UserEventHandler.ts

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import { UserEventHandler } from "@sendbird/chat";
2+
3+
/**
4+
* Returns the class of UserEventHandler
5+
*/
6+
export default UserEventHandler;

src/lib/selectors.ts

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import type {
33
User,
44
UserUpdateParams,
55
} from '@sendbird/chat';
6+
67
import { FailedMessageHandler, MessageHandler, UserMessage, UserMessageCreateParams } from '@sendbird/chat/message';
78
import { GroupChannel, GroupChannelCreateParams, SendbirdGroupChat } from '@sendbird/chat/groupChannel';
89
import { OpenChannel, OpenChannelCreateParams, SendbirdOpenChat } from '@sendbird/chat/openChannel';

0 commit comments

Comments
 (0)