@sendbird/uikit-react-native 3.8.1 → 3.8.3

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.
@@ -45,14 +45,6 @@ const SendbirdUIKit = exports.SendbirdUIKit = Object.freeze({
45
45
  IMAGE_COMPRESSION: true
46
46
  }
47
47
  });
48
- const chatOmitKeys = ['appId', 'newInstance', 'modules', 'debugMode', 'appVersion', 'localCacheEnabled', 'useAsyncStorageStore', 'useMMKVStorageStore'];
49
- function sanitizeChatOptions(chatOptions) {
50
- const opts = {
51
- ...chatOptions
52
- };
53
- chatOmitKeys.forEach(key => delete opts[key]);
54
- return opts;
55
- }
56
48
  const SendbirdUIKitContainer = props => {
57
49
  const {
58
50
  children,
@@ -78,7 +70,7 @@ const SendbirdUIKitContainer = props => {
78
70
  const unsubscribes = (0, _react.useRef)([]);
79
71
  const [internalStorage] = (0, _react.useState)(() => new _InternalLocalCacheStorage.default(chatOptions.localCacheStorage));
80
72
  const [sdkInstance, setSdkInstance] = (0, _react.useState)(() => {
81
- const sendbird = initializeSendbird(appId, sanitizeChatOptions(chatOptions));
73
+ const sendbird = initializeSendbird(appId, chatOptions);
82
74
  unsubscribes.current = sendbird.unsubscribes;
83
75
  return sendbird.chatSDK;
84
76
  });
@@ -92,7 +84,7 @@ const SendbirdUIKitContainer = props => {
92
84
  const voiceMessageStatusManager = (0, _react.useMemo)(() => new _VoiceMessageStatusManager.default(), []);
93
85
  (0, _react.useLayoutEffect)(() => {
94
86
  if (!isFirstMount) {
95
- const sendbird = initializeSendbird(appId, sanitizeChatOptions(chatOptions));
87
+ const sendbird = initializeSendbird(appId, chatOptions);
96
88
  setSdkInstance(sendbird.chatSDK);
97
89
  unsubscribes.current = sendbird.unsubscribes;
98
90
  }
@@ -187,13 +179,13 @@ const initializeSendbird = (appId, options) => {
187
179
  } = options;
188
180
  const isMMKVStorage = 'getString' in localCacheStorage;
189
181
  chatSDK = _chat.default.init({
190
- ...chatInitParams,
191
182
  appId,
192
183
  newInstance: true,
193
184
  modules: [new _groupChannel.GroupChannelModule(), new _openChannel.OpenChannelModule()],
194
185
  localCacheEnabled: true,
195
186
  useMMKVStorageStore: isMMKVStorage ? localCacheStorage : undefined,
196
- useAsyncStorageStore: !isMMKVStorage ? localCacheStorage : undefined
187
+ useAsyncStorageStore: !isMMKVStorage ? localCacheStorage : undefined,
188
+ ...chatInitParams
197
189
  });
198
190
  if (onInitialized) {
199
191
  chatSDK = onInitialized(chatSDK);
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeSafeAreaContext","_chat","_groupChannel","_openChannel","_uikitReactNativeFoundation","_uikitTools","_uikitUtils","_LocalizationCtx","_PlatformServiceCtx","_ReactionCtx","_SBUHandlersCtx","_SendbirdChatCtx","_UserProfileCtx","_EmojiManager","_interopRequireDefault","_ImageCompressionConfig","_InternalLocalCacheStorage","_MentionConfig","_MentionManager","_SBUUtils","_VoiceMessageConfig","_VoiceMessageStatusManager","_StringSet","_dynamicModule","_version","_InternalErrorBoundaryContainer","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","NetInfo","SBUDynamicModule","SendbirdUIKit","exports","freeze","VERSION","PLATFORM","Platform","OS","toLowerCase","DEFAULT","AUTO_PUSH_TOKEN_REGISTRATION","USE_USER_ID_FOR_NICKNAME","IMAGE_COMPRESSION","chatOmitKeys","sanitizeChatOptions","chatOptions","opts","forEach","key","SendbirdUIKitContainer","props","children","appId","uikitOptions","platformServices","localization","styles","errorBoundary","handlers","toast","userProfile","reaction","localCacheStorage","Error","Logger","warn","defaultStringSet","stringSet","StringSetEn","isFirstMount","useIsFirstMount","unsubscribes","useRef","internalStorage","useState","InternalLocalCacheStorage","sdkInstance","setSdkInstance","sendbird","initializeSendbird","current","chatSDK","imageCompressionConfig","voiceMessageConfig","mentionConfig","useConfigInstance","emojiManager","useMemo","EmojiManager","mentionManager","MentionManager","voiceMessageStatusManager","VoiceMessageStatusManager","useLayoutEffect","renderChildren","disabled","createElement","sbuHandlers","onOpenURL","SBUUtils","openURL","SBUHandlersProvider","SafeAreaProvider","UIKitConfigProvider","storage","localConfigs","common","groupChannel","channel","enableReactionsSupergroup","undefined","channelList","groupChannelList","setting","groupChannelSettings","openChannel","SendbirdChatProvider","enableAutoPushTokenRegistration","enableUseUserIdForNickname","enableImageCompression","LocalizationProvider","PlatformServiceProvider","fileService","file","notificationService","notification","clipboardService","clipboard","mediaService","media","playerService","player","recorderService","recorder","UIKitThemeProvider","theme","LightUIKitTheme","HeaderStyleProvider","HeaderComponent","Header","defaultTitleAlign","defaultHeaderTitleAlign","statusBarTranslucent","ToastProvider","dismissTimeout","UserProfileProvider","ReactionProvider","LocalizationContext","Consumer","value","STRINGS","DialogProvider","defaultLabels","alert","ok","DIALOG","ALERT_DEFAULT_OK","prompt","PROMPT_DEFAULT_OK","cancel","PROMPT_DEFAULT_CANCEL","placeholder","PROMPT_DEFAULT_PLACEHOLDER","options","onInitialized","chatInitParams","isMMKVStorage","SendbirdChat","init","newInstance","modules","GroupChannelModule","OpenChannelModule","localCacheEnabled","useMMKVStorageStore","useAsyncStorageStore","platform","getDeviceOSPlatform","deviceOSInfo","version","String","Version","customData","platform_version","getReactNativeVersion","uikitExtension","product","SendbirdProduct","UIKIT_CHAT","SendbirdPlatform","REACT_NATIVE","addSendbirdExtensions","addExtension","addEventListener","_chatSDK$setOnlineLis","_chatSDK","_chatSDK$setOfflineLi","_chatSDK2","NOOP","listener","callback","callbackType","callCount","unsubscribe","state","online","Boolean","isConnected","isInternetReachable","push","setOnlineListener","onOnline","setOfflineListener","onOffline","DeviceOsPlatform","ANDROID","IOS","WEB","WINDOWS","major","minor","patch","constants","reactNativeVersion","imageCompression","userMention","voiceMessage","_voiceMessage$recorde3","_voiceMessage$recorde4","MentionConfig","mentionLimit","MENTION_LIMIT","suggestionLimit","SUGGESTION_LIMIT","debounceMills","DEBOUNCE_MILLS","delimiter","DELIMITER","trigger","TRIGGER","ImageCompressionConfig","compressionRate","COMPRESSION_RATE","width","height","_voiceMessage$recorde","_voiceMessage$recorde2","VoiceMessageConfig","minDuration","RECORDER","MIN_DURATION","maxDuration","MAX_DURATION","_default"],"sources":["SendbirdUIKitContainer.tsx"],"sourcesContent":["import type { AsyncStorageStatic } from '@react-native-async-storage/async-storage';\nimport React, { useLayoutEffect, useMemo, useRef, useState } from 'react';\nimport { Platform } from 'react-native';\nimport type { MMKV } from 'react-native-mmkv';\nimport { SafeAreaProvider } from 'react-native-safe-area-context';\n\nimport SendbirdChat, { DeviceOsPlatform, SendbirdChatParams, SendbirdPlatform, SendbirdProduct } from '@sendbird/chat';\nimport { GroupChannelModule } from '@sendbird/chat/groupChannel';\nimport { OpenChannelModule } from '@sendbird/chat/openChannel';\nimport type { HeaderStyleContextType, UIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport {\n DialogProvider,\n Header,\n HeaderStyleProvider,\n LightUIKitTheme,\n ToastProvider,\n UIKitThemeProvider,\n} from '@sendbird/uikit-react-native-foundation';\nimport { SBUConfig, UIKitConfigProvider } from '@sendbird/uikit-tools';\nimport {\n Logger,\n NOOP,\n PartialDeep,\n SendbirdChatSDK,\n SendbirdGroupChannel,\n SendbirdGroupChannelCreateParams,\n SendbirdMember,\n SendbirdReactedUserInfo,\n SendbirdUser,\n useIsFirstMount,\n} from '@sendbird/uikit-utils';\n\nimport { LocalizationContext, LocalizationProvider } from '../contexts/LocalizationCtx';\nimport { PlatformServiceProvider } from '../contexts/PlatformServiceCtx';\nimport { ReactionProvider } from '../contexts/ReactionCtx';\nimport { type SBUHandlers, SBUHandlersProvider } from '../contexts/SBUHandlersCtx';\nimport type { ChatRelatedFeaturesInUIKit } from '../contexts/SendbirdChatCtx';\nimport { SendbirdChatProvider } from '../contexts/SendbirdChatCtx';\nimport { UserProfileProvider } from '../contexts/UserProfileCtx';\nimport EmojiManager from '../libs/EmojiManager';\nimport type { ImageCompressionConfigInterface } from '../libs/ImageCompressionConfig';\nimport ImageCompressionConfig from '../libs/ImageCompressionConfig';\nimport InternalLocalCacheStorage from '../libs/InternalLocalCacheStorage';\nimport MentionConfig, { MentionConfigInterface } from '../libs/MentionConfig';\nimport MentionManager from '../libs/MentionManager';\nimport SBUUtils from '../libs/SBUUtils';\nimport VoiceMessageConfig, { VoiceMessageConfigInterface } from '../libs/VoiceMessageConfig';\nimport VoiceMessageStatusManager from '../libs/VoiceMessageStatusManager';\nimport StringSetEn from '../localization/StringSet.en';\nimport type { StringSet } from '../localization/StringSet.type';\nimport SBUDynamicModule from '../platform/dynamicModule';\nimport type {\n ClipboardServiceInterface,\n FileServiceInterface,\n MediaServiceInterface,\n NotificationServiceInterface,\n PlayerServiceInterface,\n RecorderServiceInterface,\n} from '../platform/types';\nimport { ErrorBoundaryProps, LocalCacheStorage } from '../types';\nimport VERSION from '../version';\nimport InternalErrorBoundaryContainer from './InternalErrorBoundaryContainer';\n\nconst NetInfo = SBUDynamicModule.get('@react-native-community/netinfo', 'warn');\nexport const SendbirdUIKit = Object.freeze({\n VERSION,\n PLATFORM: Platform.OS.toLowerCase(),\n DEFAULT: {\n AUTO_PUSH_TOKEN_REGISTRATION: true,\n USE_USER_ID_FOR_NICKNAME: false,\n IMAGE_COMPRESSION: true,\n },\n});\n\nexport type ChatOmittedInitParams = Omit<\n SendbirdChatParams<[GroupChannelModule, OpenChannelModule]>,\n (typeof chatOmitKeys)[number]\n>;\n\nconst chatOmitKeys = [\n 'appId',\n 'newInstance',\n 'modules',\n 'debugMode',\n 'appVersion',\n 'localCacheEnabled',\n 'useAsyncStorageStore',\n 'useMMKVStorageStore',\n] as const;\nfunction sanitizeChatOptions<T extends Record<string, unknown>>(chatOptions: T): T {\n const opts = { ...chatOptions };\n chatOmitKeys.forEach((key) => delete opts[key]);\n return opts;\n}\nexport type SendbirdUIKitContainerProps = React.PropsWithChildren<{\n appId: string;\n platformServices: {\n file: FileServiceInterface;\n notification: NotificationServiceInterface;\n clipboard: ClipboardServiceInterface;\n media: MediaServiceInterface;\n player: PlayerServiceInterface;\n recorder: RecorderServiceInterface;\n };\n chatOptions: Partial<ChatOmittedInitParams> &\n Partial<ChatRelatedFeaturesInUIKit> & {\n onInitialized?: (sdkInstance: SendbirdChatSDK) => SendbirdChatSDK;\n localCacheStorage: LocalCacheStorage;\n };\n uikitOptions?: PartialDeep<{\n common: SBUConfig['common'];\n groupChannel: Omit<SBUConfig['groupChannel']['channel'], 'enableReactionsSupergroup'> & {\n /**\n * @deprecated Currently, this feature is turned off by default. If you wish to use this feature, contact us: {@link https://dashboard.sendbird.com/settings/contact_us?category=feedback_and_feature_requests&product=UIKit}\n */\n enableReactionsSupergroup: never;\n };\n groupChannelList: SBUConfig['groupChannel']['channelList'];\n groupChannelSettings: SBUConfig['groupChannel']['setting'];\n openChannel: SBUConfig['openChannel']['channel'];\n }>;\n localization?: {\n stringSet?: StringSet;\n };\n styles?: {\n theme?: UIKitTheme;\n statusBarTranslucent?: boolean;\n defaultHeaderTitleAlign?: 'left' | 'center';\n defaultHeaderHeight?: number;\n HeaderComponent?: HeaderStyleContextType['HeaderComponent'];\n };\n errorBoundary?: {\n disabled?: boolean;\n onError?: (props: ErrorBoundaryProps) => void;\n ErrorInfoComponent?: (props: ErrorBoundaryProps) => React.ReactNode;\n };\n handlers?: Partial<SBUHandlers>;\n toast?: {\n dismissTimeout?: number;\n };\n userProfile?: {\n onCreateChannel: (channel: SendbirdGroupChannel) => void;\n onBeforeCreateChannel?: (\n channelParams: SendbirdGroupChannelCreateParams,\n users: SendbirdUser[] | SendbirdMember[] | SendbirdReactedUserInfo[],\n ) => SendbirdGroupChannelCreateParams | Promise<SendbirdGroupChannelCreateParams>;\n };\n reaction?: {\n onPressUserProfile?: (user: SendbirdReactedUserInfo) => void;\n };\n userMention?: Pick<Partial<MentionConfigInterface>, 'mentionLimit' | 'suggestionLimit' | 'debounceMills'>;\n imageCompression?: Partial<ImageCompressionConfigInterface>;\n voiceMessage?: PartialDeep<VoiceMessageConfigInterface>;\n}>;\n\nconst SendbirdUIKitContainer = (props: SendbirdUIKitContainerProps) => {\n const {\n children,\n appId,\n chatOptions,\n uikitOptions,\n platformServices,\n localization,\n styles,\n errorBoundary,\n handlers,\n toast,\n userProfile,\n reaction,\n } = props;\n\n if (!chatOptions.localCacheStorage) {\n throw new Error('SendbirdUIKitContainer: chatOptions.localCacheStorage is required');\n } else if ('getItem' in chatOptions.localCacheStorage) {\n Logger.warn(\n 'SendbirdUIKitContainer: localCacheStorage for `AsyncStorage` is deprecated. Please use `MMKV` instead.',\n );\n }\n\n const defaultStringSet = localization?.stringSet ?? StringSetEn;\n\n const isFirstMount = useIsFirstMount();\n const unsubscribes = useRef<Array<() => void>>([]);\n\n const [internalStorage] = useState(() => new InternalLocalCacheStorage(chatOptions.localCacheStorage));\n const [sdkInstance, setSdkInstance] = useState<SendbirdChatSDK>(() => {\n const sendbird = initializeSendbird(appId, sanitizeChatOptions(chatOptions));\n unsubscribes.current = sendbird.unsubscribes;\n return sendbird.chatSDK;\n });\n\n const { imageCompressionConfig, voiceMessageConfig, mentionConfig } = useConfigInstance(props);\n const emojiManager = useMemo(() => new EmojiManager(internalStorage), [internalStorage]);\n const mentionManager = useMemo(() => new MentionManager(mentionConfig), [mentionConfig]);\n const voiceMessageStatusManager = useMemo(() => new VoiceMessageStatusManager(), []);\n\n useLayoutEffect(() => {\n if (!isFirstMount) {\n const sendbird = initializeSendbird(appId, sanitizeChatOptions(chatOptions));\n setSdkInstance(sendbird.chatSDK);\n unsubscribes.current = sendbird.unsubscribes;\n }\n\n return () => {\n unsubscribes.current.forEach((u) => {\n try {\n u();\n } catch {}\n });\n };\n }, [appId, internalStorage]);\n\n const renderChildren = () => {\n if (errorBoundary?.disabled) {\n return children;\n } else {\n return <InternalErrorBoundaryContainer {...errorBoundary}>{children}</InternalErrorBoundaryContainer>;\n }\n };\n\n const sbuHandlers: SBUHandlers = {\n onOpenURL: SBUUtils.openURL,\n ...handlers,\n };\n\n return (\n <SBUHandlersProvider {...sbuHandlers}>\n <SafeAreaProvider>\n <UIKitConfigProvider\n storage={internalStorage}\n localConfigs={{\n common: uikitOptions?.common,\n groupChannel: {\n channel: { ...uikitOptions?.groupChannel, enableReactionsSupergroup: undefined },\n channelList: uikitOptions?.groupChannelList,\n setting: uikitOptions?.groupChannelSettings,\n },\n openChannel: {\n channel: uikitOptions?.openChannel,\n },\n }}\n >\n <SendbirdChatProvider\n sdkInstance={sdkInstance}\n emojiManager={emojiManager}\n mentionManager={mentionManager}\n imageCompressionConfig={imageCompressionConfig}\n voiceMessageConfig={voiceMessageConfig}\n voiceMessageStatusManager={voiceMessageStatusManager}\n enableAutoPushTokenRegistration={\n chatOptions.enableAutoPushTokenRegistration ?? SendbirdUIKit.DEFAULT.AUTO_PUSH_TOKEN_REGISTRATION\n }\n enableUseUserIdForNickname={\n chatOptions.enableUseUserIdForNickname ?? SendbirdUIKit.DEFAULT.USE_USER_ID_FOR_NICKNAME\n }\n enableImageCompression={chatOptions.enableImageCompression ?? SendbirdUIKit.DEFAULT.IMAGE_COMPRESSION}\n >\n <LocalizationProvider stringSet={defaultStringSet}>\n <PlatformServiceProvider\n fileService={platformServices.file}\n notificationService={platformServices.notification}\n clipboardService={platformServices.clipboard}\n mediaService={platformServices.media}\n playerService={platformServices.player}\n recorderService={platformServices.recorder}\n voiceMessageConfig={voiceMessageConfig}\n >\n <UIKitThemeProvider theme={styles?.theme ?? LightUIKitTheme}>\n <HeaderStyleProvider\n HeaderComponent={styles?.HeaderComponent ?? Header}\n defaultTitleAlign={styles?.defaultHeaderTitleAlign ?? 'left'}\n statusBarTranslucent={styles?.statusBarTranslucent ?? true}\n >\n <ToastProvider dismissTimeout={toast?.dismissTimeout}>\n <UserProfileProvider {...userProfile} statusBarTranslucent={styles?.statusBarTranslucent ?? true}>\n <ReactionProvider {...reaction}>\n <LocalizationContext.Consumer>\n {(value) => {\n const STRINGS = value?.STRINGS || defaultStringSet;\n return (\n <DialogProvider\n defaultLabels={{\n alert: { ok: STRINGS.DIALOG.ALERT_DEFAULT_OK },\n prompt: {\n ok: STRINGS.DIALOG.PROMPT_DEFAULT_OK,\n cancel: STRINGS.DIALOG.PROMPT_DEFAULT_CANCEL,\n placeholder: STRINGS.DIALOG.PROMPT_DEFAULT_PLACEHOLDER,\n },\n }}\n >\n {renderChildren()}\n </DialogProvider>\n );\n }}\n </LocalizationContext.Consumer>\n </ReactionProvider>\n </UserProfileProvider>\n </ToastProvider>\n </HeaderStyleProvider>\n </UIKitThemeProvider>\n </PlatformServiceProvider>\n </LocalizationProvider>\n </SendbirdChatProvider>\n </UIKitConfigProvider>\n </SafeAreaProvider>\n </SBUHandlersProvider>\n );\n};\n\ninterface InitOptions extends ChatOmittedInitParams {\n localCacheStorage: LocalCacheStorage;\n onInitialized?: (sdk: SendbirdChatSDK) => SendbirdChatSDK;\n}\nconst initializeSendbird = (appId: string, options: InitOptions) => {\n let chatSDK: SendbirdChatSDK;\n const unsubscribes: Array<() => void> = [];\n const { localCacheStorage, onInitialized, ...chatInitParams } = options;\n\n const isMMKVStorage = 'getString' in localCacheStorage;\n chatSDK = SendbirdChat.init({\n ...chatInitParams,\n appId,\n newInstance: true,\n modules: [new GroupChannelModule(), new OpenChannelModule()],\n localCacheEnabled: true,\n useMMKVStorageStore: isMMKVStorage ? (localCacheStorage as MMKV) : undefined,\n useAsyncStorageStore: !isMMKVStorage ? (localCacheStorage as AsyncStorageStatic) : undefined,\n });\n\n if (onInitialized) {\n chatSDK = onInitialized(chatSDK);\n }\n\n const platform = getDeviceOSPlatform();\n if (SendbirdUIKit.VERSION && platform) {\n const deviceOSInfo = { platform, version: String(Platform.Version) };\n const customData = { platform_version: getReactNativeVersion() };\n const uikitExtension = {\n product: SendbirdProduct.UIKIT_CHAT,\n version: SendbirdUIKit.VERSION,\n platform: SendbirdPlatform.REACT_NATIVE,\n };\n\n chatSDK.addSendbirdExtensions([uikitExtension], deviceOSInfo, customData);\n chatSDK.addExtension('sb_uikit', SendbirdUIKit.VERSION);\n }\n\n if (SendbirdUIKit.PLATFORM) {\n chatSDK.addExtension('device-os-platform', SendbirdUIKit.PLATFORM);\n }\n\n if (NetInfo?.addEventListener) {\n try {\n // NOTE: For removing buggy behavior of NetInfo.addEventListener\n // When you first add an event listener, it is assumed that the initialization of the internal event detector is done simultaneously.\n // In other words, when you call the first event listener two events are triggered immediately\n // - the one that is called when adding the event listener\n // - and the internal initialization event\n NetInfo.addEventListener(NOOP)();\n } catch {}\n\n const listener = (callback: () => void, callbackType: 'online' | 'offline') => {\n let callCount = 0;\n const unsubscribe = NetInfo.addEventListener((state) => {\n const online = Boolean(state.isConnected) || Boolean(state.isInternetReachable);\n\n // NOTE: When NetInfo.addEventListener is called\n // the event is immediately triggered regardless of whether the event actually occurred.\n // This is why it filters the first event.\n if (callCount === 0) {\n callCount++;\n return;\n }\n\n if (online && callbackType === 'online') callback();\n if (!online && callbackType === 'offline') callback();\n });\n unsubscribes.push(unsubscribe);\n return unsubscribe;\n };\n chatSDK.setOnlineListener?.((onOnline) => listener(onOnline, 'online'));\n chatSDK.setOfflineListener?.((onOffline) => listener(onOffline, 'offline'));\n }\n return { chatSDK, unsubscribes };\n};\n\nfunction getDeviceOSPlatform() {\n switch (Platform.OS) {\n case 'android':\n return DeviceOsPlatform.ANDROID;\n case 'ios':\n return DeviceOsPlatform.IOS;\n case 'web':\n return DeviceOsPlatform.WEB;\n case 'windows':\n return DeviceOsPlatform.WINDOWS;\n default:\n return undefined;\n }\n}\n\nfunction getReactNativeVersion() {\n const { major, minor, patch } = Platform.constants.reactNativeVersion;\n return `${major}.${minor}.${patch}`;\n}\n\nconst useConfigInstance = ({ imageCompression, userMention, voiceMessage }: SendbirdUIKitContainerProps) => {\n const mentionConfig = useMemo(() => {\n return new MentionConfig({\n mentionLimit: userMention?.mentionLimit || MentionConfig.DEFAULT.MENTION_LIMIT,\n suggestionLimit: userMention?.suggestionLimit || MentionConfig.DEFAULT.SUGGESTION_LIMIT,\n debounceMills: userMention?.debounceMills ?? MentionConfig.DEFAULT.DEBOUNCE_MILLS,\n delimiter: MentionConfig.DEFAULT.DELIMITER,\n trigger: MentionConfig.DEFAULT.TRIGGER,\n });\n }, [userMention?.mentionLimit, userMention?.suggestionLimit, userMention?.debounceMills]);\n\n const imageCompressionConfig = useMemo(() => {\n return new ImageCompressionConfig({\n compressionRate: imageCompression?.compressionRate || ImageCompressionConfig.DEFAULT.COMPRESSION_RATE,\n width: imageCompression?.width,\n height: imageCompression?.height,\n });\n }, [imageCompression?.compressionRate, imageCompression?.width, imageCompression?.height]);\n\n const voiceMessageConfig = useMemo(() => {\n return new VoiceMessageConfig({\n recorder: {\n minDuration: voiceMessage?.recorder?.minDuration ?? VoiceMessageConfig.DEFAULT.RECORDER.MIN_DURATION,\n maxDuration: voiceMessage?.recorder?.maxDuration ?? VoiceMessageConfig.DEFAULT.RECORDER.MAX_DURATION,\n },\n });\n }, [voiceMessage?.recorder?.minDuration, voiceMessage?.recorder?.maxDuration]);\n\n return {\n mentionConfig,\n imageCompressionConfig,\n voiceMessageConfig,\n };\n};\n\nexport default SendbirdUIKitContainer;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeSafeAreaContext","_chat","_groupChannel","_openChannel","_uikitReactNativeFoundation","_uikitTools","_uikitUtils","_LocalizationCtx","_PlatformServiceCtx","_ReactionCtx","_SBUHandlersCtx","_SendbirdChatCtx","_UserProfileCtx","_EmojiManager","_interopRequireDefault","_ImageCompressionConfig","_InternalLocalCacheStorage","_MentionConfig","_MentionManager","_SBUUtils","_VoiceMessageConfig","_VoiceMessageStatusManager","_StringSet","_dynamicModule","_version","_InternalErrorBoundaryContainer","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","NetInfo","SBUDynamicModule","SendbirdUIKit","exports","freeze","VERSION","PLATFORM","Platform","OS","toLowerCase","DEFAULT","AUTO_PUSH_TOKEN_REGISTRATION","USE_USER_ID_FOR_NICKNAME","IMAGE_COMPRESSION","SendbirdUIKitContainer","props","children","appId","chatOptions","uikitOptions","platformServices","localization","styles","errorBoundary","handlers","toast","userProfile","reaction","localCacheStorage","Error","Logger","warn","defaultStringSet","stringSet","StringSetEn","isFirstMount","useIsFirstMount","unsubscribes","useRef","internalStorage","useState","InternalLocalCacheStorage","sdkInstance","setSdkInstance","sendbird","initializeSendbird","current","chatSDK","imageCompressionConfig","voiceMessageConfig","mentionConfig","useConfigInstance","emojiManager","useMemo","EmojiManager","mentionManager","MentionManager","voiceMessageStatusManager","VoiceMessageStatusManager","useLayoutEffect","forEach","renderChildren","disabled","createElement","sbuHandlers","onOpenURL","SBUUtils","openURL","SBUHandlersProvider","SafeAreaProvider","UIKitConfigProvider","storage","localConfigs","common","groupChannel","channel","enableReactionsSupergroup","undefined","channelList","groupChannelList","setting","groupChannelSettings","openChannel","SendbirdChatProvider","enableAutoPushTokenRegistration","enableUseUserIdForNickname","enableImageCompression","LocalizationProvider","PlatformServiceProvider","fileService","file","notificationService","notification","clipboardService","clipboard","mediaService","media","playerService","player","recorderService","recorder","UIKitThemeProvider","theme","LightUIKitTheme","HeaderStyleProvider","HeaderComponent","Header","defaultTitleAlign","defaultHeaderTitleAlign","statusBarTranslucent","ToastProvider","dismissTimeout","UserProfileProvider","ReactionProvider","LocalizationContext","Consumer","value","STRINGS","DialogProvider","defaultLabels","alert","ok","DIALOG","ALERT_DEFAULT_OK","prompt","PROMPT_DEFAULT_OK","cancel","PROMPT_DEFAULT_CANCEL","placeholder","PROMPT_DEFAULT_PLACEHOLDER","options","onInitialized","chatInitParams","isMMKVStorage","SendbirdChat","init","newInstance","modules","GroupChannelModule","OpenChannelModule","localCacheEnabled","useMMKVStorageStore","useAsyncStorageStore","platform","getDeviceOSPlatform","deviceOSInfo","version","String","Version","customData","platform_version","getReactNativeVersion","uikitExtension","product","SendbirdProduct","UIKIT_CHAT","SendbirdPlatform","REACT_NATIVE","addSendbirdExtensions","addExtension","addEventListener","_chatSDK$setOnlineLis","_chatSDK","_chatSDK$setOfflineLi","_chatSDK2","NOOP","listener","callback","callbackType","callCount","unsubscribe","state","online","Boolean","isConnected","isInternetReachable","push","setOnlineListener","onOnline","setOfflineListener","onOffline","DeviceOsPlatform","ANDROID","IOS","WEB","WINDOWS","major","minor","patch","constants","reactNativeVersion","imageCompression","userMention","voiceMessage","_voiceMessage$recorde3","_voiceMessage$recorde4","MentionConfig","mentionLimit","MENTION_LIMIT","suggestionLimit","SUGGESTION_LIMIT","debounceMills","DEBOUNCE_MILLS","delimiter","DELIMITER","trigger","TRIGGER","ImageCompressionConfig","compressionRate","COMPRESSION_RATE","width","height","_voiceMessage$recorde","_voiceMessage$recorde2","VoiceMessageConfig","minDuration","RECORDER","MIN_DURATION","maxDuration","MAX_DURATION","_default"],"sources":["SendbirdUIKitContainer.tsx"],"sourcesContent":["import type { AsyncStorageStatic } from '@react-native-async-storage/async-storage';\nimport React, { useLayoutEffect, useMemo, useRef, useState } from 'react';\nimport { Platform } from 'react-native';\nimport type { MMKV } from 'react-native-mmkv';\nimport { SafeAreaProvider } from 'react-native-safe-area-context';\n\nimport SendbirdChat, { DeviceOsPlatform, SendbirdChatParams, SendbirdPlatform, SendbirdProduct } from '@sendbird/chat';\nimport { GroupChannelModule } from '@sendbird/chat/groupChannel';\nimport { OpenChannelModule } from '@sendbird/chat/openChannel';\nimport type { HeaderStyleContextType, UIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport {\n DialogProvider,\n Header,\n HeaderStyleProvider,\n LightUIKitTheme,\n ToastProvider,\n UIKitThemeProvider,\n} from '@sendbird/uikit-react-native-foundation';\nimport { SBUConfig, UIKitConfigProvider } from '@sendbird/uikit-tools';\nimport {\n Logger,\n NOOP,\n PartialDeep,\n SendbirdChatSDK,\n SendbirdGroupChannel,\n SendbirdGroupChannelCreateParams,\n SendbirdMember,\n SendbirdReactedUserInfo,\n SendbirdUser,\n useIsFirstMount,\n} from '@sendbird/uikit-utils';\n\nimport { LocalizationContext, LocalizationProvider } from '../contexts/LocalizationCtx';\nimport { PlatformServiceProvider } from '../contexts/PlatformServiceCtx';\nimport { ReactionProvider } from '../contexts/ReactionCtx';\nimport { type SBUHandlers, SBUHandlersProvider } from '../contexts/SBUHandlersCtx';\nimport type { ChatRelatedFeaturesInUIKit } from '../contexts/SendbirdChatCtx';\nimport { SendbirdChatProvider } from '../contexts/SendbirdChatCtx';\nimport { UserProfileProvider } from '../contexts/UserProfileCtx';\nimport EmojiManager from '../libs/EmojiManager';\nimport type { ImageCompressionConfigInterface } from '../libs/ImageCompressionConfig';\nimport ImageCompressionConfig from '../libs/ImageCompressionConfig';\nimport InternalLocalCacheStorage from '../libs/InternalLocalCacheStorage';\nimport MentionConfig, { MentionConfigInterface } from '../libs/MentionConfig';\nimport MentionManager from '../libs/MentionManager';\nimport SBUUtils from '../libs/SBUUtils';\nimport VoiceMessageConfig, { VoiceMessageConfigInterface } from '../libs/VoiceMessageConfig';\nimport VoiceMessageStatusManager from '../libs/VoiceMessageStatusManager';\nimport StringSetEn from '../localization/StringSet.en';\nimport type { StringSet } from '../localization/StringSet.type';\nimport SBUDynamicModule from '../platform/dynamicModule';\nimport type {\n ClipboardServiceInterface,\n FileServiceInterface,\n MediaServiceInterface,\n NotificationServiceInterface,\n PlayerServiceInterface,\n RecorderServiceInterface,\n} from '../platform/types';\nimport { ErrorBoundaryProps, LocalCacheStorage } from '../types';\nimport VERSION from '../version';\nimport InternalErrorBoundaryContainer from './InternalErrorBoundaryContainer';\n\nconst NetInfo = SBUDynamicModule.get('@react-native-community/netinfo', 'warn');\nexport const SendbirdUIKit = Object.freeze({\n VERSION,\n PLATFORM: Platform.OS.toLowerCase(),\n DEFAULT: {\n AUTO_PUSH_TOKEN_REGISTRATION: true,\n USE_USER_ID_FOR_NICKNAME: false,\n IMAGE_COMPRESSION: true,\n },\n});\n\nexport type ChatOmittedInitParams = SendbirdChatParams<[GroupChannelModule, OpenChannelModule]>;\n\nexport type SendbirdUIKitContainerProps = React.PropsWithChildren<{\n appId: string;\n platformServices: {\n file: FileServiceInterface;\n notification: NotificationServiceInterface;\n clipboard: ClipboardServiceInterface;\n media: MediaServiceInterface;\n player: PlayerServiceInterface;\n recorder: RecorderServiceInterface;\n };\n chatOptions: Partial<ChatOmittedInitParams> &\n Partial<ChatRelatedFeaturesInUIKit> & {\n onInitialized?: (sdkInstance: SendbirdChatSDK) => SendbirdChatSDK;\n localCacheStorage: LocalCacheStorage;\n };\n uikitOptions?: PartialDeep<{\n common: SBUConfig['common'];\n groupChannel: Omit<SBUConfig['groupChannel']['channel'], 'enableReactionsSupergroup'> & {\n /**\n * @deprecated Currently, this feature is turned off by default. If you wish to use this feature, contact us: {@link https://dashboard.sendbird.com/settings/contact_us?category=feedback_and_feature_requests&product=UIKit}\n */\n enableReactionsSupergroup: never;\n };\n groupChannelList: SBUConfig['groupChannel']['channelList'];\n groupChannelSettings: SBUConfig['groupChannel']['setting'];\n openChannel: SBUConfig['openChannel']['channel'];\n }>;\n localization?: {\n stringSet?: StringSet;\n };\n styles?: {\n theme?: UIKitTheme;\n statusBarTranslucent?: boolean;\n defaultHeaderTitleAlign?: 'left' | 'center';\n defaultHeaderHeight?: number;\n HeaderComponent?: HeaderStyleContextType['HeaderComponent'];\n };\n errorBoundary?: {\n disabled?: boolean;\n onError?: (props: ErrorBoundaryProps) => void;\n ErrorInfoComponent?: (props: ErrorBoundaryProps) => React.ReactNode;\n };\n handlers?: Partial<SBUHandlers>;\n toast?: {\n dismissTimeout?: number;\n };\n userProfile?: {\n onCreateChannel: (channel: SendbirdGroupChannel) => void;\n onBeforeCreateChannel?: (\n channelParams: SendbirdGroupChannelCreateParams,\n users: SendbirdUser[] | SendbirdMember[] | SendbirdReactedUserInfo[],\n ) => SendbirdGroupChannelCreateParams | Promise<SendbirdGroupChannelCreateParams>;\n };\n reaction?: {\n onPressUserProfile?: (user: SendbirdReactedUserInfo) => void;\n };\n userMention?: Pick<Partial<MentionConfigInterface>, 'mentionLimit' | 'suggestionLimit' | 'debounceMills'>;\n imageCompression?: Partial<ImageCompressionConfigInterface>;\n voiceMessage?: PartialDeep<VoiceMessageConfigInterface>;\n}>;\n\nconst SendbirdUIKitContainer = (props: SendbirdUIKitContainerProps) => {\n const {\n children,\n appId,\n chatOptions,\n uikitOptions,\n platformServices,\n localization,\n styles,\n errorBoundary,\n handlers,\n toast,\n userProfile,\n reaction,\n } = props;\n\n if (!chatOptions.localCacheStorage) {\n throw new Error('SendbirdUIKitContainer: chatOptions.localCacheStorage is required');\n } else if ('getItem' in chatOptions.localCacheStorage) {\n Logger.warn(\n 'SendbirdUIKitContainer: localCacheStorage for `AsyncStorage` is deprecated. Please use `MMKV` instead.',\n );\n }\n\n const defaultStringSet = localization?.stringSet ?? StringSetEn;\n\n const isFirstMount = useIsFirstMount();\n const unsubscribes = useRef<Array<() => void>>([]);\n\n const [internalStorage] = useState(() => new InternalLocalCacheStorage(chatOptions.localCacheStorage));\n const [sdkInstance, setSdkInstance] = useState<SendbirdChatSDK>(() => {\n const sendbird = initializeSendbird(appId, chatOptions);\n unsubscribes.current = sendbird.unsubscribes;\n return sendbird.chatSDK;\n });\n\n const { imageCompressionConfig, voiceMessageConfig, mentionConfig } = useConfigInstance(props);\n const emojiManager = useMemo(() => new EmojiManager(internalStorage), [internalStorage]);\n const mentionManager = useMemo(() => new MentionManager(mentionConfig), [mentionConfig]);\n const voiceMessageStatusManager = useMemo(() => new VoiceMessageStatusManager(), []);\n\n useLayoutEffect(() => {\n if (!isFirstMount) {\n const sendbird = initializeSendbird(appId, chatOptions);\n setSdkInstance(sendbird.chatSDK);\n unsubscribes.current = sendbird.unsubscribes;\n }\n\n return () => {\n unsubscribes.current.forEach((u) => {\n try {\n u();\n } catch {}\n });\n };\n }, [appId, internalStorage]);\n\n const renderChildren = () => {\n if (errorBoundary?.disabled) {\n return children;\n } else {\n return <InternalErrorBoundaryContainer {...errorBoundary}>{children}</InternalErrorBoundaryContainer>;\n }\n };\n\n const sbuHandlers: SBUHandlers = {\n onOpenURL: SBUUtils.openURL,\n ...handlers,\n };\n\n return (\n <SBUHandlersProvider {...sbuHandlers}>\n <SafeAreaProvider>\n <UIKitConfigProvider\n storage={internalStorage}\n localConfigs={{\n common: uikitOptions?.common,\n groupChannel: {\n channel: { ...uikitOptions?.groupChannel, enableReactionsSupergroup: undefined },\n channelList: uikitOptions?.groupChannelList,\n setting: uikitOptions?.groupChannelSettings,\n },\n openChannel: {\n channel: uikitOptions?.openChannel,\n },\n }}\n >\n <SendbirdChatProvider\n sdkInstance={sdkInstance}\n emojiManager={emojiManager}\n mentionManager={mentionManager}\n imageCompressionConfig={imageCompressionConfig}\n voiceMessageConfig={voiceMessageConfig}\n voiceMessageStatusManager={voiceMessageStatusManager}\n enableAutoPushTokenRegistration={\n chatOptions.enableAutoPushTokenRegistration ?? SendbirdUIKit.DEFAULT.AUTO_PUSH_TOKEN_REGISTRATION\n }\n enableUseUserIdForNickname={\n chatOptions.enableUseUserIdForNickname ?? SendbirdUIKit.DEFAULT.USE_USER_ID_FOR_NICKNAME\n }\n enableImageCompression={chatOptions.enableImageCompression ?? SendbirdUIKit.DEFAULT.IMAGE_COMPRESSION}\n >\n <LocalizationProvider stringSet={defaultStringSet}>\n <PlatformServiceProvider\n fileService={platformServices.file}\n notificationService={platformServices.notification}\n clipboardService={platformServices.clipboard}\n mediaService={platformServices.media}\n playerService={platformServices.player}\n recorderService={platformServices.recorder}\n voiceMessageConfig={voiceMessageConfig}\n >\n <UIKitThemeProvider theme={styles?.theme ?? LightUIKitTheme}>\n <HeaderStyleProvider\n HeaderComponent={styles?.HeaderComponent ?? Header}\n defaultTitleAlign={styles?.defaultHeaderTitleAlign ?? 'left'}\n statusBarTranslucent={styles?.statusBarTranslucent ?? true}\n >\n <ToastProvider dismissTimeout={toast?.dismissTimeout}>\n <UserProfileProvider {...userProfile} statusBarTranslucent={styles?.statusBarTranslucent ?? true}>\n <ReactionProvider {...reaction}>\n <LocalizationContext.Consumer>\n {(value) => {\n const STRINGS = value?.STRINGS || defaultStringSet;\n return (\n <DialogProvider\n defaultLabels={{\n alert: { ok: STRINGS.DIALOG.ALERT_DEFAULT_OK },\n prompt: {\n ok: STRINGS.DIALOG.PROMPT_DEFAULT_OK,\n cancel: STRINGS.DIALOG.PROMPT_DEFAULT_CANCEL,\n placeholder: STRINGS.DIALOG.PROMPT_DEFAULT_PLACEHOLDER,\n },\n }}\n >\n {renderChildren()}\n </DialogProvider>\n );\n }}\n </LocalizationContext.Consumer>\n </ReactionProvider>\n </UserProfileProvider>\n </ToastProvider>\n </HeaderStyleProvider>\n </UIKitThemeProvider>\n </PlatformServiceProvider>\n </LocalizationProvider>\n </SendbirdChatProvider>\n </UIKitConfigProvider>\n </SafeAreaProvider>\n </SBUHandlersProvider>\n );\n};\n\ntype InitOptions = Partial<ChatOmittedInitParams> & {\n localCacheStorage: LocalCacheStorage;\n onInitialized?: (sdk: SendbirdChatSDK) => SendbirdChatSDK;\n};\nconst initializeSendbird = (appId: string, options: InitOptions) => {\n let chatSDK: SendbirdChatSDK;\n const unsubscribes: Array<() => void> = [];\n const { localCacheStorage, onInitialized, ...chatInitParams } = options;\n\n const isMMKVStorage = 'getString' in localCacheStorage;\n chatSDK = SendbirdChat.init({\n appId,\n newInstance: true,\n modules: [new GroupChannelModule(), new OpenChannelModule()],\n localCacheEnabled: true,\n useMMKVStorageStore: isMMKVStorage ? (localCacheStorage as MMKV) : undefined,\n useAsyncStorageStore: !isMMKVStorage ? (localCacheStorage as AsyncStorageStatic) : undefined,\n ...chatInitParams,\n });\n\n if (onInitialized) {\n chatSDK = onInitialized(chatSDK);\n }\n\n const platform = getDeviceOSPlatform();\n if (SendbirdUIKit.VERSION && platform) {\n const deviceOSInfo = { platform, version: String(Platform.Version) };\n const customData = { platform_version: getReactNativeVersion() };\n const uikitExtension = {\n product: SendbirdProduct.UIKIT_CHAT,\n version: SendbirdUIKit.VERSION,\n platform: SendbirdPlatform.REACT_NATIVE,\n };\n\n chatSDK.addSendbirdExtensions([uikitExtension], deviceOSInfo, customData);\n chatSDK.addExtension('sb_uikit', SendbirdUIKit.VERSION);\n }\n\n if (SendbirdUIKit.PLATFORM) {\n chatSDK.addExtension('device-os-platform', SendbirdUIKit.PLATFORM);\n }\n\n if (NetInfo?.addEventListener) {\n try {\n // NOTE: For removing buggy behavior of NetInfo.addEventListener\n // When you first add an event listener, it is assumed that the initialization of the internal event detector is done simultaneously.\n // In other words, when you call the first event listener two events are triggered immediately\n // - the one that is called when adding the event listener\n // - and the internal initialization event\n NetInfo.addEventListener(NOOP)();\n } catch {}\n\n const listener = (callback: () => void, callbackType: 'online' | 'offline') => {\n let callCount = 0;\n const unsubscribe = NetInfo.addEventListener((state) => {\n const online = Boolean(state.isConnected) || Boolean(state.isInternetReachable);\n\n // NOTE: When NetInfo.addEventListener is called\n // the event is immediately triggered regardless of whether the event actually occurred.\n // This is why it filters the first event.\n if (callCount === 0) {\n callCount++;\n return;\n }\n\n if (online && callbackType === 'online') callback();\n if (!online && callbackType === 'offline') callback();\n });\n unsubscribes.push(unsubscribe);\n return unsubscribe;\n };\n chatSDK.setOnlineListener?.((onOnline) => listener(onOnline, 'online'));\n chatSDK.setOfflineListener?.((onOffline) => listener(onOffline, 'offline'));\n }\n return { chatSDK, unsubscribes };\n};\n\nfunction getDeviceOSPlatform() {\n switch (Platform.OS) {\n case 'android':\n return DeviceOsPlatform.ANDROID;\n case 'ios':\n return DeviceOsPlatform.IOS;\n case 'web':\n return DeviceOsPlatform.WEB;\n case 'windows':\n return DeviceOsPlatform.WINDOWS;\n default:\n return undefined;\n }\n}\n\nfunction getReactNativeVersion() {\n const { major, minor, patch } = Platform.constants.reactNativeVersion;\n return `${major}.${minor}.${patch}`;\n}\n\nconst useConfigInstance = ({ imageCompression, userMention, voiceMessage }: SendbirdUIKitContainerProps) => {\n const mentionConfig = useMemo(() => {\n return new MentionConfig({\n mentionLimit: userMention?.mentionLimit || MentionConfig.DEFAULT.MENTION_LIMIT,\n suggestionLimit: userMention?.suggestionLimit || MentionConfig.DEFAULT.SUGGESTION_LIMIT,\n debounceMills: userMention?.debounceMills ?? MentionConfig.DEFAULT.DEBOUNCE_MILLS,\n delimiter: MentionConfig.DEFAULT.DELIMITER,\n trigger: MentionConfig.DEFAULT.TRIGGER,\n });\n }, [userMention?.mentionLimit, userMention?.suggestionLimit, userMention?.debounceMills]);\n\n const imageCompressionConfig = useMemo(() => {\n return new ImageCompressionConfig({\n compressionRate: imageCompression?.compressionRate || ImageCompressionConfig.DEFAULT.COMPRESSION_RATE,\n width: imageCompression?.width,\n height: imageCompression?.height,\n });\n }, [imageCompression?.compressionRate, imageCompression?.width, imageCompression?.height]);\n\n const voiceMessageConfig = useMemo(() => {\n return new VoiceMessageConfig({\n recorder: {\n minDuration: voiceMessage?.recorder?.minDuration ?? VoiceMessageConfig.DEFAULT.RECORDER.MIN_DURATION,\n maxDuration: voiceMessage?.recorder?.maxDuration ?? VoiceMessageConfig.DEFAULT.RECORDER.MAX_DURATION,\n },\n });\n }, [voiceMessage?.recorder?.minDuration, voiceMessage?.recorder?.maxDuration]);\n\n return {\n mentionConfig,\n imageCompressionConfig,\n voiceMessageConfig,\n };\n};\n\nexport default SendbirdUIKitContainer;\n"],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- const VERSION = '3.8.1';
7
+ const VERSION = '3.8.3';
8
8
  var _default = exports.default = VERSION;
9
9
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["VERSION","_default","exports","default"],"sources":["version.ts"],"sourcesContent":["const VERSION = '3.8.1';\nexport default VERSION;\n"],"mappings":";;;;;;AAAA,MAAMA,OAAO,GAAG,OAAO;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GACTH,OAAO","ignoreList":[]}
1
+ {"version":3,"names":["VERSION","_default","exports","default"],"sources":["version.ts"],"sourcesContent":["const VERSION = '3.8.3';\nexport default VERSION;\n"],"mappings":";;;;;;AAAA,MAAMA,OAAO,GAAG,OAAO;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GACTH,OAAO","ignoreList":[]}
@@ -36,14 +36,6 @@ export const SendbirdUIKit = Object.freeze({
36
36
  IMAGE_COMPRESSION: true
37
37
  }
38
38
  });
39
- const chatOmitKeys = ['appId', 'newInstance', 'modules', 'debugMode', 'appVersion', 'localCacheEnabled', 'useAsyncStorageStore', 'useMMKVStorageStore'];
40
- function sanitizeChatOptions(chatOptions) {
41
- const opts = {
42
- ...chatOptions
43
- };
44
- chatOmitKeys.forEach(key => delete opts[key]);
45
- return opts;
46
- }
47
39
  const SendbirdUIKitContainer = props => {
48
40
  const {
49
41
  children,
@@ -69,7 +61,7 @@ const SendbirdUIKitContainer = props => {
69
61
  const unsubscribes = useRef([]);
70
62
  const [internalStorage] = useState(() => new InternalLocalCacheStorage(chatOptions.localCacheStorage));
71
63
  const [sdkInstance, setSdkInstance] = useState(() => {
72
- const sendbird = initializeSendbird(appId, sanitizeChatOptions(chatOptions));
64
+ const sendbird = initializeSendbird(appId, chatOptions);
73
65
  unsubscribes.current = sendbird.unsubscribes;
74
66
  return sendbird.chatSDK;
75
67
  });
@@ -83,7 +75,7 @@ const SendbirdUIKitContainer = props => {
83
75
  const voiceMessageStatusManager = useMemo(() => new VoiceMessageStatusManager(), []);
84
76
  useLayoutEffect(() => {
85
77
  if (!isFirstMount) {
86
- const sendbird = initializeSendbird(appId, sanitizeChatOptions(chatOptions));
78
+ const sendbird = initializeSendbird(appId, chatOptions);
87
79
  setSdkInstance(sendbird.chatSDK);
88
80
  unsubscribes.current = sendbird.unsubscribes;
89
81
  }
@@ -178,13 +170,13 @@ const initializeSendbird = (appId, options) => {
178
170
  } = options;
179
171
  const isMMKVStorage = 'getString' in localCacheStorage;
180
172
  chatSDK = SendbirdChat.init({
181
- ...chatInitParams,
182
173
  appId,
183
174
  newInstance: true,
184
175
  modules: [new GroupChannelModule(), new OpenChannelModule()],
185
176
  localCacheEnabled: true,
186
177
  useMMKVStorageStore: isMMKVStorage ? localCacheStorage : undefined,
187
- useAsyncStorageStore: !isMMKVStorage ? localCacheStorage : undefined
178
+ useAsyncStorageStore: !isMMKVStorage ? localCacheStorage : undefined,
179
+ ...chatInitParams
188
180
  });
189
181
  if (onInitialized) {
190
182
  chatSDK = onInitialized(chatSDK);
@@ -1 +1 @@
1
- {"version":3,"names":["React","useLayoutEffect","useMemo","useRef","useState","Platform","SafeAreaProvider","SendbirdChat","DeviceOsPlatform","SendbirdPlatform","SendbirdProduct","GroupChannelModule","OpenChannelModule","DialogProvider","Header","HeaderStyleProvider","LightUIKitTheme","ToastProvider","UIKitThemeProvider","UIKitConfigProvider","Logger","NOOP","useIsFirstMount","LocalizationContext","LocalizationProvider","PlatformServiceProvider","ReactionProvider","SBUHandlersProvider","SendbirdChatProvider","UserProfileProvider","EmojiManager","ImageCompressionConfig","InternalLocalCacheStorage","MentionConfig","MentionManager","SBUUtils","VoiceMessageConfig","VoiceMessageStatusManager","StringSetEn","SBUDynamicModule","VERSION","InternalErrorBoundaryContainer","NetInfo","get","SendbirdUIKit","Object","freeze","PLATFORM","OS","toLowerCase","DEFAULT","AUTO_PUSH_TOKEN_REGISTRATION","USE_USER_ID_FOR_NICKNAME","IMAGE_COMPRESSION","chatOmitKeys","sanitizeChatOptions","chatOptions","opts","forEach","key","SendbirdUIKitContainer","props","children","appId","uikitOptions","platformServices","localization","styles","errorBoundary","handlers","toast","userProfile","reaction","localCacheStorage","Error","warn","defaultStringSet","stringSet","isFirstMount","unsubscribes","internalStorage","sdkInstance","setSdkInstance","sendbird","initializeSendbird","current","chatSDK","imageCompressionConfig","voiceMessageConfig","mentionConfig","useConfigInstance","emojiManager","mentionManager","voiceMessageStatusManager","u","renderChildren","disabled","createElement","sbuHandlers","onOpenURL","openURL","storage","localConfigs","common","groupChannel","channel","enableReactionsSupergroup","undefined","channelList","groupChannelList","setting","groupChannelSettings","openChannel","enableAutoPushTokenRegistration","enableUseUserIdForNickname","enableImageCompression","fileService","file","notificationService","notification","clipboardService","clipboard","mediaService","media","playerService","player","recorderService","recorder","theme","HeaderComponent","defaultTitleAlign","defaultHeaderTitleAlign","statusBarTranslucent","dismissTimeout","_extends","Consumer","value","STRINGS","defaultLabels","alert","ok","DIALOG","ALERT_DEFAULT_OK","prompt","PROMPT_DEFAULT_OK","cancel","PROMPT_DEFAULT_CANCEL","placeholder","PROMPT_DEFAULT_PLACEHOLDER","options","onInitialized","chatInitParams","isMMKVStorage","init","newInstance","modules","localCacheEnabled","useMMKVStorageStore","useAsyncStorageStore","platform","getDeviceOSPlatform","deviceOSInfo","version","String","Version","customData","platform_version","getReactNativeVersion","uikitExtension","product","UIKIT_CHAT","REACT_NATIVE","addSendbirdExtensions","addExtension","addEventListener","_chatSDK$setOnlineLis","_chatSDK","_chatSDK$setOfflineLi","_chatSDK2","listener","callback","callbackType","callCount","unsubscribe","state","online","Boolean","isConnected","isInternetReachable","push","setOnlineListener","call","onOnline","setOfflineListener","onOffline","ANDROID","IOS","WEB","WINDOWS","major","minor","patch","constants","reactNativeVersion","imageCompression","userMention","voiceMessage","_voiceMessage$recorde3","_voiceMessage$recorde4","mentionLimit","MENTION_LIMIT","suggestionLimit","SUGGESTION_LIMIT","debounceMills","DEBOUNCE_MILLS","delimiter","DELIMITER","trigger","TRIGGER","compressionRate","COMPRESSION_RATE","width","height","_voiceMessage$recorde","_voiceMessage$recorde2","minDuration","RECORDER","MIN_DURATION","maxDuration","MAX_DURATION"],"sources":["SendbirdUIKitContainer.tsx"],"sourcesContent":["import type { AsyncStorageStatic } from '@react-native-async-storage/async-storage';\nimport React, { useLayoutEffect, useMemo, useRef, useState } from 'react';\nimport { Platform } from 'react-native';\nimport type { MMKV } from 'react-native-mmkv';\nimport { SafeAreaProvider } from 'react-native-safe-area-context';\n\nimport SendbirdChat, { DeviceOsPlatform, SendbirdChatParams, SendbirdPlatform, SendbirdProduct } from '@sendbird/chat';\nimport { GroupChannelModule } from '@sendbird/chat/groupChannel';\nimport { OpenChannelModule } from '@sendbird/chat/openChannel';\nimport type { HeaderStyleContextType, UIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport {\n DialogProvider,\n Header,\n HeaderStyleProvider,\n LightUIKitTheme,\n ToastProvider,\n UIKitThemeProvider,\n} from '@sendbird/uikit-react-native-foundation';\nimport { SBUConfig, UIKitConfigProvider } from '@sendbird/uikit-tools';\nimport {\n Logger,\n NOOP,\n PartialDeep,\n SendbirdChatSDK,\n SendbirdGroupChannel,\n SendbirdGroupChannelCreateParams,\n SendbirdMember,\n SendbirdReactedUserInfo,\n SendbirdUser,\n useIsFirstMount,\n} from '@sendbird/uikit-utils';\n\nimport { LocalizationContext, LocalizationProvider } from '../contexts/LocalizationCtx';\nimport { PlatformServiceProvider } from '../contexts/PlatformServiceCtx';\nimport { ReactionProvider } from '../contexts/ReactionCtx';\nimport { type SBUHandlers, SBUHandlersProvider } from '../contexts/SBUHandlersCtx';\nimport type { ChatRelatedFeaturesInUIKit } from '../contexts/SendbirdChatCtx';\nimport { SendbirdChatProvider } from '../contexts/SendbirdChatCtx';\nimport { UserProfileProvider } from '../contexts/UserProfileCtx';\nimport EmojiManager from '../libs/EmojiManager';\nimport type { ImageCompressionConfigInterface } from '../libs/ImageCompressionConfig';\nimport ImageCompressionConfig from '../libs/ImageCompressionConfig';\nimport InternalLocalCacheStorage from '../libs/InternalLocalCacheStorage';\nimport MentionConfig, { MentionConfigInterface } from '../libs/MentionConfig';\nimport MentionManager from '../libs/MentionManager';\nimport SBUUtils from '../libs/SBUUtils';\nimport VoiceMessageConfig, { VoiceMessageConfigInterface } from '../libs/VoiceMessageConfig';\nimport VoiceMessageStatusManager from '../libs/VoiceMessageStatusManager';\nimport StringSetEn from '../localization/StringSet.en';\nimport type { StringSet } from '../localization/StringSet.type';\nimport SBUDynamicModule from '../platform/dynamicModule';\nimport type {\n ClipboardServiceInterface,\n FileServiceInterface,\n MediaServiceInterface,\n NotificationServiceInterface,\n PlayerServiceInterface,\n RecorderServiceInterface,\n} from '../platform/types';\nimport { ErrorBoundaryProps, LocalCacheStorage } from '../types';\nimport VERSION from '../version';\nimport InternalErrorBoundaryContainer from './InternalErrorBoundaryContainer';\n\nconst NetInfo = SBUDynamicModule.get('@react-native-community/netinfo', 'warn');\nexport const SendbirdUIKit = Object.freeze({\n VERSION,\n PLATFORM: Platform.OS.toLowerCase(),\n DEFAULT: {\n AUTO_PUSH_TOKEN_REGISTRATION: true,\n USE_USER_ID_FOR_NICKNAME: false,\n IMAGE_COMPRESSION: true,\n },\n});\n\nexport type ChatOmittedInitParams = Omit<\n SendbirdChatParams<[GroupChannelModule, OpenChannelModule]>,\n (typeof chatOmitKeys)[number]\n>;\n\nconst chatOmitKeys = [\n 'appId',\n 'newInstance',\n 'modules',\n 'debugMode',\n 'appVersion',\n 'localCacheEnabled',\n 'useAsyncStorageStore',\n 'useMMKVStorageStore',\n] as const;\nfunction sanitizeChatOptions<T extends Record<string, unknown>>(chatOptions: T): T {\n const opts = { ...chatOptions };\n chatOmitKeys.forEach((key) => delete opts[key]);\n return opts;\n}\nexport type SendbirdUIKitContainerProps = React.PropsWithChildren<{\n appId: string;\n platformServices: {\n file: FileServiceInterface;\n notification: NotificationServiceInterface;\n clipboard: ClipboardServiceInterface;\n media: MediaServiceInterface;\n player: PlayerServiceInterface;\n recorder: RecorderServiceInterface;\n };\n chatOptions: Partial<ChatOmittedInitParams> &\n Partial<ChatRelatedFeaturesInUIKit> & {\n onInitialized?: (sdkInstance: SendbirdChatSDK) => SendbirdChatSDK;\n localCacheStorage: LocalCacheStorage;\n };\n uikitOptions?: PartialDeep<{\n common: SBUConfig['common'];\n groupChannel: Omit<SBUConfig['groupChannel']['channel'], 'enableReactionsSupergroup'> & {\n /**\n * @deprecated Currently, this feature is turned off by default. If you wish to use this feature, contact us: {@link https://dashboard.sendbird.com/settings/contact_us?category=feedback_and_feature_requests&product=UIKit}\n */\n enableReactionsSupergroup: never;\n };\n groupChannelList: SBUConfig['groupChannel']['channelList'];\n groupChannelSettings: SBUConfig['groupChannel']['setting'];\n openChannel: SBUConfig['openChannel']['channel'];\n }>;\n localization?: {\n stringSet?: StringSet;\n };\n styles?: {\n theme?: UIKitTheme;\n statusBarTranslucent?: boolean;\n defaultHeaderTitleAlign?: 'left' | 'center';\n defaultHeaderHeight?: number;\n HeaderComponent?: HeaderStyleContextType['HeaderComponent'];\n };\n errorBoundary?: {\n disabled?: boolean;\n onError?: (props: ErrorBoundaryProps) => void;\n ErrorInfoComponent?: (props: ErrorBoundaryProps) => React.ReactNode;\n };\n handlers?: Partial<SBUHandlers>;\n toast?: {\n dismissTimeout?: number;\n };\n userProfile?: {\n onCreateChannel: (channel: SendbirdGroupChannel) => void;\n onBeforeCreateChannel?: (\n channelParams: SendbirdGroupChannelCreateParams,\n users: SendbirdUser[] | SendbirdMember[] | SendbirdReactedUserInfo[],\n ) => SendbirdGroupChannelCreateParams | Promise<SendbirdGroupChannelCreateParams>;\n };\n reaction?: {\n onPressUserProfile?: (user: SendbirdReactedUserInfo) => void;\n };\n userMention?: Pick<Partial<MentionConfigInterface>, 'mentionLimit' | 'suggestionLimit' | 'debounceMills'>;\n imageCompression?: Partial<ImageCompressionConfigInterface>;\n voiceMessage?: PartialDeep<VoiceMessageConfigInterface>;\n}>;\n\nconst SendbirdUIKitContainer = (props: SendbirdUIKitContainerProps) => {\n const {\n children,\n appId,\n chatOptions,\n uikitOptions,\n platformServices,\n localization,\n styles,\n errorBoundary,\n handlers,\n toast,\n userProfile,\n reaction,\n } = props;\n\n if (!chatOptions.localCacheStorage) {\n throw new Error('SendbirdUIKitContainer: chatOptions.localCacheStorage is required');\n } else if ('getItem' in chatOptions.localCacheStorage) {\n Logger.warn(\n 'SendbirdUIKitContainer: localCacheStorage for `AsyncStorage` is deprecated. Please use `MMKV` instead.',\n );\n }\n\n const defaultStringSet = localization?.stringSet ?? StringSetEn;\n\n const isFirstMount = useIsFirstMount();\n const unsubscribes = useRef<Array<() => void>>([]);\n\n const [internalStorage] = useState(() => new InternalLocalCacheStorage(chatOptions.localCacheStorage));\n const [sdkInstance, setSdkInstance] = useState<SendbirdChatSDK>(() => {\n const sendbird = initializeSendbird(appId, sanitizeChatOptions(chatOptions));\n unsubscribes.current = sendbird.unsubscribes;\n return sendbird.chatSDK;\n });\n\n const { imageCompressionConfig, voiceMessageConfig, mentionConfig } = useConfigInstance(props);\n const emojiManager = useMemo(() => new EmojiManager(internalStorage), [internalStorage]);\n const mentionManager = useMemo(() => new MentionManager(mentionConfig), [mentionConfig]);\n const voiceMessageStatusManager = useMemo(() => new VoiceMessageStatusManager(), []);\n\n useLayoutEffect(() => {\n if (!isFirstMount) {\n const sendbird = initializeSendbird(appId, sanitizeChatOptions(chatOptions));\n setSdkInstance(sendbird.chatSDK);\n unsubscribes.current = sendbird.unsubscribes;\n }\n\n return () => {\n unsubscribes.current.forEach((u) => {\n try {\n u();\n } catch {}\n });\n };\n }, [appId, internalStorage]);\n\n const renderChildren = () => {\n if (errorBoundary?.disabled) {\n return children;\n } else {\n return <InternalErrorBoundaryContainer {...errorBoundary}>{children}</InternalErrorBoundaryContainer>;\n }\n };\n\n const sbuHandlers: SBUHandlers = {\n onOpenURL: SBUUtils.openURL,\n ...handlers,\n };\n\n return (\n <SBUHandlersProvider {...sbuHandlers}>\n <SafeAreaProvider>\n <UIKitConfigProvider\n storage={internalStorage}\n localConfigs={{\n common: uikitOptions?.common,\n groupChannel: {\n channel: { ...uikitOptions?.groupChannel, enableReactionsSupergroup: undefined },\n channelList: uikitOptions?.groupChannelList,\n setting: uikitOptions?.groupChannelSettings,\n },\n openChannel: {\n channel: uikitOptions?.openChannel,\n },\n }}\n >\n <SendbirdChatProvider\n sdkInstance={sdkInstance}\n emojiManager={emojiManager}\n mentionManager={mentionManager}\n imageCompressionConfig={imageCompressionConfig}\n voiceMessageConfig={voiceMessageConfig}\n voiceMessageStatusManager={voiceMessageStatusManager}\n enableAutoPushTokenRegistration={\n chatOptions.enableAutoPushTokenRegistration ?? SendbirdUIKit.DEFAULT.AUTO_PUSH_TOKEN_REGISTRATION\n }\n enableUseUserIdForNickname={\n chatOptions.enableUseUserIdForNickname ?? SendbirdUIKit.DEFAULT.USE_USER_ID_FOR_NICKNAME\n }\n enableImageCompression={chatOptions.enableImageCompression ?? SendbirdUIKit.DEFAULT.IMAGE_COMPRESSION}\n >\n <LocalizationProvider stringSet={defaultStringSet}>\n <PlatformServiceProvider\n fileService={platformServices.file}\n notificationService={platformServices.notification}\n clipboardService={platformServices.clipboard}\n mediaService={platformServices.media}\n playerService={platformServices.player}\n recorderService={platformServices.recorder}\n voiceMessageConfig={voiceMessageConfig}\n >\n <UIKitThemeProvider theme={styles?.theme ?? LightUIKitTheme}>\n <HeaderStyleProvider\n HeaderComponent={styles?.HeaderComponent ?? Header}\n defaultTitleAlign={styles?.defaultHeaderTitleAlign ?? 'left'}\n statusBarTranslucent={styles?.statusBarTranslucent ?? true}\n >\n <ToastProvider dismissTimeout={toast?.dismissTimeout}>\n <UserProfileProvider {...userProfile} statusBarTranslucent={styles?.statusBarTranslucent ?? true}>\n <ReactionProvider {...reaction}>\n <LocalizationContext.Consumer>\n {(value) => {\n const STRINGS = value?.STRINGS || defaultStringSet;\n return (\n <DialogProvider\n defaultLabels={{\n alert: { ok: STRINGS.DIALOG.ALERT_DEFAULT_OK },\n prompt: {\n ok: STRINGS.DIALOG.PROMPT_DEFAULT_OK,\n cancel: STRINGS.DIALOG.PROMPT_DEFAULT_CANCEL,\n placeholder: STRINGS.DIALOG.PROMPT_DEFAULT_PLACEHOLDER,\n },\n }}\n >\n {renderChildren()}\n </DialogProvider>\n );\n }}\n </LocalizationContext.Consumer>\n </ReactionProvider>\n </UserProfileProvider>\n </ToastProvider>\n </HeaderStyleProvider>\n </UIKitThemeProvider>\n </PlatformServiceProvider>\n </LocalizationProvider>\n </SendbirdChatProvider>\n </UIKitConfigProvider>\n </SafeAreaProvider>\n </SBUHandlersProvider>\n );\n};\n\ninterface InitOptions extends ChatOmittedInitParams {\n localCacheStorage: LocalCacheStorage;\n onInitialized?: (sdk: SendbirdChatSDK) => SendbirdChatSDK;\n}\nconst initializeSendbird = (appId: string, options: InitOptions) => {\n let chatSDK: SendbirdChatSDK;\n const unsubscribes: Array<() => void> = [];\n const { localCacheStorage, onInitialized, ...chatInitParams } = options;\n\n const isMMKVStorage = 'getString' in localCacheStorage;\n chatSDK = SendbirdChat.init({\n ...chatInitParams,\n appId,\n newInstance: true,\n modules: [new GroupChannelModule(), new OpenChannelModule()],\n localCacheEnabled: true,\n useMMKVStorageStore: isMMKVStorage ? (localCacheStorage as MMKV) : undefined,\n useAsyncStorageStore: !isMMKVStorage ? (localCacheStorage as AsyncStorageStatic) : undefined,\n });\n\n if (onInitialized) {\n chatSDK = onInitialized(chatSDK);\n }\n\n const platform = getDeviceOSPlatform();\n if (SendbirdUIKit.VERSION && platform) {\n const deviceOSInfo = { platform, version: String(Platform.Version) };\n const customData = { platform_version: getReactNativeVersion() };\n const uikitExtension = {\n product: SendbirdProduct.UIKIT_CHAT,\n version: SendbirdUIKit.VERSION,\n platform: SendbirdPlatform.REACT_NATIVE,\n };\n\n chatSDK.addSendbirdExtensions([uikitExtension], deviceOSInfo, customData);\n chatSDK.addExtension('sb_uikit', SendbirdUIKit.VERSION);\n }\n\n if (SendbirdUIKit.PLATFORM) {\n chatSDK.addExtension('device-os-platform', SendbirdUIKit.PLATFORM);\n }\n\n if (NetInfo?.addEventListener) {\n try {\n // NOTE: For removing buggy behavior of NetInfo.addEventListener\n // When you first add an event listener, it is assumed that the initialization of the internal event detector is done simultaneously.\n // In other words, when you call the first event listener two events are triggered immediately\n // - the one that is called when adding the event listener\n // - and the internal initialization event\n NetInfo.addEventListener(NOOP)();\n } catch {}\n\n const listener = (callback: () => void, callbackType: 'online' | 'offline') => {\n let callCount = 0;\n const unsubscribe = NetInfo.addEventListener((state) => {\n const online = Boolean(state.isConnected) || Boolean(state.isInternetReachable);\n\n // NOTE: When NetInfo.addEventListener is called\n // the event is immediately triggered regardless of whether the event actually occurred.\n // This is why it filters the first event.\n if (callCount === 0) {\n callCount++;\n return;\n }\n\n if (online && callbackType === 'online') callback();\n if (!online && callbackType === 'offline') callback();\n });\n unsubscribes.push(unsubscribe);\n return unsubscribe;\n };\n chatSDK.setOnlineListener?.((onOnline) => listener(onOnline, 'online'));\n chatSDK.setOfflineListener?.((onOffline) => listener(onOffline, 'offline'));\n }\n return { chatSDK, unsubscribes };\n};\n\nfunction getDeviceOSPlatform() {\n switch (Platform.OS) {\n case 'android':\n return DeviceOsPlatform.ANDROID;\n case 'ios':\n return DeviceOsPlatform.IOS;\n case 'web':\n return DeviceOsPlatform.WEB;\n case 'windows':\n return DeviceOsPlatform.WINDOWS;\n default:\n return undefined;\n }\n}\n\nfunction getReactNativeVersion() {\n const { major, minor, patch } = Platform.constants.reactNativeVersion;\n return `${major}.${minor}.${patch}`;\n}\n\nconst useConfigInstance = ({ imageCompression, userMention, voiceMessage }: SendbirdUIKitContainerProps) => {\n const mentionConfig = useMemo(() => {\n return new MentionConfig({\n mentionLimit: userMention?.mentionLimit || MentionConfig.DEFAULT.MENTION_LIMIT,\n suggestionLimit: userMention?.suggestionLimit || MentionConfig.DEFAULT.SUGGESTION_LIMIT,\n debounceMills: userMention?.debounceMills ?? MentionConfig.DEFAULT.DEBOUNCE_MILLS,\n delimiter: MentionConfig.DEFAULT.DELIMITER,\n trigger: MentionConfig.DEFAULT.TRIGGER,\n });\n }, [userMention?.mentionLimit, userMention?.suggestionLimit, userMention?.debounceMills]);\n\n const imageCompressionConfig = useMemo(() => {\n return new ImageCompressionConfig({\n compressionRate: imageCompression?.compressionRate || ImageCompressionConfig.DEFAULT.COMPRESSION_RATE,\n width: imageCompression?.width,\n height: imageCompression?.height,\n });\n }, [imageCompression?.compressionRate, imageCompression?.width, imageCompression?.height]);\n\n const voiceMessageConfig = useMemo(() => {\n return new VoiceMessageConfig({\n recorder: {\n minDuration: voiceMessage?.recorder?.minDuration ?? VoiceMessageConfig.DEFAULT.RECORDER.MIN_DURATION,\n maxDuration: voiceMessage?.recorder?.maxDuration ?? VoiceMessageConfig.DEFAULT.RECORDER.MAX_DURATION,\n },\n });\n }, [voiceMessage?.recorder?.minDuration, voiceMessage?.recorder?.maxDuration]);\n\n return {\n mentionConfig,\n imageCompressionConfig,\n voiceMessageConfig,\n };\n};\n\nexport default SendbirdUIKitContainer;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useLayoutEffect","useMemo","useRef","useState","Platform","SafeAreaProvider","SendbirdChat","DeviceOsPlatform","SendbirdPlatform","SendbirdProduct","GroupChannelModule","OpenChannelModule","DialogProvider","Header","HeaderStyleProvider","LightUIKitTheme","ToastProvider","UIKitThemeProvider","UIKitConfigProvider","Logger","NOOP","useIsFirstMount","LocalizationContext","LocalizationProvider","PlatformServiceProvider","ReactionProvider","SBUHandlersProvider","SendbirdChatProvider","UserProfileProvider","EmojiManager","ImageCompressionConfig","InternalLocalCacheStorage","MentionConfig","MentionManager","SBUUtils","VoiceMessageConfig","VoiceMessageStatusManager","StringSetEn","SBUDynamicModule","VERSION","InternalErrorBoundaryContainer","NetInfo","get","SendbirdUIKit","Object","freeze","PLATFORM","OS","toLowerCase","DEFAULT","AUTO_PUSH_TOKEN_REGISTRATION","USE_USER_ID_FOR_NICKNAME","IMAGE_COMPRESSION","SendbirdUIKitContainer","props","children","appId","chatOptions","uikitOptions","platformServices","localization","styles","errorBoundary","handlers","toast","userProfile","reaction","localCacheStorage","Error","warn","defaultStringSet","stringSet","isFirstMount","unsubscribes","internalStorage","sdkInstance","setSdkInstance","sendbird","initializeSendbird","current","chatSDK","imageCompressionConfig","voiceMessageConfig","mentionConfig","useConfigInstance","emojiManager","mentionManager","voiceMessageStatusManager","forEach","u","renderChildren","disabled","createElement","sbuHandlers","onOpenURL","openURL","storage","localConfigs","common","groupChannel","channel","enableReactionsSupergroup","undefined","channelList","groupChannelList","setting","groupChannelSettings","openChannel","enableAutoPushTokenRegistration","enableUseUserIdForNickname","enableImageCompression","fileService","file","notificationService","notification","clipboardService","clipboard","mediaService","media","playerService","player","recorderService","recorder","theme","HeaderComponent","defaultTitleAlign","defaultHeaderTitleAlign","statusBarTranslucent","dismissTimeout","_extends","Consumer","value","STRINGS","defaultLabels","alert","ok","DIALOG","ALERT_DEFAULT_OK","prompt","PROMPT_DEFAULT_OK","cancel","PROMPT_DEFAULT_CANCEL","placeholder","PROMPT_DEFAULT_PLACEHOLDER","options","onInitialized","chatInitParams","isMMKVStorage","init","newInstance","modules","localCacheEnabled","useMMKVStorageStore","useAsyncStorageStore","platform","getDeviceOSPlatform","deviceOSInfo","version","String","Version","customData","platform_version","getReactNativeVersion","uikitExtension","product","UIKIT_CHAT","REACT_NATIVE","addSendbirdExtensions","addExtension","addEventListener","_chatSDK$setOnlineLis","_chatSDK","_chatSDK$setOfflineLi","_chatSDK2","listener","callback","callbackType","callCount","unsubscribe","state","online","Boolean","isConnected","isInternetReachable","push","setOnlineListener","call","onOnline","setOfflineListener","onOffline","ANDROID","IOS","WEB","WINDOWS","major","minor","patch","constants","reactNativeVersion","imageCompression","userMention","voiceMessage","_voiceMessage$recorde3","_voiceMessage$recorde4","mentionLimit","MENTION_LIMIT","suggestionLimit","SUGGESTION_LIMIT","debounceMills","DEBOUNCE_MILLS","delimiter","DELIMITER","trigger","TRIGGER","compressionRate","COMPRESSION_RATE","width","height","_voiceMessage$recorde","_voiceMessage$recorde2","minDuration","RECORDER","MIN_DURATION","maxDuration","MAX_DURATION"],"sources":["SendbirdUIKitContainer.tsx"],"sourcesContent":["import type { AsyncStorageStatic } from '@react-native-async-storage/async-storage';\nimport React, { useLayoutEffect, useMemo, useRef, useState } from 'react';\nimport { Platform } from 'react-native';\nimport type { MMKV } from 'react-native-mmkv';\nimport { SafeAreaProvider } from 'react-native-safe-area-context';\n\nimport SendbirdChat, { DeviceOsPlatform, SendbirdChatParams, SendbirdPlatform, SendbirdProduct } from '@sendbird/chat';\nimport { GroupChannelModule } from '@sendbird/chat/groupChannel';\nimport { OpenChannelModule } from '@sendbird/chat/openChannel';\nimport type { HeaderStyleContextType, UIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport {\n DialogProvider,\n Header,\n HeaderStyleProvider,\n LightUIKitTheme,\n ToastProvider,\n UIKitThemeProvider,\n} from '@sendbird/uikit-react-native-foundation';\nimport { SBUConfig, UIKitConfigProvider } from '@sendbird/uikit-tools';\nimport {\n Logger,\n NOOP,\n PartialDeep,\n SendbirdChatSDK,\n SendbirdGroupChannel,\n SendbirdGroupChannelCreateParams,\n SendbirdMember,\n SendbirdReactedUserInfo,\n SendbirdUser,\n useIsFirstMount,\n} from '@sendbird/uikit-utils';\n\nimport { LocalizationContext, LocalizationProvider } from '../contexts/LocalizationCtx';\nimport { PlatformServiceProvider } from '../contexts/PlatformServiceCtx';\nimport { ReactionProvider } from '../contexts/ReactionCtx';\nimport { type SBUHandlers, SBUHandlersProvider } from '../contexts/SBUHandlersCtx';\nimport type { ChatRelatedFeaturesInUIKit } from '../contexts/SendbirdChatCtx';\nimport { SendbirdChatProvider } from '../contexts/SendbirdChatCtx';\nimport { UserProfileProvider } from '../contexts/UserProfileCtx';\nimport EmojiManager from '../libs/EmojiManager';\nimport type { ImageCompressionConfigInterface } from '../libs/ImageCompressionConfig';\nimport ImageCompressionConfig from '../libs/ImageCompressionConfig';\nimport InternalLocalCacheStorage from '../libs/InternalLocalCacheStorage';\nimport MentionConfig, { MentionConfigInterface } from '../libs/MentionConfig';\nimport MentionManager from '../libs/MentionManager';\nimport SBUUtils from '../libs/SBUUtils';\nimport VoiceMessageConfig, { VoiceMessageConfigInterface } from '../libs/VoiceMessageConfig';\nimport VoiceMessageStatusManager from '../libs/VoiceMessageStatusManager';\nimport StringSetEn from '../localization/StringSet.en';\nimport type { StringSet } from '../localization/StringSet.type';\nimport SBUDynamicModule from '../platform/dynamicModule';\nimport type {\n ClipboardServiceInterface,\n FileServiceInterface,\n MediaServiceInterface,\n NotificationServiceInterface,\n PlayerServiceInterface,\n RecorderServiceInterface,\n} from '../platform/types';\nimport { ErrorBoundaryProps, LocalCacheStorage } from '../types';\nimport VERSION from '../version';\nimport InternalErrorBoundaryContainer from './InternalErrorBoundaryContainer';\n\nconst NetInfo = SBUDynamicModule.get('@react-native-community/netinfo', 'warn');\nexport const SendbirdUIKit = Object.freeze({\n VERSION,\n PLATFORM: Platform.OS.toLowerCase(),\n DEFAULT: {\n AUTO_PUSH_TOKEN_REGISTRATION: true,\n USE_USER_ID_FOR_NICKNAME: false,\n IMAGE_COMPRESSION: true,\n },\n});\n\nexport type ChatOmittedInitParams = SendbirdChatParams<[GroupChannelModule, OpenChannelModule]>;\n\nexport type SendbirdUIKitContainerProps = React.PropsWithChildren<{\n appId: string;\n platformServices: {\n file: FileServiceInterface;\n notification: NotificationServiceInterface;\n clipboard: ClipboardServiceInterface;\n media: MediaServiceInterface;\n player: PlayerServiceInterface;\n recorder: RecorderServiceInterface;\n };\n chatOptions: Partial<ChatOmittedInitParams> &\n Partial<ChatRelatedFeaturesInUIKit> & {\n onInitialized?: (sdkInstance: SendbirdChatSDK) => SendbirdChatSDK;\n localCacheStorage: LocalCacheStorage;\n };\n uikitOptions?: PartialDeep<{\n common: SBUConfig['common'];\n groupChannel: Omit<SBUConfig['groupChannel']['channel'], 'enableReactionsSupergroup'> & {\n /**\n * @deprecated Currently, this feature is turned off by default. If you wish to use this feature, contact us: {@link https://dashboard.sendbird.com/settings/contact_us?category=feedback_and_feature_requests&product=UIKit}\n */\n enableReactionsSupergroup: never;\n };\n groupChannelList: SBUConfig['groupChannel']['channelList'];\n groupChannelSettings: SBUConfig['groupChannel']['setting'];\n openChannel: SBUConfig['openChannel']['channel'];\n }>;\n localization?: {\n stringSet?: StringSet;\n };\n styles?: {\n theme?: UIKitTheme;\n statusBarTranslucent?: boolean;\n defaultHeaderTitleAlign?: 'left' | 'center';\n defaultHeaderHeight?: number;\n HeaderComponent?: HeaderStyleContextType['HeaderComponent'];\n };\n errorBoundary?: {\n disabled?: boolean;\n onError?: (props: ErrorBoundaryProps) => void;\n ErrorInfoComponent?: (props: ErrorBoundaryProps) => React.ReactNode;\n };\n handlers?: Partial<SBUHandlers>;\n toast?: {\n dismissTimeout?: number;\n };\n userProfile?: {\n onCreateChannel: (channel: SendbirdGroupChannel) => void;\n onBeforeCreateChannel?: (\n channelParams: SendbirdGroupChannelCreateParams,\n users: SendbirdUser[] | SendbirdMember[] | SendbirdReactedUserInfo[],\n ) => SendbirdGroupChannelCreateParams | Promise<SendbirdGroupChannelCreateParams>;\n };\n reaction?: {\n onPressUserProfile?: (user: SendbirdReactedUserInfo) => void;\n };\n userMention?: Pick<Partial<MentionConfigInterface>, 'mentionLimit' | 'suggestionLimit' | 'debounceMills'>;\n imageCompression?: Partial<ImageCompressionConfigInterface>;\n voiceMessage?: PartialDeep<VoiceMessageConfigInterface>;\n}>;\n\nconst SendbirdUIKitContainer = (props: SendbirdUIKitContainerProps) => {\n const {\n children,\n appId,\n chatOptions,\n uikitOptions,\n platformServices,\n localization,\n styles,\n errorBoundary,\n handlers,\n toast,\n userProfile,\n reaction,\n } = props;\n\n if (!chatOptions.localCacheStorage) {\n throw new Error('SendbirdUIKitContainer: chatOptions.localCacheStorage is required');\n } else if ('getItem' in chatOptions.localCacheStorage) {\n Logger.warn(\n 'SendbirdUIKitContainer: localCacheStorage for `AsyncStorage` is deprecated. Please use `MMKV` instead.',\n );\n }\n\n const defaultStringSet = localization?.stringSet ?? StringSetEn;\n\n const isFirstMount = useIsFirstMount();\n const unsubscribes = useRef<Array<() => void>>([]);\n\n const [internalStorage] = useState(() => new InternalLocalCacheStorage(chatOptions.localCacheStorage));\n const [sdkInstance, setSdkInstance] = useState<SendbirdChatSDK>(() => {\n const sendbird = initializeSendbird(appId, chatOptions);\n unsubscribes.current = sendbird.unsubscribes;\n return sendbird.chatSDK;\n });\n\n const { imageCompressionConfig, voiceMessageConfig, mentionConfig } = useConfigInstance(props);\n const emojiManager = useMemo(() => new EmojiManager(internalStorage), [internalStorage]);\n const mentionManager = useMemo(() => new MentionManager(mentionConfig), [mentionConfig]);\n const voiceMessageStatusManager = useMemo(() => new VoiceMessageStatusManager(), []);\n\n useLayoutEffect(() => {\n if (!isFirstMount) {\n const sendbird = initializeSendbird(appId, chatOptions);\n setSdkInstance(sendbird.chatSDK);\n unsubscribes.current = sendbird.unsubscribes;\n }\n\n return () => {\n unsubscribes.current.forEach((u) => {\n try {\n u();\n } catch {}\n });\n };\n }, [appId, internalStorage]);\n\n const renderChildren = () => {\n if (errorBoundary?.disabled) {\n return children;\n } else {\n return <InternalErrorBoundaryContainer {...errorBoundary}>{children}</InternalErrorBoundaryContainer>;\n }\n };\n\n const sbuHandlers: SBUHandlers = {\n onOpenURL: SBUUtils.openURL,\n ...handlers,\n };\n\n return (\n <SBUHandlersProvider {...sbuHandlers}>\n <SafeAreaProvider>\n <UIKitConfigProvider\n storage={internalStorage}\n localConfigs={{\n common: uikitOptions?.common,\n groupChannel: {\n channel: { ...uikitOptions?.groupChannel, enableReactionsSupergroup: undefined },\n channelList: uikitOptions?.groupChannelList,\n setting: uikitOptions?.groupChannelSettings,\n },\n openChannel: {\n channel: uikitOptions?.openChannel,\n },\n }}\n >\n <SendbirdChatProvider\n sdkInstance={sdkInstance}\n emojiManager={emojiManager}\n mentionManager={mentionManager}\n imageCompressionConfig={imageCompressionConfig}\n voiceMessageConfig={voiceMessageConfig}\n voiceMessageStatusManager={voiceMessageStatusManager}\n enableAutoPushTokenRegistration={\n chatOptions.enableAutoPushTokenRegistration ?? SendbirdUIKit.DEFAULT.AUTO_PUSH_TOKEN_REGISTRATION\n }\n enableUseUserIdForNickname={\n chatOptions.enableUseUserIdForNickname ?? SendbirdUIKit.DEFAULT.USE_USER_ID_FOR_NICKNAME\n }\n enableImageCompression={chatOptions.enableImageCompression ?? SendbirdUIKit.DEFAULT.IMAGE_COMPRESSION}\n >\n <LocalizationProvider stringSet={defaultStringSet}>\n <PlatformServiceProvider\n fileService={platformServices.file}\n notificationService={platformServices.notification}\n clipboardService={platformServices.clipboard}\n mediaService={platformServices.media}\n playerService={platformServices.player}\n recorderService={platformServices.recorder}\n voiceMessageConfig={voiceMessageConfig}\n >\n <UIKitThemeProvider theme={styles?.theme ?? LightUIKitTheme}>\n <HeaderStyleProvider\n HeaderComponent={styles?.HeaderComponent ?? Header}\n defaultTitleAlign={styles?.defaultHeaderTitleAlign ?? 'left'}\n statusBarTranslucent={styles?.statusBarTranslucent ?? true}\n >\n <ToastProvider dismissTimeout={toast?.dismissTimeout}>\n <UserProfileProvider {...userProfile} statusBarTranslucent={styles?.statusBarTranslucent ?? true}>\n <ReactionProvider {...reaction}>\n <LocalizationContext.Consumer>\n {(value) => {\n const STRINGS = value?.STRINGS || defaultStringSet;\n return (\n <DialogProvider\n defaultLabels={{\n alert: { ok: STRINGS.DIALOG.ALERT_DEFAULT_OK },\n prompt: {\n ok: STRINGS.DIALOG.PROMPT_DEFAULT_OK,\n cancel: STRINGS.DIALOG.PROMPT_DEFAULT_CANCEL,\n placeholder: STRINGS.DIALOG.PROMPT_DEFAULT_PLACEHOLDER,\n },\n }}\n >\n {renderChildren()}\n </DialogProvider>\n );\n }}\n </LocalizationContext.Consumer>\n </ReactionProvider>\n </UserProfileProvider>\n </ToastProvider>\n </HeaderStyleProvider>\n </UIKitThemeProvider>\n </PlatformServiceProvider>\n </LocalizationProvider>\n </SendbirdChatProvider>\n </UIKitConfigProvider>\n </SafeAreaProvider>\n </SBUHandlersProvider>\n );\n};\n\ntype InitOptions = Partial<ChatOmittedInitParams> & {\n localCacheStorage: LocalCacheStorage;\n onInitialized?: (sdk: SendbirdChatSDK) => SendbirdChatSDK;\n};\nconst initializeSendbird = (appId: string, options: InitOptions) => {\n let chatSDK: SendbirdChatSDK;\n const unsubscribes: Array<() => void> = [];\n const { localCacheStorage, onInitialized, ...chatInitParams } = options;\n\n const isMMKVStorage = 'getString' in localCacheStorage;\n chatSDK = SendbirdChat.init({\n appId,\n newInstance: true,\n modules: [new GroupChannelModule(), new OpenChannelModule()],\n localCacheEnabled: true,\n useMMKVStorageStore: isMMKVStorage ? (localCacheStorage as MMKV) : undefined,\n useAsyncStorageStore: !isMMKVStorage ? (localCacheStorage as AsyncStorageStatic) : undefined,\n ...chatInitParams,\n });\n\n if (onInitialized) {\n chatSDK = onInitialized(chatSDK);\n }\n\n const platform = getDeviceOSPlatform();\n if (SendbirdUIKit.VERSION && platform) {\n const deviceOSInfo = { platform, version: String(Platform.Version) };\n const customData = { platform_version: getReactNativeVersion() };\n const uikitExtension = {\n product: SendbirdProduct.UIKIT_CHAT,\n version: SendbirdUIKit.VERSION,\n platform: SendbirdPlatform.REACT_NATIVE,\n };\n\n chatSDK.addSendbirdExtensions([uikitExtension], deviceOSInfo, customData);\n chatSDK.addExtension('sb_uikit', SendbirdUIKit.VERSION);\n }\n\n if (SendbirdUIKit.PLATFORM) {\n chatSDK.addExtension('device-os-platform', SendbirdUIKit.PLATFORM);\n }\n\n if (NetInfo?.addEventListener) {\n try {\n // NOTE: For removing buggy behavior of NetInfo.addEventListener\n // When you first add an event listener, it is assumed that the initialization of the internal event detector is done simultaneously.\n // In other words, when you call the first event listener two events are triggered immediately\n // - the one that is called when adding the event listener\n // - and the internal initialization event\n NetInfo.addEventListener(NOOP)();\n } catch {}\n\n const listener = (callback: () => void, callbackType: 'online' | 'offline') => {\n let callCount = 0;\n const unsubscribe = NetInfo.addEventListener((state) => {\n const online = Boolean(state.isConnected) || Boolean(state.isInternetReachable);\n\n // NOTE: When NetInfo.addEventListener is called\n // the event is immediately triggered regardless of whether the event actually occurred.\n // This is why it filters the first event.\n if (callCount === 0) {\n callCount++;\n return;\n }\n\n if (online && callbackType === 'online') callback();\n if (!online && callbackType === 'offline') callback();\n });\n unsubscribes.push(unsubscribe);\n return unsubscribe;\n };\n chatSDK.setOnlineListener?.((onOnline) => listener(onOnline, 'online'));\n chatSDK.setOfflineListener?.((onOffline) => listener(onOffline, 'offline'));\n }\n return { chatSDK, unsubscribes };\n};\n\nfunction getDeviceOSPlatform() {\n switch (Platform.OS) {\n case 'android':\n return DeviceOsPlatform.ANDROID;\n case 'ios':\n return DeviceOsPlatform.IOS;\n case 'web':\n return DeviceOsPlatform.WEB;\n case 'windows':\n return DeviceOsPlatform.WINDOWS;\n default:\n return undefined;\n }\n}\n\nfunction getReactNativeVersion() {\n const { major, minor, patch } = Platform.constants.reactNativeVersion;\n return `${major}.${minor}.${patch}`;\n}\n\nconst useConfigInstance = ({ imageCompression, userMention, voiceMessage }: SendbirdUIKitContainerProps) => {\n const mentionConfig = useMemo(() => {\n return new MentionConfig({\n mentionLimit: userMention?.mentionLimit || MentionConfig.DEFAULT.MENTION_LIMIT,\n suggestionLimit: userMention?.suggestionLimit || MentionConfig.DEFAULT.SUGGESTION_LIMIT,\n debounceMills: userMention?.debounceMills ?? MentionConfig.DEFAULT.DEBOUNCE_MILLS,\n delimiter: MentionConfig.DEFAULT.DELIMITER,\n trigger: MentionConfig.DEFAULT.TRIGGER,\n });\n }, [userMention?.mentionLimit, userMention?.suggestionLimit, userMention?.debounceMills]);\n\n const imageCompressionConfig = useMemo(() => {\n return new ImageCompressionConfig({\n compressionRate: imageCompression?.compressionRate || ImageCompressionConfig.DEFAULT.COMPRESSION_RATE,\n width: imageCompression?.width,\n height: imageCompression?.height,\n });\n }, [imageCompression?.compressionRate, imageCompression?.width, imageCompression?.height]);\n\n const voiceMessageConfig = useMemo(() => {\n return new VoiceMessageConfig({\n recorder: {\n minDuration: voiceMessage?.recorder?.minDuration ?? VoiceMessageConfig.DEFAULT.RECORDER.MIN_DURATION,\n maxDuration: voiceMessage?.recorder?.maxDuration ?? VoiceMessageConfig.DEFAULT.RECORDER.MAX_DURATION,\n },\n });\n }, [voiceMessage?.recorder?.minDuration, voiceMessage?.recorder?.maxDuration]);\n\n return {\n mentionConfig,\n imageCompressionConfig,\n voiceMessageConfig,\n };\n};\n\nexport default SendbirdUIKitContainer;\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,3 @@
1
- const VERSION = '3.8.1';
1
+ const VERSION = '3.8.3';
2
2
  export default VERSION;
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["VERSION"],"sources":["version.ts"],"sourcesContent":["const VERSION = '3.8.1';\nexport default VERSION;\n"],"mappings":"AAAA,MAAMA,OAAO,GAAG,OAAO;AACvB,eAAeA,OAAO","ignoreList":[]}
1
+ {"version":3,"names":["VERSION"],"sources":["version.ts"],"sourcesContent":["const VERSION = '3.8.3';\nexport default VERSION;\n"],"mappings":"AAAA,MAAMA,OAAO,GAAG,OAAO;AACvB,eAAeA,OAAO","ignoreList":[]}
@@ -14,7 +14,7 @@ import type { StringSet } from '../localization/StringSet.type';
14
14
  import type { ClipboardServiceInterface, FileServiceInterface, MediaServiceInterface, NotificationServiceInterface, PlayerServiceInterface, RecorderServiceInterface } from '../platform/types';
15
15
  import { ErrorBoundaryProps, LocalCacheStorage } from '../types';
16
16
  export declare const SendbirdUIKit: Readonly<{
17
- VERSION: "3.8.1";
17
+ VERSION: "3.8.3";
18
18
  PLATFORM: string;
19
19
  DEFAULT: {
20
20
  AUTO_PUSH_TOKEN_REGISTRATION: boolean;
@@ -22,8 +22,7 @@ export declare const SendbirdUIKit: Readonly<{
22
22
  IMAGE_COMPRESSION: boolean;
23
23
  };
24
24
  }>;
25
- export type ChatOmittedInitParams = Omit<SendbirdChatParams<[GroupChannelModule, OpenChannelModule]>, (typeof chatOmitKeys)[number]>;
26
- declare const chatOmitKeys: readonly ["appId", "newInstance", "modules", "debugMode", "appVersion", "localCacheEnabled", "useAsyncStorageStore", "useMMKVStorageStore"];
25
+ export type ChatOmittedInitParams = SendbirdChatParams<[GroupChannelModule, OpenChannelModule]>;
27
26
  export type SendbirdUIKitContainerProps = React.PropsWithChildren<{
28
27
  appId: string;
29
28
  platformServices: {
@@ -1,2 +1,2 @@
1
- declare const VERSION = "3.8.1";
1
+ declare const VERSION = "3.8.3";
2
2
  export default VERSION;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sendbird/uikit-react-native",
3
- "version": "3.8.1",
3
+ "version": "3.8.3",
4
4
  "description": "Sendbird UIKit for React Native: A feature-rich and customizable chat UI kit with messaging, channel management, and user authentication.",
5
5
  "keywords": [
6
6
  "sendbird",
@@ -60,10 +60,10 @@
60
60
  },
61
61
  "dependencies": {
62
62
  "@openspacelabs/react-native-zoomable-view": "^2.1.5",
63
- "@sendbird/uikit-chat-hooks": "3.8.1",
64
- "@sendbird/uikit-react-native-foundation": "3.8.1",
63
+ "@sendbird/uikit-chat-hooks": "3.8.3",
64
+ "@sendbird/uikit-react-native-foundation": "3.8.3",
65
65
  "@sendbird/uikit-tools": "0.0.1-alpha.77",
66
- "@sendbird/uikit-utils": "3.8.1"
66
+ "@sendbird/uikit-utils": "3.8.3"
67
67
  },
68
68
  "devDependencies": {
69
69
  "@bam.tech/react-native-image-resizer": "^3.0.4",
@@ -127,7 +127,7 @@
127
127
  "react-native-document-picker": ">=8.0.0",
128
128
  "react-native-file-access": ">=2.4.3",
129
129
  "react-native-image-picker": ">=4.7.1",
130
- "react-native-mmkv": "^2.0.0",
130
+ "react-native-mmkv": ">=2.0.0",
131
131
  "react-native-permissions": ">=3.6.0",
132
132
  "react-native-safe-area-context": ">=3.3.2",
133
133
  "react-native-video": ">=5.2.0"
@@ -208,5 +208,5 @@
208
208
  ]
209
209
  ]
210
210
  },
211
- "gitHead": "33f4e385cdccfdf83ac1b4fe1ab19955590c1330"
211
+ "gitHead": "0b171a82a048d096d8ede44c4727bf4ad27afba4"
212
212
  }
@@ -72,26 +72,8 @@ export const SendbirdUIKit = Object.freeze({
72
72
  },
73
73
  });
74
74
 
75
- export type ChatOmittedInitParams = Omit<
76
- SendbirdChatParams<[GroupChannelModule, OpenChannelModule]>,
77
- (typeof chatOmitKeys)[number]
78
- >;
79
-
80
- const chatOmitKeys = [
81
- 'appId',
82
- 'newInstance',
83
- 'modules',
84
- 'debugMode',
85
- 'appVersion',
86
- 'localCacheEnabled',
87
- 'useAsyncStorageStore',
88
- 'useMMKVStorageStore',
89
- ] as const;
90
- function sanitizeChatOptions<T extends Record<string, unknown>>(chatOptions: T): T {
91
- const opts = { ...chatOptions };
92
- chatOmitKeys.forEach((key) => delete opts[key]);
93
- return opts;
94
- }
75
+ export type ChatOmittedInitParams = SendbirdChatParams<[GroupChannelModule, OpenChannelModule]>;
76
+
95
77
  export type SendbirdUIKitContainerProps = React.PropsWithChildren<{
96
78
  appId: string;
97
79
  platformServices: {
@@ -184,7 +166,7 @@ const SendbirdUIKitContainer = (props: SendbirdUIKitContainerProps) => {
184
166
 
185
167
  const [internalStorage] = useState(() => new InternalLocalCacheStorage(chatOptions.localCacheStorage));
186
168
  const [sdkInstance, setSdkInstance] = useState<SendbirdChatSDK>(() => {
187
- const sendbird = initializeSendbird(appId, sanitizeChatOptions(chatOptions));
169
+ const sendbird = initializeSendbird(appId, chatOptions);
188
170
  unsubscribes.current = sendbird.unsubscribes;
189
171
  return sendbird.chatSDK;
190
172
  });
@@ -196,7 +178,7 @@ const SendbirdUIKitContainer = (props: SendbirdUIKitContainerProps) => {
196
178
 
197
179
  useLayoutEffect(() => {
198
180
  if (!isFirstMount) {
199
- const sendbird = initializeSendbird(appId, sanitizeChatOptions(chatOptions));
181
+ const sendbird = initializeSendbird(appId, chatOptions);
200
182
  setSdkInstance(sendbird.chatSDK);
201
183
  unsubscribes.current = sendbird.unsubscribes;
202
184
  }
@@ -307,10 +289,10 @@ const SendbirdUIKitContainer = (props: SendbirdUIKitContainerProps) => {
307
289
  );
308
290
  };
309
291
 
310
- interface InitOptions extends ChatOmittedInitParams {
292
+ type InitOptions = Partial<ChatOmittedInitParams> & {
311
293
  localCacheStorage: LocalCacheStorage;
312
294
  onInitialized?: (sdk: SendbirdChatSDK) => SendbirdChatSDK;
313
- }
295
+ };
314
296
  const initializeSendbird = (appId: string, options: InitOptions) => {
315
297
  let chatSDK: SendbirdChatSDK;
316
298
  const unsubscribes: Array<() => void> = [];
@@ -318,13 +300,13 @@ const initializeSendbird = (appId: string, options: InitOptions) => {
318
300
 
319
301
  const isMMKVStorage = 'getString' in localCacheStorage;
320
302
  chatSDK = SendbirdChat.init({
321
- ...chatInitParams,
322
303
  appId,
323
304
  newInstance: true,
324
305
  modules: [new GroupChannelModule(), new OpenChannelModule()],
325
306
  localCacheEnabled: true,
326
307
  useMMKVStorageStore: isMMKVStorage ? (localCacheStorage as MMKV) : undefined,
327
308
  useAsyncStorageStore: !isMMKVStorage ? (localCacheStorage as AsyncStorageStatic) : undefined,
309
+ ...chatInitParams,
328
310
  });
329
311
 
330
312
  if (onInitialized) {
package/src/version.ts CHANGED
@@ -1,2 +1,2 @@
1
- const VERSION = '3.8.1';
1
+ const VERSION = '3.8.3';
2
2
  export default VERSION;