stream-chat-react 10.17.0 → 10.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser.full-bundle.js +18 -9
- package/dist/browser.full-bundle.js.map +1 -1
- package/dist/browser.full-bundle.min.js +2 -2
- package/dist/browser.full-bundle.min.js.map +1 -1
- package/dist/components/ChannelList/hooks/usePaginatedChannels.d.ts.map +1 -1
- package/dist/components/ChannelList/hooks/usePaginatedChannels.js +2 -2
- package/dist/components/Chat/Chat.d.ts.map +1 -1
- package/dist/components/Chat/Chat.js +3 -1
- package/dist/components/Chat/hooks/useChat.d.ts +2 -0
- package/dist/components/Chat/hooks/useChat.d.ts.map +1 -1
- package/dist/components/Chat/hooks/useChat.js +7 -4
- package/dist/components/Chat/hooks/useCreateChatContext.d.ts.map +1 -1
- package/dist/components/Chat/hooks/useCreateChatContext.js +5 -1
- package/dist/context/ChatContext.d.ts +29 -2
- package/dist/context/ChatContext.d.ts.map +1 -1
- package/dist/index.cjs.js +18 -9
- package/dist/index.cjs.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePaginatedChannels.d.ts","sourceRoot":"","sources":["../../../../src/components/ChannelList/hooks/usePaginatedChannels.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIpG,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAKtE,eAAO,MAAM,oBAAoB,0NAMtB,cAAc,2KAIlB,IAAI,+BACmB,MAAM;;;;;
|
|
1
|
+
{"version":3,"file":"usePaginatedChannels.d.ts","sourceRoot":"","sources":["../../../../src/components/ChannelList/hooks/usePaginatedChannels.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIpG,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAKtE,eAAO,MAAM,oBAAoB,0NAMtB,cAAc,2KAIlB,IAAI,+BACmB,MAAM;;;;;CAqGnC,CAAC"}
|
|
@@ -7,8 +7,7 @@ var RECOVER_LOADED_CHANNELS_THROTTLE_INTERVAL_IN_MS = 5000;
|
|
|
7
7
|
var MIN_RECOVER_LOADED_CHANNELS_THROTTLE_INTERVAL_IN_MS = 2000;
|
|
8
8
|
export var usePaginatedChannels = function (client, filters, sort, options, activeChannelHandler, recoveryThrottleIntervalMs) {
|
|
9
9
|
if (recoveryThrottleIntervalMs === void 0) { recoveryThrottleIntervalMs = RECOVER_LOADED_CHANNELS_THROTTLE_INTERVAL_IN_MS; }
|
|
10
|
-
var _a = useChatContext('usePaginatedChannels').channelsQueryState, error =
|
|
11
|
-
var _b = useState([]), channels = _b[0], setChannels = _b[1];
|
|
10
|
+
var _a = useChatContext('usePaginatedChannels'), channels = _a.channels, _b = _a.channelsQueryState, error = _b.error, setError = _b.setError, setQueryInProgress = _b.setQueryInProgress, setChannels = _a.setChannels;
|
|
12
11
|
var _c = useState(true), hasNextPage = _c[0], setHasNextPage = _c[1];
|
|
13
12
|
var lastRecoveryTimestamp = useRef();
|
|
14
13
|
var recoveryThrottleInterval = recoveryThrottleIntervalMs < MIN_RECOVER_LOADED_CHANNELS_THROTTLE_INTERVAL_IN_MS
|
|
@@ -88,6 +87,7 @@ export var usePaginatedChannels = function (client, filters, sort, options, acti
|
|
|
88
87
|
useEffect(function () {
|
|
89
88
|
queryChannels('reload');
|
|
90
89
|
}, [filterString, sortString]);
|
|
90
|
+
// FIXME: state refactor (breaking change) is needed - do not forward `channels` and `setChannel`
|
|
91
91
|
return {
|
|
92
92
|
channels: channels,
|
|
93
93
|
hasNextPage: hasNextPage,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/Chat.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAKjD,OAAO,EAAE,YAAY,EAAkC,MAAM,yBAAyB,CAAC;AAEvF,OAAO,EAAgB,aAAa,EAAgB,MAAM,2BAA2B,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAuB,MAAM,kCAAkC,CAAC;AAE9F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEnE;;GAEG;AACH,oBAAY,KAAK,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IACvC,eAAe,GACf,gBAAgB,GAChB,iBAAiB,GACjB,kBAAkB,GAClB,gBAAgB,GAChB,iBAAiB,GACjB,WAAW,GACX,YAAY,GACZ,CAAC,CAAC;AAEN,oBAAY,SAAS,CACnB,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,mCAAmC;IACnC,MAAM,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;IACvC,8FAA8F;IAC9F,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;OAGG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oGAAoG;IACpG,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,8BAA8B;IAC9B,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,0CAA0C;IAC1C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAC;CACvC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,IAAI,
|
|
1
|
+
{"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/Chat.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAKjD,OAAO,EAAE,YAAY,EAAkC,MAAM,yBAAyB,CAAC;AAEvF,OAAO,EAAgB,aAAa,EAAgB,MAAM,2BAA2B,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAuB,MAAM,kCAAkC,CAAC;AAE9F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEnE;;GAEG;AACH,oBAAY,KAAK,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IACvC,eAAe,GACf,gBAAgB,GAChB,iBAAiB,GACjB,kBAAkB,GAClB,gBAAgB,GAChB,iBAAiB,GACjB,WAAW,GACX,YAAY,GACZ,CAAC,CAAC;AAEN,oBAAY,SAAS,CACnB,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,mCAAmC;IACnC,MAAM,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;IACvC,8FAA8F;IAC9F,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;OAGG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oGAAoG;IACpG,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,8BAA8B;IAC9B,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,0CAA0C;IAC1C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAC;CACvC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,IAAI,yKAqEhB,CAAC"}
|
|
@@ -11,7 +11,7 @@ import { TranslationProvider } from '../../context/TranslationContext';
|
|
|
11
11
|
*/
|
|
12
12
|
export var Chat = function (props) {
|
|
13
13
|
var children = props.children, client = props.client, customClasses = props.customClasses, customStyles = props.customStyles, _a = props.darkMode, darkMode = _a === void 0 ? false : _a, defaultLanguage = props.defaultLanguage, i18nInstance = props.i18nInstance, _b = props.initialNavOpen, initialNavOpen = _b === void 0 ? true : _b, _c = props.theme, theme = _c === void 0 ? 'messaging light' : _c, _d = props.useImageFlagEmojisOnWindows, useImageFlagEmojisOnWindows = _d === void 0 ? false : _d;
|
|
14
|
-
var _e = useChat({ client: client, defaultLanguage: defaultLanguage, i18nInstance: i18nInstance, initialNavOpen: initialNavOpen }), channel = _e.channel, closeMobileNav = _e.closeMobileNav, getAppSettings = _e.getAppSettings, latestMessageDatesByChannels = _e.latestMessageDatesByChannels, mutes = _e.mutes, navOpen = _e.navOpen, openMobileNav = _e.openMobileNav, setActiveChannel = _e.setActiveChannel, translators = _e.translators;
|
|
14
|
+
var _e = useChat({ client: client, defaultLanguage: defaultLanguage, i18nInstance: i18nInstance, initialNavOpen: initialNavOpen }), channel = _e.channel, channels = _e.channels, closeMobileNav = _e.closeMobileNav, getAppSettings = _e.getAppSettings, latestMessageDatesByChannels = _e.latestMessageDatesByChannels, mutes = _e.mutes, navOpen = _e.navOpen, openMobileNav = _e.openMobileNav, setActiveChannel = _e.setActiveChannel, setChannels = _e.setChannels, translators = _e.translators;
|
|
15
15
|
var channelsQueryState = useChannelsQueryState();
|
|
16
16
|
var themeVersion = typeof window !== 'undefined'
|
|
17
17
|
? (window
|
|
@@ -22,6 +22,7 @@ export var Chat = function (props) {
|
|
|
22
22
|
useCustomStyles(darkMode ? darkModeTheme : customStyles);
|
|
23
23
|
var chatContextValue = useCreateChatContext({
|
|
24
24
|
channel: channel,
|
|
25
|
+
channels: channels,
|
|
25
26
|
channelsQueryState: channelsQueryState,
|
|
26
27
|
client: client,
|
|
27
28
|
closeMobileNav: closeMobileNav,
|
|
@@ -32,6 +33,7 @@ export var Chat = function (props) {
|
|
|
32
33
|
navOpen: navOpen,
|
|
33
34
|
openMobileNav: openMobileNav,
|
|
34
35
|
setActiveChannel: setActiveChannel,
|
|
36
|
+
setChannels: setChannels,
|
|
35
37
|
theme: theme,
|
|
36
38
|
themeVersion: themeVersion,
|
|
37
39
|
useImageFlagEmojisOnWindows: useImageFlagEmojisOnWindows,
|
|
@@ -10,6 +10,7 @@ export declare type UseChatParams<StreamChatGenerics extends DefaultStreamChatGe
|
|
|
10
10
|
};
|
|
11
11
|
export declare const useChat: <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>({ client, defaultLanguage, i18nInstance, initialNavOpen, }: UseChatParams<StreamChatGenerics>) => {
|
|
12
12
|
channel: Channel<StreamChatGenerics> | undefined;
|
|
13
|
+
channels: Channel<StreamChatGenerics>[];
|
|
13
14
|
closeMobileNav: () => void;
|
|
14
15
|
getAppSettings: () => Promise<AppSettingsAPIResponse<StreamChatGenerics>>;
|
|
15
16
|
latestMessageDatesByChannels: {};
|
|
@@ -20,6 +21,7 @@ export declare const useChat: <StreamChatGenerics extends DefaultStreamChatGener
|
|
|
20
21
|
limit?: number;
|
|
21
22
|
offset?: number;
|
|
22
23
|
}, event?: React.BaseSyntheticEvent) => Promise<void>;
|
|
24
|
+
setChannels: import("react").Dispatch<import("react").SetStateAction<Channel<StreamChatGenerics>[]>>;
|
|
23
25
|
translators: TranslationContextValue;
|
|
24
26
|
};
|
|
25
27
|
//# sourceMappingURL=useChat.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useChat.d.ts","sourceRoot":"","sources":["../../../../src/components/Chat/hooks/useChat.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAS,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE5F,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAEtE,oBAAY,aAAa,CACvB,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,MAAM,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;IACvC,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,OAAO
|
|
1
|
+
{"version":3,"file":"useChat.d.ts","sourceRoot":"","sources":["../../../../src/components/Chat/hooks/useChat.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAS,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE5F,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAEtE,oBAAY,aAAa,CACvB,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,MAAM,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;IACvC,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,OAAO;;;;;;;;;2FAiFJ;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,UACrC,MAAM,kBAAkB;;;CA+BrC,CAAC"}
|
|
@@ -11,10 +11,11 @@ export var useChat = function (_a) {
|
|
|
11
11
|
tDateTimeParser: defaultDateTimeParser,
|
|
12
12
|
userLanguage: 'en',
|
|
13
13
|
}), translators = _e[0], setTranslators = _e[1];
|
|
14
|
-
var _f = useState(),
|
|
15
|
-
var _g = useState(
|
|
16
|
-
var _h = useState(
|
|
17
|
-
var _j = useState(
|
|
14
|
+
var _f = useState([]), channels = _f[0], setChannels = _f[1];
|
|
15
|
+
var _g = useState(), channel = _g[0], setChannel = _g[1];
|
|
16
|
+
var _h = useState([]), mutes = _h[0], setMutes = _h[1];
|
|
17
|
+
var _j = useState(initialNavOpen), navOpen = _j[0], setNavOpen = _j[1];
|
|
18
|
+
var _k = useState({}), latestMessageDatesByChannels = _k[0], setLatestMessageDatesByChannels = _k[1];
|
|
18
19
|
var clientMutes = ((_b = client.user) === null || _b === void 0 ? void 0 : _b.mutes) || [];
|
|
19
20
|
var closeMobileNav = function () { return setNavOpen(false); };
|
|
20
21
|
var openMobileNav = function () { return setTimeout(function () { return setNavOpen(true); }, 100); };
|
|
@@ -85,6 +86,7 @@ export var useChat = function (_a) {
|
|
|
85
86
|
}, [(_c = client.user) === null || _c === void 0 ? void 0 : _c.id]);
|
|
86
87
|
return {
|
|
87
88
|
channel: channel,
|
|
89
|
+
channels: channels,
|
|
88
90
|
closeMobileNav: closeMobileNav,
|
|
89
91
|
getAppSettings: getAppSettings,
|
|
90
92
|
latestMessageDatesByChannels: latestMessageDatesByChannels,
|
|
@@ -92,6 +94,7 @@ export var useChat = function (_a) {
|
|
|
92
94
|
navOpen: navOpen,
|
|
93
95
|
openMobileNav: openMobileNav,
|
|
94
96
|
setActiveChannel: setActiveChannel,
|
|
97
|
+
setChannels: setChannels,
|
|
95
98
|
translators: translators,
|
|
96
99
|
};
|
|
97
100
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCreateChatContext.d.ts","sourceRoot":"","sources":["../../../../src/components/Chat/hooks/useCreateChatContext.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAEtE,eAAO,MAAM,oBAAoB,
|
|
1
|
+
{"version":3,"file":"useCreateChatContext.d.ts","sourceRoot":"","sources":["../../../../src/components/Chat/hooks/useCreateChatContext.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAEtE,eAAO,MAAM,oBAAoB,yKAkEhC,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useMemo } from 'react';
|
|
2
2
|
export var useCreateChatContext = function (value) {
|
|
3
3
|
var _a;
|
|
4
|
-
var channel = value.channel, channelsQueryState = value.channelsQueryState, client = value.client, closeMobileNav = value.closeMobileNav, customClasses = value.customClasses, getAppSettings = value.getAppSettings, latestMessageDatesByChannels = value.latestMessageDatesByChannels, mutes = value.mutes, navOpen = value.navOpen, openMobileNav = value.openMobileNav, setActiveChannel = value.setActiveChannel, theme = value.theme, themeVersion = value.themeVersion, useImageFlagEmojisOnWindows = value.useImageFlagEmojisOnWindows;
|
|
4
|
+
var channel = value.channel, channels = value.channels, channelsQueryState = value.channelsQueryState, client = value.client, closeMobileNav = value.closeMobileNav, customClasses = value.customClasses, getAppSettings = value.getAppSettings, latestMessageDatesByChannels = value.latestMessageDatesByChannels, mutes = value.mutes, navOpen = value.navOpen, openMobileNav = value.openMobileNav, setActiveChannel = value.setActiveChannel, setChannels = value.setChannels, theme = value.theme, themeVersion = value.themeVersion, useImageFlagEmojisOnWindows = value.useImageFlagEmojisOnWindows;
|
|
5
5
|
var channelCid = channel === null || channel === void 0 ? void 0 : channel.cid;
|
|
6
6
|
var channelsQueryError = channelsQueryState.error;
|
|
7
7
|
var channelsQueryInProgress = channelsQueryState.queryInProgress;
|
|
@@ -9,6 +9,7 @@ export var useCreateChatContext = function (value) {
|
|
|
9
9
|
var mutedUsersLength = mutes.length;
|
|
10
10
|
var chatContext = useMemo(function () { return ({
|
|
11
11
|
channel: channel,
|
|
12
|
+
channels: channels,
|
|
12
13
|
channelsQueryState: channelsQueryState,
|
|
13
14
|
client: client,
|
|
14
15
|
closeMobileNav: closeMobileNav,
|
|
@@ -19,6 +20,7 @@ export var useCreateChatContext = function (value) {
|
|
|
19
20
|
navOpen: navOpen,
|
|
20
21
|
openMobileNav: openMobileNav,
|
|
21
22
|
setActiveChannel: setActiveChannel,
|
|
23
|
+
setChannels: setChannels,
|
|
22
24
|
theme: theme,
|
|
23
25
|
themeVersion: themeVersion,
|
|
24
26
|
useImageFlagEmojisOnWindows: useImageFlagEmojisOnWindows,
|
|
@@ -26,10 +28,12 @@ export var useCreateChatContext = function (value) {
|
|
|
26
28
|
channelCid,
|
|
27
29
|
channelsQueryError,
|
|
28
30
|
channelsQueryInProgress,
|
|
31
|
+
channels,
|
|
29
32
|
clientValues,
|
|
30
33
|
getAppSettings,
|
|
31
34
|
mutedUsersLength,
|
|
32
35
|
navOpen,
|
|
36
|
+
setChannels,
|
|
33
37
|
]);
|
|
34
38
|
return chatContext;
|
|
35
39
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { PropsWithChildren } from 'react';
|
|
1
|
+
import React, { Dispatch, PropsWithChildren, SetStateAction } from 'react';
|
|
2
2
|
import type { AppSettingsAPIResponse, Channel, Mute } from 'stream-chat';
|
|
3
3
|
import type { ChatProps } from '../components/Chat/Chat';
|
|
4
4
|
import type { DefaultStreamChatGenerics, UnknownType } from '../types/types';
|
|
@@ -8,19 +8,46 @@ export declare type CustomClasses = Partial<Record<CSSClasses, string>>;
|
|
|
8
8
|
declare type ChannelCID = string;
|
|
9
9
|
export declare type ThemeVersion = '1' | '2';
|
|
10
10
|
export declare type ChatContextValue<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = {
|
|
11
|
+
/**
|
|
12
|
+
* State representing the array of loaded channels.
|
|
13
|
+
* Channels query is executed by default only by ChannelList component in the SDK.
|
|
14
|
+
*/
|
|
15
|
+
channels: Channel<StreamChatGenerics>[];
|
|
16
|
+
/**
|
|
17
|
+
* Indicates, whether a channels query has been triggered within ChannelList by its channels pagination controller.
|
|
18
|
+
*/
|
|
11
19
|
channelsQueryState: ChannelsQueryState;
|
|
12
20
|
closeMobileNav: () => void;
|
|
13
21
|
getAppSettings: () => Promise<AppSettingsAPIResponse<StreamChatGenerics>> | null;
|
|
14
22
|
latestMessageDatesByChannels: Record<ChannelCID, Date>;
|
|
15
23
|
mutes: Array<Mute<StreamChatGenerics>>;
|
|
16
24
|
openMobileNav: () => void;
|
|
25
|
+
/**
|
|
26
|
+
* Sets active channel to be rendered within Channel component.
|
|
27
|
+
* @param newChannel
|
|
28
|
+
* @param watchers
|
|
29
|
+
* @param event
|
|
30
|
+
*/
|
|
17
31
|
setActiveChannel: (newChannel?: Channel<StreamChatGenerics>, watchers?: {
|
|
18
32
|
limit?: number;
|
|
19
33
|
offset?: number;
|
|
20
34
|
}, event?: React.BaseSyntheticEvent) => void;
|
|
35
|
+
/**
|
|
36
|
+
* Sets the list of Channel objects to be rendered by ChannelList component.
|
|
37
|
+
*/
|
|
38
|
+
setChannels: Dispatch<SetStateAction<Channel<StreamChatGenerics>[]>>;
|
|
39
|
+
/**
|
|
40
|
+
* Allows to opt out of the use of legacy CSS (version "1") and opt into the use of the latest SDK's CSS (version "2").
|
|
41
|
+
*/
|
|
21
42
|
themeVersion: ThemeVersion;
|
|
22
43
|
useImageFlagEmojisOnWindows: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Active channel used to render the contents of the Channel component.
|
|
46
|
+
*/
|
|
23
47
|
channel?: Channel<StreamChatGenerics>;
|
|
48
|
+
/**
|
|
49
|
+
* Object through which custom classes can be set for main container components of the SDK.
|
|
50
|
+
*/
|
|
24
51
|
customClasses?: CustomClasses;
|
|
25
52
|
navOpen?: boolean;
|
|
26
53
|
} & Required<Pick<ChatProps<StreamChatGenerics>, 'theme' | 'client'>>;
|
|
@@ -35,7 +62,7 @@ export declare const useChatContext: <StreamChatGenerics extends DefaultStreamCh
|
|
|
35
62
|
* wrapped component must be provided as the first generic.
|
|
36
63
|
*/
|
|
37
64
|
export declare const withChatContext: <P extends UnknownType, StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(Component: React.ComponentType<P>) => {
|
|
38
|
-
(props: Omit<P, "channel" | "client" | "mutes" | "navOpen" | "latestMessageDatesByChannels" | "theme" | "channelsQueryState" | "closeMobileNav" | "customClasses" | "getAppSettings" | "openMobileNav" | "setActiveChannel" | "themeVersion" | "useImageFlagEmojisOnWindows">): JSX.Element;
|
|
65
|
+
(props: Omit<P, "channel" | "client" | "mutes" | "channels" | "setChannels" | "navOpen" | "latestMessageDatesByChannels" | "theme" | "channelsQueryState" | "closeMobileNav" | "customClasses" | "getAppSettings" | "openMobileNav" | "setActiveChannel" | "themeVersion" | "useImageFlagEmojisOnWindows">): JSX.Element;
|
|
39
66
|
displayName: string;
|
|
40
67
|
};
|
|
41
68
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatContext.d.ts","sourceRoot":"","sources":["../../src/context/ChatContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAc,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatContext.d.ts","sourceRoot":"","sources":["../../src/context/ChatContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,iBAAiB,EAAE,cAAc,EAAc,MAAM,OAAO,CAAC;AAEvF,OAAO,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAGzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,yBAAyB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEzF,aAAK,UAAU,GACX,MAAM,GACN,eAAe,GACf,SAAS,GACT,aAAa,GACb,SAAS,GACT,aAAa,GACb,QAAQ,GACR,YAAY,GACZ,gBAAgB,GAChB,wBAAwB,CAAC;AAE7B,oBAAY,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;AAEhE,aAAK,UAAU,GAAG,MAAM,CAAC;AAEzB,oBAAY,YAAY,GAAG,GAAG,GAAG,GAAG,CAAC;AAErC,oBAAY,gBAAgB,CAC1B,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF;;;OAGG;IACH,QAAQ,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;IACxC;;OAEG;IACH,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,OAAO,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC,GAAG,IAAI,CAAC;IACjF,4BAA4B,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACvD,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACvC,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B;;;;;OAKG;IACH,gBAAgB,EAAE,CAChB,UAAU,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,EACxC,QAAQ,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,EAC9C,KAAK,CAAC,EAAE,KAAK,CAAC,kBAAkB,KAC7B,IAAI,CAAC;IACV;;OAEG;IACH,WAAW,EAAE,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC;IACrE;;OAEG;IACH,YAAY,EAAE,YAAY,CAAC;IAC3B,2BAA2B,EAAE,OAAO,CAAC;IACrC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACtC;;OAEG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC;AAEtE,eAAO,MAAM,WAAW,wEAA+D,CAAC;AAExF,eAAO,MAAM,YAAY;;kBAWxB,CAAC;AAEF,eAAO,MAAM,cAAc,qGAGT,MAAM,yCAavB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;CAa3B,CAAC"}
|
package/dist/index.cjs.js
CHANGED
|
@@ -34217,8 +34217,7 @@ var RECOVER_LOADED_CHANNELS_THROTTLE_INTERVAL_IN_MS = 5000;
|
|
|
34217
34217
|
var MIN_RECOVER_LOADED_CHANNELS_THROTTLE_INTERVAL_IN_MS = 2000;
|
|
34218
34218
|
var usePaginatedChannels = function (client, filters, sort, options, activeChannelHandler, recoveryThrottleIntervalMs) {
|
|
34219
34219
|
if (recoveryThrottleIntervalMs === void 0) { recoveryThrottleIntervalMs = RECOVER_LOADED_CHANNELS_THROTTLE_INTERVAL_IN_MS; }
|
|
34220
|
-
var _a = useChatContext('usePaginatedChannels').channelsQueryState, error =
|
|
34221
|
-
var _b = React.useState([]), channels = _b[0], setChannels = _b[1];
|
|
34220
|
+
var _a = useChatContext('usePaginatedChannels'), channels = _a.channels, _b = _a.channelsQueryState, error = _b.error, setError = _b.setError, setQueryInProgress = _b.setQueryInProgress, setChannels = _a.setChannels;
|
|
34222
34221
|
var _c = React.useState(true), hasNextPage = _c[0], setHasNextPage = _c[1];
|
|
34223
34222
|
var lastRecoveryTimestamp = React.useRef();
|
|
34224
34223
|
var recoveryThrottleInterval = recoveryThrottleIntervalMs < MIN_RECOVER_LOADED_CHANNELS_THROTTLE_INTERVAL_IN_MS
|
|
@@ -34298,6 +34297,7 @@ var usePaginatedChannels = function (client, filters, sort, options, activeChann
|
|
|
34298
34297
|
React.useEffect(function () {
|
|
34299
34298
|
queryChannels('reload');
|
|
34300
34299
|
}, [filterString, sortString]);
|
|
34300
|
+
// FIXME: state refactor (breaking change) is needed - do not forward `channels` and `setChannel`
|
|
34301
34301
|
return {
|
|
34302
34302
|
channels: channels,
|
|
34303
34303
|
hasNextPage: hasNextPage,
|
|
@@ -35052,7 +35052,7 @@ var UnMemoizedChannelList = function (props) {
|
|
|
35052
35052
|
*/
|
|
35053
35053
|
var ChannelList = React__default["default"].memo(UnMemoizedChannelList);
|
|
35054
35054
|
|
|
35055
|
-
var version = '10.
|
|
35055
|
+
var version = '10.18.0';
|
|
35056
35056
|
|
|
35057
35057
|
var useChat = function (_a) {
|
|
35058
35058
|
var _b, _c;
|
|
@@ -35062,10 +35062,11 @@ var useChat = function (_a) {
|
|
|
35062
35062
|
tDateTimeParser: defaultDateTimeParser,
|
|
35063
35063
|
userLanguage: 'en',
|
|
35064
35064
|
}), translators = _e[0], setTranslators = _e[1];
|
|
35065
|
-
var _f = React.useState(),
|
|
35066
|
-
var _g = React.useState(
|
|
35067
|
-
var _h = React.useState(
|
|
35068
|
-
var _j = React.useState(
|
|
35065
|
+
var _f = React.useState([]), channels = _f[0], setChannels = _f[1];
|
|
35066
|
+
var _g = React.useState(), channel = _g[0], setChannel = _g[1];
|
|
35067
|
+
var _h = React.useState([]), mutes = _h[0], setMutes = _h[1];
|
|
35068
|
+
var _j = React.useState(initialNavOpen), navOpen = _j[0], setNavOpen = _j[1];
|
|
35069
|
+
var _k = React.useState({}), latestMessageDatesByChannels = _k[0], setLatestMessageDatesByChannels = _k[1];
|
|
35069
35070
|
var clientMutes = ((_b = client.user) === null || _b === void 0 ? void 0 : _b.mutes) || [];
|
|
35070
35071
|
var closeMobileNav = function () { return setNavOpen(false); };
|
|
35071
35072
|
var openMobileNav = function () { return setTimeout(function () { return setNavOpen(true); }, 100); };
|
|
@@ -35136,6 +35137,7 @@ var useChat = function (_a) {
|
|
|
35136
35137
|
}, [(_c = client.user) === null || _c === void 0 ? void 0 : _c.id]);
|
|
35137
35138
|
return {
|
|
35138
35139
|
channel: channel,
|
|
35140
|
+
channels: channels,
|
|
35139
35141
|
closeMobileNav: closeMobileNav,
|
|
35140
35142
|
getAppSettings: getAppSettings,
|
|
35141
35143
|
latestMessageDatesByChannels: latestMessageDatesByChannels,
|
|
@@ -35143,13 +35145,14 @@ var useChat = function (_a) {
|
|
|
35143
35145
|
navOpen: navOpen,
|
|
35144
35146
|
openMobileNav: openMobileNav,
|
|
35145
35147
|
setActiveChannel: setActiveChannel,
|
|
35148
|
+
setChannels: setChannels,
|
|
35146
35149
|
translators: translators,
|
|
35147
35150
|
};
|
|
35148
35151
|
};
|
|
35149
35152
|
|
|
35150
35153
|
var useCreateChatContext = function (value) {
|
|
35151
35154
|
var _a;
|
|
35152
|
-
var channel = value.channel, channelsQueryState = value.channelsQueryState, client = value.client, closeMobileNav = value.closeMobileNav, customClasses = value.customClasses, getAppSettings = value.getAppSettings, latestMessageDatesByChannels = value.latestMessageDatesByChannels, mutes = value.mutes, navOpen = value.navOpen, openMobileNav = value.openMobileNav, setActiveChannel = value.setActiveChannel, theme = value.theme, themeVersion = value.themeVersion, useImageFlagEmojisOnWindows = value.useImageFlagEmojisOnWindows;
|
|
35155
|
+
var channel = value.channel, channels = value.channels, channelsQueryState = value.channelsQueryState, client = value.client, closeMobileNav = value.closeMobileNav, customClasses = value.customClasses, getAppSettings = value.getAppSettings, latestMessageDatesByChannels = value.latestMessageDatesByChannels, mutes = value.mutes, navOpen = value.navOpen, openMobileNav = value.openMobileNav, setActiveChannel = value.setActiveChannel, setChannels = value.setChannels, theme = value.theme, themeVersion = value.themeVersion, useImageFlagEmojisOnWindows = value.useImageFlagEmojisOnWindows;
|
|
35153
35156
|
var channelCid = channel === null || channel === void 0 ? void 0 : channel.cid;
|
|
35154
35157
|
var channelsQueryError = channelsQueryState.error;
|
|
35155
35158
|
var channelsQueryInProgress = channelsQueryState.queryInProgress;
|
|
@@ -35157,6 +35160,7 @@ var useCreateChatContext = function (value) {
|
|
|
35157
35160
|
var mutedUsersLength = mutes.length;
|
|
35158
35161
|
var chatContext = React.useMemo(function () { return ({
|
|
35159
35162
|
channel: channel,
|
|
35163
|
+
channels: channels,
|
|
35160
35164
|
channelsQueryState: channelsQueryState,
|
|
35161
35165
|
client: client,
|
|
35162
35166
|
closeMobileNav: closeMobileNav,
|
|
@@ -35167,6 +35171,7 @@ var useCreateChatContext = function (value) {
|
|
|
35167
35171
|
navOpen: navOpen,
|
|
35168
35172
|
openMobileNav: openMobileNav,
|
|
35169
35173
|
setActiveChannel: setActiveChannel,
|
|
35174
|
+
setChannels: setChannels,
|
|
35170
35175
|
theme: theme,
|
|
35171
35176
|
themeVersion: themeVersion,
|
|
35172
35177
|
useImageFlagEmojisOnWindows: useImageFlagEmojisOnWindows,
|
|
@@ -35174,10 +35179,12 @@ var useCreateChatContext = function (value) {
|
|
|
35174
35179
|
channelCid,
|
|
35175
35180
|
channelsQueryError,
|
|
35176
35181
|
channelsQueryInProgress,
|
|
35182
|
+
channels,
|
|
35177
35183
|
clientValues,
|
|
35178
35184
|
getAppSettings,
|
|
35179
35185
|
mutedUsersLength,
|
|
35180
35186
|
navOpen,
|
|
35187
|
+
setChannels,
|
|
35181
35188
|
]);
|
|
35182
35189
|
return chatContext;
|
|
35183
35190
|
};
|
|
@@ -35236,7 +35243,7 @@ var useCustomStyles = function (customStyles) {
|
|
|
35236
35243
|
*/
|
|
35237
35244
|
var Chat = function (props) {
|
|
35238
35245
|
var children = props.children, client = props.client, customClasses = props.customClasses, customStyles = props.customStyles, _a = props.darkMode, darkMode = _a === void 0 ? false : _a, defaultLanguage = props.defaultLanguage, i18nInstance = props.i18nInstance, _b = props.initialNavOpen, initialNavOpen = _b === void 0 ? true : _b, _c = props.theme, theme = _c === void 0 ? 'messaging light' : _c, _d = props.useImageFlagEmojisOnWindows, useImageFlagEmojisOnWindows = _d === void 0 ? false : _d;
|
|
35239
|
-
var _e = useChat({ client: client, defaultLanguage: defaultLanguage, i18nInstance: i18nInstance, initialNavOpen: initialNavOpen }), channel = _e.channel, closeMobileNav = _e.closeMobileNav, getAppSettings = _e.getAppSettings, latestMessageDatesByChannels = _e.latestMessageDatesByChannels, mutes = _e.mutes, navOpen = _e.navOpen, openMobileNav = _e.openMobileNav, setActiveChannel = _e.setActiveChannel, translators = _e.translators;
|
|
35246
|
+
var _e = useChat({ client: client, defaultLanguage: defaultLanguage, i18nInstance: i18nInstance, initialNavOpen: initialNavOpen }), channel = _e.channel, channels = _e.channels, closeMobileNav = _e.closeMobileNav, getAppSettings = _e.getAppSettings, latestMessageDatesByChannels = _e.latestMessageDatesByChannels, mutes = _e.mutes, navOpen = _e.navOpen, openMobileNav = _e.openMobileNav, setActiveChannel = _e.setActiveChannel, setChannels = _e.setChannels, translators = _e.translators;
|
|
35240
35247
|
var channelsQueryState = useChannelsQueryState();
|
|
35241
35248
|
var themeVersion = typeof window !== 'undefined'
|
|
35242
35249
|
? (window
|
|
@@ -35247,6 +35254,7 @@ var Chat = function (props) {
|
|
|
35247
35254
|
useCustomStyles(darkMode ? darkModeTheme : customStyles);
|
|
35248
35255
|
var chatContextValue = useCreateChatContext({
|
|
35249
35256
|
channel: channel,
|
|
35257
|
+
channels: channels,
|
|
35250
35258
|
channelsQueryState: channelsQueryState,
|
|
35251
35259
|
client: client,
|
|
35252
35260
|
closeMobileNav: closeMobileNav,
|
|
@@ -35257,6 +35265,7 @@ var Chat = function (props) {
|
|
|
35257
35265
|
navOpen: navOpen,
|
|
35258
35266
|
openMobileNav: openMobileNav,
|
|
35259
35267
|
setActiveChannel: setActiveChannel,
|
|
35268
|
+
setChannels: setChannels,
|
|
35260
35269
|
theme: theme,
|
|
35261
35270
|
themeVersion: themeVersion,
|
|
35262
35271
|
useImageFlagEmojisOnWindows: useImageFlagEmojisOnWindows,
|