@sendbird/uikit-react-native 3.7.2 → 3.7.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.
- package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js +2 -2
- package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js.map +1 -1
- package/lib/commonjs/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js +2 -2
- package/lib/commonjs/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js.map +1 -1
- package/lib/commonjs/hooks/usePushTokenRegistration.js +10 -7
- package/lib/commonjs/hooks/usePushTokenRegistration.js.map +1 -1
- package/lib/commonjs/localization/StringSet.en.js +2 -3
- package/lib/commonjs/localization/StringSet.en.js.map +1 -1
- package/lib/commonjs/version.js +1 -1
- package/lib/commonjs/version.js.map +1 -1
- package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js +1 -1
- package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js.map +1 -1
- package/lib/module/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js +1 -1
- package/lib/module/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js.map +1 -1
- package/lib/module/hooks/usePushTokenRegistration.js +10 -7
- package/lib/module/hooks/usePushTokenRegistration.js.map +1 -1
- package/lib/module/localization/StringSet.en.js +2 -2
- package/lib/module/localization/StringSet.en.js.map +1 -1
- package/lib/module/version.js +1 -1
- package/lib/module/version.js.map +1 -1
- package/lib/typescript/src/containers/SendbirdUIKitContainer.d.ts +1 -1
- package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput.d.ts +1 -1
- package/lib/typescript/src/domain/groupChannel/component/GroupChannelMessageList.d.ts +1 -1
- package/lib/typescript/src/domain/groupChannelThread/component/GroupChannelThreadInput.d.ts +1 -1
- package/lib/typescript/src/domain/groupChannelThread/component/GroupChannelThreadMessageList.d.ts +1 -1
- package/lib/typescript/src/domain/openChannel/component/OpenChannelInput.d.ts +1 -1
- package/lib/typescript/src/domain/openChannel/component/OpenChannelMessageList.d.ts +1 -1
- package/lib/typescript/src/version.d.ts +1 -1
- package/package.json +6 -6
- package/src/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.tsx +1 -1
- package/src/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.tsx +1 -1
- package/src/hooks/usePushTokenRegistration.ts +10 -7
- package/src/localization/StringSet.en.ts +2 -2
- package/src/version.ts +1 -1
package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var
|
|
7
|
+
var _dateFns = require("date-fns");
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _reactNative = require("react-native");
|
|
10
10
|
var _uikitReactNativeFoundation = require("@sendbird/uikit-react-native-foundation");
|
|
@@ -21,7 +21,7 @@ const GroupChannelMessageDateSeparator = _ref => {
|
|
|
21
21
|
const {
|
|
22
22
|
colors
|
|
23
23
|
} = (0, _uikitReactNativeFoundation.useUIKitTheme)();
|
|
24
|
-
const sameDay = (0,
|
|
24
|
+
const sameDay = (0, _dateFns.isSameDay)(message.createdAt, (prevMessage === null || prevMessage === void 0 ? void 0 : prevMessage.createdAt) ?? 0);
|
|
25
25
|
if (sameDay) return null;
|
|
26
26
|
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
27
27
|
style: styles.container
|
package/lib/commonjs/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_dateFns","require","_react","_interopRequireDefault","_reactNative","_uikitReactNativeFoundation","_useContext","obj","__esModule","default","GroupChannelMessageDateSeparator","_ref","message","prevMessage","STRINGS","useLocalization","colors","useUIKitTheme","sameDay","isSameDay","createdAt","createElement","View","style","styles","container","view","backgroundColor","ui","dateSeparator","none","background","Text","caption1","color","text","GROUP_CHANNEL","LIST_DATE_SEPARATOR","Date","createStyleSheet","alignItems","marginVertical","borderRadius","paddingVertical","paddingHorizontal","_default","exports"],"sources":["GroupChannelMessageDateSeparator.tsx"],"sourcesContent":["import { isSameDay } from 'date-fns';\nimport React from 'react';\nimport { View } from 'react-native';\n\nimport { Text, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport type { SendbirdMessage } from '@sendbird/uikit-utils';\n\nimport { useLocalization } from '../../hooks/useContext';\n\nconst GroupChannelMessageDateSeparator = ({\n message,\n prevMessage,\n}: {\n message: SendbirdMessage;\n prevMessage?: SendbirdMessage;\n}) => {\n const { STRINGS } = useLocalization();\n const { colors } = useUIKitTheme();\n\n const sameDay = isSameDay(message.createdAt, prevMessage?.createdAt ?? 0);\n if (sameDay) return null;\n\n return (\n <View style={styles.container}>\n <View style={[styles.view, { backgroundColor: colors.ui.dateSeparator.default.none.background }]}>\n <Text caption1 color={colors.ui.dateSeparator.default.none.text}>\n {STRINGS.GROUP_CHANNEL.LIST_DATE_SEPARATOR(new Date(message.createdAt))}\n </Text>\n </View>\n </View>\n );\n};\n\nconst styles = createStyleSheet({\n container: {\n alignItems: 'center',\n marginVertical: 16,\n },\n view: {\n borderRadius: 10,\n paddingVertical: 4,\n paddingHorizontal: 10,\n },\n});\n\nexport default GroupChannelMessageDateSeparator;\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAEA,IAAAI,2BAAA,GAAAJ,OAAA;AAGA,IAAAK,WAAA,GAAAL,OAAA;AAAyD,SAAAE,uBAAAI,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEzD,MAAMG,gCAAgC,GAAGC,IAAA,IAMnC;EAAA,IANoC;IACxCC,OAAO;IACPC;EAIF,CAAC,GAAAF,IAAA;EACC,MAAM;IAAEG;EAAQ,CAAC,GAAG,IAAAC,2BAAe,GAAE;EACrC,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,yCAAa,GAAE;EAElC,MAAMC,OAAO,GAAG,IAAAC,kBAAS,EAACP,OAAO,CAACQ,SAAS,EAAE,CAAAP,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEO,SAAS,KAAI,CAAC,CAAC;EACzE,IAAIF,OAAO,EAAE,OAAO,IAAI;EAExB,oBACEhB,MAAA,CAAAO,OAAA,CAAAY,aAAA,CAACjB,YAAA,CAAAkB,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC;EAAU,gBAC5BvB,MAAA,CAAAO,OAAA,CAAAY,aAAA,CAACjB,YAAA,CAAAkB,IAAI;IAACC,KAAK,EAAE,CAACC,MAAM,CAACE,IAAI,EAAE;MAAEC,eAAe,EAAEX,MAAM,CAACY,EAAE,CAACC,aAAa,CAACpB,OAAO,CAACqB,IAAI,CAACC;IAAW,CAAC;EAAE,gBAC/F7B,MAAA,CAAAO,OAAA,CAAAY,aAAA,CAAChB,2BAAA,CAAA2B,IAAI;IAACC,QAAQ;IAACC,KAAK,EAAElB,MAAM,CAACY,EAAE,CAACC,aAAa,CAACpB,OAAO,CAACqB,IAAI,CAACK;EAAK,GAC7DrB,OAAO,CAACsB,aAAa,CAACC,mBAAmB,CAAC,IAAIC,IAAI,CAAC1B,OAAO,CAACQ,SAAS,CAAC,CAAC,CAClE,CACF,CACF;AAEX,CAAC;AAED,MAAMI,MAAM,GAAG,IAAAe,4CAAgB,EAAC;EAC9Bd,SAAS,EAAE;IACTe,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDf,IAAI,EAAE;IACJgB,YAAY,EAAE,EAAE;IAChBC,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE;EACrB;AACF,CAAC,CAAC;AAAC,IAAAC,QAAA,GAEYnC,gCAAgC;AAAAoC,OAAA,CAAArC,OAAA,GAAAoC,QAAA"}
|
package/lib/commonjs/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var
|
|
7
|
+
var _dateFns = require("date-fns");
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _reactNative = require("react-native");
|
|
10
10
|
var _uikitReactNativeFoundation = require("@sendbird/uikit-react-native-foundation");
|
|
@@ -21,7 +21,7 @@ const OpenChannelMessageDateSeparator = _ref => {
|
|
|
21
21
|
const {
|
|
22
22
|
colors
|
|
23
23
|
} = (0, _uikitReactNativeFoundation.useUIKitTheme)();
|
|
24
|
-
const sameDay = (0,
|
|
24
|
+
const sameDay = (0, _dateFns.isSameDay)(message.createdAt, (prevMessage === null || prevMessage === void 0 ? void 0 : prevMessage.createdAt) ?? 0);
|
|
25
25
|
if (sameDay) return null;
|
|
26
26
|
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
27
27
|
style: styles.container
|
package/lib/commonjs/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_dateFns","require","_react","_interopRequireDefault","_reactNative","_uikitReactNativeFoundation","_useContext","obj","__esModule","default","OpenChannelMessageDateSeparator","_ref","message","prevMessage","STRINGS","useLocalization","colors","useUIKitTheme","sameDay","isSameDay","createdAt","createElement","View","style","styles","container","view","backgroundColor","ui","dateSeparator","none","background","Text","caption1","color","text","OPEN_CHANNEL","LIST_DATE_SEPARATOR","Date","createStyleSheet","alignItems","marginVertical","borderRadius","paddingVertical","paddingHorizontal","_default","exports"],"sources":["OpenChannelMessageDateSeparator.tsx"],"sourcesContent":["import { isSameDay } from 'date-fns';\nimport React from 'react';\nimport { View } from 'react-native';\n\nimport { Text, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport type { SendbirdMessage } from '@sendbird/uikit-utils';\n\nimport { useLocalization } from '../../hooks/useContext';\n\nconst OpenChannelMessageDateSeparator = ({\n message,\n prevMessage,\n}: {\n message: SendbirdMessage;\n prevMessage?: SendbirdMessage;\n}) => {\n const { STRINGS } = useLocalization();\n const { colors } = useUIKitTheme();\n\n const sameDay = isSameDay(message.createdAt, prevMessage?.createdAt ?? 0);\n if (sameDay) return null;\n\n return (\n <View style={styles.container}>\n <View style={[styles.view, { backgroundColor: colors.ui.dateSeparator.default.none.background }]}>\n <Text caption1 color={colors.ui.dateSeparator.default.none.text}>\n {STRINGS.OPEN_CHANNEL.LIST_DATE_SEPARATOR(new Date(message.createdAt))}\n </Text>\n </View>\n </View>\n );\n};\n\nconst styles = createStyleSheet({\n container: {\n alignItems: 'center',\n marginVertical: 16,\n },\n view: {\n borderRadius: 10,\n paddingVertical: 4,\n paddingHorizontal: 10,\n },\n});\n\nexport default OpenChannelMessageDateSeparator;\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAEA,IAAAI,2BAAA,GAAAJ,OAAA;AAGA,IAAAK,WAAA,GAAAL,OAAA;AAAyD,SAAAE,uBAAAI,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEzD,MAAMG,+BAA+B,GAAGC,IAAA,IAMlC;EAAA,IANmC;IACvCC,OAAO;IACPC;EAIF,CAAC,GAAAF,IAAA;EACC,MAAM;IAAEG;EAAQ,CAAC,GAAG,IAAAC,2BAAe,GAAE;EACrC,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,yCAAa,GAAE;EAElC,MAAMC,OAAO,GAAG,IAAAC,kBAAS,EAACP,OAAO,CAACQ,SAAS,EAAE,CAAAP,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEO,SAAS,KAAI,CAAC,CAAC;EACzE,IAAIF,OAAO,EAAE,OAAO,IAAI;EAExB,oBACEhB,MAAA,CAAAO,OAAA,CAAAY,aAAA,CAACjB,YAAA,CAAAkB,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC;EAAU,gBAC5BvB,MAAA,CAAAO,OAAA,CAAAY,aAAA,CAACjB,YAAA,CAAAkB,IAAI;IAACC,KAAK,EAAE,CAACC,MAAM,CAACE,IAAI,EAAE;MAAEC,eAAe,EAAEX,MAAM,CAACY,EAAE,CAACC,aAAa,CAACpB,OAAO,CAACqB,IAAI,CAACC;IAAW,CAAC;EAAE,gBAC/F7B,MAAA,CAAAO,OAAA,CAAAY,aAAA,CAAChB,2BAAA,CAAA2B,IAAI;IAACC,QAAQ;IAACC,KAAK,EAAElB,MAAM,CAACY,EAAE,CAACC,aAAa,CAACpB,OAAO,CAACqB,IAAI,CAACK;EAAK,GAC7DrB,OAAO,CAACsB,YAAY,CAACC,mBAAmB,CAAC,IAAIC,IAAI,CAAC1B,OAAO,CAACQ,SAAS,CAAC,CAAC,CACjE,CACF,CACF;AAEX,CAAC;AAED,MAAMI,MAAM,GAAG,IAAAe,4CAAgB,EAAC;EAC9Bd,SAAS,EAAE;IACTe,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDf,IAAI,EAAE;IACJgB,YAAY,EAAE,EAAE;IAChBC,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE;EACrB;AACF,CAAC,CAAC;AAAC,IAAAC,QAAA,GAEYnC,+BAA+B;AAAAoC,OAAA,CAAArC,OAAA,GAAAoC,QAAA"}
|
|
@@ -39,24 +39,27 @@ const usePushTokenRegistration = () => {
|
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
// Register
|
|
42
|
+
// Register token refresh listener
|
|
43
|
+
refreshListener.current = notificationService.onTokenRefresh(registerToken);
|
|
44
|
+
|
|
45
|
+
// Register token
|
|
43
46
|
const token = await getToken();
|
|
44
47
|
if (token) {
|
|
45
48
|
_uikitUtils.Logger.log('[usePushTokenRegistration]', 'registered token:', token);
|
|
46
|
-
registerToken(token);
|
|
49
|
+
await registerToken(token);
|
|
47
50
|
}
|
|
48
|
-
|
|
49
|
-
// Remove listener
|
|
50
|
-
refreshListener.current = notificationService.onTokenRefresh(registerToken);
|
|
51
51
|
});
|
|
52
52
|
const unregisterPushTokenForCurrentUser = (0, _uikitUtils.useFreshCallback)(async () => {
|
|
53
53
|
var _refreshListener$curr;
|
|
54
|
+
// Unregister token refresh listener
|
|
55
|
+
(_refreshListener$curr = refreshListener.current) === null || _refreshListener$curr === void 0 ? void 0 : _refreshListener$curr.call(refreshListener);
|
|
56
|
+
|
|
57
|
+
// Unregister token
|
|
54
58
|
const token = await getToken();
|
|
55
59
|
if (token) {
|
|
56
|
-
unregisterToken(token);
|
|
60
|
+
await unregisterToken(token);
|
|
57
61
|
_uikitUtils.Logger.log('[usePushTokenRegistration]', 'unregistered token:', token);
|
|
58
62
|
}
|
|
59
|
-
(_refreshListener$curr = refreshListener.current) === null || _refreshListener$curr === void 0 ? void 0 : _refreshListener$curr.call(refreshListener);
|
|
60
63
|
});
|
|
61
64
|
return {
|
|
62
65
|
registerPushTokenForCurrentUser,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_uikitUtils","_useContext","usePushTokenRegistration","sdk","useSendbirdChat","notificationService","usePlatformService","refreshListener","useRef","registerToken","unregisterToken","getToken","useIIFE","Platform","select","ios","token","registerAPNSPushTokenForCurrentUser","default","registerFCMPushTokenForCurrentUser","unregisterAPNSPushTokenForCurrentUser","unregisterFCMPushTokenForCurrentUser","getAPNSToken","getFCMToken","registerPushTokenForCurrentUser","useFreshCallback","hasPermission","hasPushPermission","pushPermission","requestPushPermission","Logger","warn","
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_uikitUtils","_useContext","usePushTokenRegistration","sdk","useSendbirdChat","notificationService","usePlatformService","refreshListener","useRef","registerToken","unregisterToken","getToken","useIIFE","Platform","select","ios","token","registerAPNSPushTokenForCurrentUser","default","registerFCMPushTokenForCurrentUser","unregisterAPNSPushTokenForCurrentUser","unregisterFCMPushTokenForCurrentUser","getAPNSToken","getFCMToken","registerPushTokenForCurrentUser","useFreshCallback","hasPermission","hasPushPermission","pushPermission","requestPushPermission","Logger","warn","current","onTokenRefresh","log","unregisterPushTokenForCurrentUser","_refreshListener$curr","call","_default","exports"],"sources":["usePushTokenRegistration.ts"],"sourcesContent":["import { useRef } from 'react';\nimport { Platform } from 'react-native';\n\nimport { Logger, useFreshCallback, useIIFE } from '@sendbird/uikit-utils';\n\nimport { usePlatformService, useSendbirdChat } from './useContext';\n\nconst usePushTokenRegistration = () => {\n const { sdk } = useSendbirdChat();\n const { notificationService } = usePlatformService();\n\n const refreshListener = useRef<() => void>();\n const [registerToken, unregisterToken, getToken] = useIIFE(() => {\n return [\n Platform.select({\n ios: (token: string) => sdk.registerAPNSPushTokenForCurrentUser(token),\n default: (token: string) => sdk.registerFCMPushTokenForCurrentUser(token),\n }),\n Platform.select({\n ios: (token: string) => sdk.unregisterAPNSPushTokenForCurrentUser(token),\n default: (token: string) => sdk.unregisterFCMPushTokenForCurrentUser(token),\n }),\n Platform.select({\n ios: notificationService.getAPNSToken,\n default: notificationService.getFCMToken,\n }),\n ];\n });\n\n const registerPushTokenForCurrentUser = useFreshCallback(async () => {\n // Check and request push permission\n const hasPermission = await notificationService.hasPushPermission();\n if (!hasPermission) {\n const pushPermission = await notificationService.requestPushPermission();\n if (!pushPermission) {\n Logger.warn('[usePushTokenRegistration]', 'Not granted push permission');\n return;\n }\n }\n\n // Register token refresh listener\n refreshListener.current = notificationService.onTokenRefresh(registerToken);\n\n // Register token\n const token = await getToken();\n if (token) {\n Logger.log('[usePushTokenRegistration]', 'registered token:', token);\n await registerToken(token);\n }\n });\n\n const unregisterPushTokenForCurrentUser = useFreshCallback(async () => {\n // Unregister token refresh listener\n refreshListener.current?.();\n\n // Unregister token\n const token = await getToken();\n if (token) {\n await unregisterToken(token);\n Logger.log('[usePushTokenRegistration]', 'unregistered token:', token);\n }\n });\n\n return { registerPushTokenForCurrentUser, unregisterPushTokenForCurrentUser };\n};\n\nexport default usePushTokenRegistration;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,WAAA,GAAAF,OAAA;AAEA,IAAAG,WAAA,GAAAH,OAAA;AAEA,MAAMI,wBAAwB,GAAGA,CAAA,KAAM;EACrC,MAAM;IAAEC;EAAI,CAAC,GAAG,IAAAC,2BAAe,GAAE;EACjC,MAAM;IAAEC;EAAoB,CAAC,GAAG,IAAAC,8BAAkB,GAAE;EAEpD,MAAMC,eAAe,GAAG,IAAAC,aAAM,GAAc;EAC5C,MAAM,CAACC,aAAa,EAAEC,eAAe,EAAEC,QAAQ,CAAC,GAAG,IAAAC,mBAAO,EAAC,MAAM;IAC/D,OAAO,CACLC,qBAAQ,CAACC,MAAM,CAAC;MACdC,GAAG,EAAGC,KAAa,IAAKb,GAAG,CAACc,mCAAmC,CAACD,KAAK,CAAC;MACtEE,OAAO,EAAGF,KAAa,IAAKb,GAAG,CAACgB,kCAAkC,CAACH,KAAK;IAC1E,CAAC,CAAC,EACFH,qBAAQ,CAACC,MAAM,CAAC;MACdC,GAAG,EAAGC,KAAa,IAAKb,GAAG,CAACiB,qCAAqC,CAACJ,KAAK,CAAC;MACxEE,OAAO,EAAGF,KAAa,IAAKb,GAAG,CAACkB,oCAAoC,CAACL,KAAK;IAC5E,CAAC,CAAC,EACFH,qBAAQ,CAACC,MAAM,CAAC;MACdC,GAAG,EAAEV,mBAAmB,CAACiB,YAAY;MACrCJ,OAAO,EAAEb,mBAAmB,CAACkB;IAC/B,CAAC,CAAC,CACH;EACH,CAAC,CAAC;EAEF,MAAMC,+BAA+B,GAAG,IAAAC,4BAAgB,EAAC,YAAY;IACnE;IACA,MAAMC,aAAa,GAAG,MAAMrB,mBAAmB,CAACsB,iBAAiB,EAAE;IACnE,IAAI,CAACD,aAAa,EAAE;MAClB,MAAME,cAAc,GAAG,MAAMvB,mBAAmB,CAACwB,qBAAqB,EAAE;MACxE,IAAI,CAACD,cAAc,EAAE;QACnBE,kBAAM,CAACC,IAAI,CAAC,4BAA4B,EAAE,6BAA6B,CAAC;QACxE;MACF;IACF;;IAEA;IACAxB,eAAe,CAACyB,OAAO,GAAG3B,mBAAmB,CAAC4B,cAAc,CAACxB,aAAa,CAAC;;IAE3E;IACA,MAAMO,KAAK,GAAG,MAAML,QAAQ,EAAE;IAC9B,IAAIK,KAAK,EAAE;MACTc,kBAAM,CAACI,GAAG,CAAC,4BAA4B,EAAE,mBAAmB,EAAElB,KAAK,CAAC;MACpE,MAAMP,aAAa,CAACO,KAAK,CAAC;IAC5B;EACF,CAAC,CAAC;EAEF,MAAMmB,iCAAiC,GAAG,IAAAV,4BAAgB,EAAC,YAAY;IAAA,IAAAW,qBAAA;IACrE;IACA,CAAAA,qBAAA,GAAA7B,eAAe,CAACyB,OAAO,cAAAI,qBAAA,uBAAvBA,qBAAA,CAAAC,IAAA,CAAA9B,eAAe,CAAY;;IAE3B;IACA,MAAMS,KAAK,GAAG,MAAML,QAAQ,EAAE;IAC9B,IAAIK,KAAK,EAAE;MACT,MAAMN,eAAe,CAACM,KAAK,CAAC;MAC5Bc,kBAAM,CAACI,GAAG,CAAC,4BAA4B,EAAE,qBAAqB,EAAElB,KAAK,CAAC;IACxE;EACF,CAAC,CAAC;EAEF,OAAO;IAAEQ,+BAA+B;IAAEW;EAAkC,CAAC;AAC/E,CAAC;AAAC,IAAAG,QAAA,GAEapC,wBAAwB;AAAAqC,OAAA,CAAArB,OAAA,GAAAoB,QAAA"}
|
|
@@ -4,11 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var
|
|
7
|
+
var _locale = require("date-fns/locale");
|
|
8
8
|
var _createBaseStringSet = require("./createBaseStringSet");
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
9
|
const StringSetEn = (0, _createBaseStringSet.createBaseStringSet)({
|
|
11
|
-
dateLocale:
|
|
10
|
+
dateLocale: _locale.enUS
|
|
12
11
|
});
|
|
13
12
|
var _default = StringSetEn;
|
|
14
13
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_locale","require","_createBaseStringSet","StringSetEn","createBaseStringSet","dateLocale","enUS","_default","exports","default"],"sources":["StringSet.en.ts"],"sourcesContent":["import { enUS } from 'date-fns/locale';\n\nimport { createBaseStringSet } from './createBaseStringSet';\n\nconst StringSetEn = createBaseStringSet({ dateLocale: enUS });\n\nexport default StringSetEn;\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,oBAAA,GAAAD,OAAA;AAEA,MAAME,WAAW,GAAG,IAAAC,wCAAmB,EAAC;EAAEC,UAAU,EAAEC;AAAK,CAAC,CAAC;AAAC,IAAAC,QAAA,GAE/CJ,WAAW;AAAAK,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
package/lib/commonjs/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["VERSION","_default","exports","default"],"sources":["version.ts"],"sourcesContent":["const VERSION = '3.7.
|
|
1
|
+
{"version":3,"names":["VERSION","_default","exports","default"],"sources":["version.ts"],"sourcesContent":["const VERSION = '3.7.3';\nexport default VERSION;\n"],"mappings":";;;;;;AAAA,MAAMA,OAAO,GAAG,OAAO;AAAC,IAAAC,QAAA,GACTD,OAAO;AAAAE,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
package/lib/module/components/GroupChannelMessageRenderer/GroupChannelMessageDateSeparator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isSameDay","React","View","Text","createStyleSheet","useUIKitTheme","useLocalization","GroupChannelMessageDateSeparator","_ref","message","prevMessage","STRINGS","colors","sameDay","createdAt","createElement","style","styles","container","view","backgroundColor","ui","dateSeparator","default","none","background","caption1","color","text","GROUP_CHANNEL","LIST_DATE_SEPARATOR","Date","alignItems","marginVertical","borderRadius","paddingVertical","paddingHorizontal"],"sources":["GroupChannelMessageDateSeparator.tsx"],"sourcesContent":["import isSameDay from 'date-fns
|
|
1
|
+
{"version":3,"names":["isSameDay","React","View","Text","createStyleSheet","useUIKitTheme","useLocalization","GroupChannelMessageDateSeparator","_ref","message","prevMessage","STRINGS","colors","sameDay","createdAt","createElement","style","styles","container","view","backgroundColor","ui","dateSeparator","default","none","background","caption1","color","text","GROUP_CHANNEL","LIST_DATE_SEPARATOR","Date","alignItems","marginVertical","borderRadius","paddingVertical","paddingHorizontal"],"sources":["GroupChannelMessageDateSeparator.tsx"],"sourcesContent":["import { isSameDay } from 'date-fns';\nimport React from 'react';\nimport { View } from 'react-native';\n\nimport { Text, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport type { SendbirdMessage } from '@sendbird/uikit-utils';\n\nimport { useLocalization } from '../../hooks/useContext';\n\nconst GroupChannelMessageDateSeparator = ({\n message,\n prevMessage,\n}: {\n message: SendbirdMessage;\n prevMessage?: SendbirdMessage;\n}) => {\n const { STRINGS } = useLocalization();\n const { colors } = useUIKitTheme();\n\n const sameDay = isSameDay(message.createdAt, prevMessage?.createdAt ?? 0);\n if (sameDay) return null;\n\n return (\n <View style={styles.container}>\n <View style={[styles.view, { backgroundColor: colors.ui.dateSeparator.default.none.background }]}>\n <Text caption1 color={colors.ui.dateSeparator.default.none.text}>\n {STRINGS.GROUP_CHANNEL.LIST_DATE_SEPARATOR(new Date(message.createdAt))}\n </Text>\n </View>\n </View>\n );\n};\n\nconst styles = createStyleSheet({\n container: {\n alignItems: 'center',\n marginVertical: 16,\n },\n view: {\n borderRadius: 10,\n paddingVertical: 4,\n paddingHorizontal: 10,\n },\n});\n\nexport default GroupChannelMessageDateSeparator;\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,UAAU;AACpC,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AAEnC,SAASC,IAAI,EAAEC,gBAAgB,EAAEC,aAAa,QAAQ,yCAAyC;AAG/F,SAASC,eAAe,QAAQ,wBAAwB;AAExD,MAAMC,gCAAgC,GAAGC,IAAA,IAMnC;EAAA,IANoC;IACxCC,OAAO;IACPC;EAIF,CAAC,GAAAF,IAAA;EACC,MAAM;IAAEG;EAAQ,CAAC,GAAGL,eAAe,EAAE;EACrC,MAAM;IAAEM;EAAO,CAAC,GAAGP,aAAa,EAAE;EAElC,MAAMQ,OAAO,GAAGb,SAAS,CAACS,OAAO,CAACK,SAAS,EAAE,CAAAJ,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEI,SAAS,KAAI,CAAC,CAAC;EACzE,IAAID,OAAO,EAAE,OAAO,IAAI;EAExB,oBACEZ,KAAA,CAAAc,aAAA,CAACb,IAAI;IAACc,KAAK,EAAEC,MAAM,CAACC;EAAU,gBAC5BjB,KAAA,CAAAc,aAAA,CAACb,IAAI;IAACc,KAAK,EAAE,CAACC,MAAM,CAACE,IAAI,EAAE;MAAEC,eAAe,EAAER,MAAM,CAACS,EAAE,CAACC,aAAa,CAACC,OAAO,CAACC,IAAI,CAACC;IAAW,CAAC;EAAE,gBAC/FxB,KAAA,CAAAc,aAAA,CAACZ,IAAI;IAACuB,QAAQ;IAACC,KAAK,EAAEf,MAAM,CAACS,EAAE,CAACC,aAAa,CAACC,OAAO,CAACC,IAAI,CAACI;EAAK,GAC7DjB,OAAO,CAACkB,aAAa,CAACC,mBAAmB,CAAC,IAAIC,IAAI,CAACtB,OAAO,CAACK,SAAS,CAAC,CAAC,CAClE,CACF,CACF;AAEX,CAAC;AAED,MAAMG,MAAM,GAAGb,gBAAgB,CAAC;EAC9Bc,SAAS,EAAE;IACTc,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDd,IAAI,EAAE;IACJe,YAAY,EAAE,EAAE;IAChBC,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE;EACrB;AACF,CAAC,CAAC;AAEF,eAAe7B,gCAAgC"}
|
package/lib/module/components/OpenChannelMessageRenderer/OpenChannelMessageDateSeparator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isSameDay","React","View","Text","createStyleSheet","useUIKitTheme","useLocalization","OpenChannelMessageDateSeparator","_ref","message","prevMessage","STRINGS","colors","sameDay","createdAt","createElement","style","styles","container","view","backgroundColor","ui","dateSeparator","default","none","background","caption1","color","text","OPEN_CHANNEL","LIST_DATE_SEPARATOR","Date","alignItems","marginVertical","borderRadius","paddingVertical","paddingHorizontal"],"sources":["OpenChannelMessageDateSeparator.tsx"],"sourcesContent":["import isSameDay from 'date-fns
|
|
1
|
+
{"version":3,"names":["isSameDay","React","View","Text","createStyleSheet","useUIKitTheme","useLocalization","OpenChannelMessageDateSeparator","_ref","message","prevMessage","STRINGS","colors","sameDay","createdAt","createElement","style","styles","container","view","backgroundColor","ui","dateSeparator","default","none","background","caption1","color","text","OPEN_CHANNEL","LIST_DATE_SEPARATOR","Date","alignItems","marginVertical","borderRadius","paddingVertical","paddingHorizontal"],"sources":["OpenChannelMessageDateSeparator.tsx"],"sourcesContent":["import { isSameDay } from 'date-fns';\nimport React from 'react';\nimport { View } from 'react-native';\n\nimport { Text, createStyleSheet, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\nimport type { SendbirdMessage } from '@sendbird/uikit-utils';\n\nimport { useLocalization } from '../../hooks/useContext';\n\nconst OpenChannelMessageDateSeparator = ({\n message,\n prevMessage,\n}: {\n message: SendbirdMessage;\n prevMessage?: SendbirdMessage;\n}) => {\n const { STRINGS } = useLocalization();\n const { colors } = useUIKitTheme();\n\n const sameDay = isSameDay(message.createdAt, prevMessage?.createdAt ?? 0);\n if (sameDay) return null;\n\n return (\n <View style={styles.container}>\n <View style={[styles.view, { backgroundColor: colors.ui.dateSeparator.default.none.background }]}>\n <Text caption1 color={colors.ui.dateSeparator.default.none.text}>\n {STRINGS.OPEN_CHANNEL.LIST_DATE_SEPARATOR(new Date(message.createdAt))}\n </Text>\n </View>\n </View>\n );\n};\n\nconst styles = createStyleSheet({\n container: {\n alignItems: 'center',\n marginVertical: 16,\n },\n view: {\n borderRadius: 10,\n paddingVertical: 4,\n paddingHorizontal: 10,\n },\n});\n\nexport default OpenChannelMessageDateSeparator;\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,UAAU;AACpC,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AAEnC,SAASC,IAAI,EAAEC,gBAAgB,EAAEC,aAAa,QAAQ,yCAAyC;AAG/F,SAASC,eAAe,QAAQ,wBAAwB;AAExD,MAAMC,+BAA+B,GAAGC,IAAA,IAMlC;EAAA,IANmC;IACvCC,OAAO;IACPC;EAIF,CAAC,GAAAF,IAAA;EACC,MAAM;IAAEG;EAAQ,CAAC,GAAGL,eAAe,EAAE;EACrC,MAAM;IAAEM;EAAO,CAAC,GAAGP,aAAa,EAAE;EAElC,MAAMQ,OAAO,GAAGb,SAAS,CAACS,OAAO,CAACK,SAAS,EAAE,CAAAJ,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEI,SAAS,KAAI,CAAC,CAAC;EACzE,IAAID,OAAO,EAAE,OAAO,IAAI;EAExB,oBACEZ,KAAA,CAAAc,aAAA,CAACb,IAAI;IAACc,KAAK,EAAEC,MAAM,CAACC;EAAU,gBAC5BjB,KAAA,CAAAc,aAAA,CAACb,IAAI;IAACc,KAAK,EAAE,CAACC,MAAM,CAACE,IAAI,EAAE;MAAEC,eAAe,EAAER,MAAM,CAACS,EAAE,CAACC,aAAa,CAACC,OAAO,CAACC,IAAI,CAACC;IAAW,CAAC;EAAE,gBAC/FxB,KAAA,CAAAc,aAAA,CAACZ,IAAI;IAACuB,QAAQ;IAACC,KAAK,EAAEf,MAAM,CAACS,EAAE,CAACC,aAAa,CAACC,OAAO,CAACC,IAAI,CAACI;EAAK,GAC7DjB,OAAO,CAACkB,YAAY,CAACC,mBAAmB,CAAC,IAAIC,IAAI,CAACtB,OAAO,CAACK,SAAS,CAAC,CAAC,CACjE,CACF,CACF;AAEX,CAAC;AAED,MAAMG,MAAM,GAAGb,gBAAgB,CAAC;EAC9Bc,SAAS,EAAE;IACTc,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDd,IAAI,EAAE;IACJe,YAAY,EAAE,EAAE;IAChBC,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE;EACrB;AACF,CAAC,CAAC;AAEF,eAAe7B,+BAA+B"}
|
|
@@ -33,24 +33,27 @@ const usePushTokenRegistration = () => {
|
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
// Register
|
|
36
|
+
// Register token refresh listener
|
|
37
|
+
refreshListener.current = notificationService.onTokenRefresh(registerToken);
|
|
38
|
+
|
|
39
|
+
// Register token
|
|
37
40
|
const token = await getToken();
|
|
38
41
|
if (token) {
|
|
39
42
|
Logger.log('[usePushTokenRegistration]', 'registered token:', token);
|
|
40
|
-
registerToken(token);
|
|
43
|
+
await registerToken(token);
|
|
41
44
|
}
|
|
42
|
-
|
|
43
|
-
// Remove listener
|
|
44
|
-
refreshListener.current = notificationService.onTokenRefresh(registerToken);
|
|
45
45
|
});
|
|
46
46
|
const unregisterPushTokenForCurrentUser = useFreshCallback(async () => {
|
|
47
47
|
var _refreshListener$curr;
|
|
48
|
+
// Unregister token refresh listener
|
|
49
|
+
(_refreshListener$curr = refreshListener.current) === null || _refreshListener$curr === void 0 ? void 0 : _refreshListener$curr.call(refreshListener);
|
|
50
|
+
|
|
51
|
+
// Unregister token
|
|
48
52
|
const token = await getToken();
|
|
49
53
|
if (token) {
|
|
50
|
-
unregisterToken(token);
|
|
54
|
+
await unregisterToken(token);
|
|
51
55
|
Logger.log('[usePushTokenRegistration]', 'unregistered token:', token);
|
|
52
56
|
}
|
|
53
|
-
(_refreshListener$curr = refreshListener.current) === null || _refreshListener$curr === void 0 ? void 0 : _refreshListener$curr.call(refreshListener);
|
|
54
57
|
});
|
|
55
58
|
return {
|
|
56
59
|
registerPushTokenForCurrentUser,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useRef","Platform","Logger","useFreshCallback","useIIFE","usePlatformService","useSendbirdChat","usePushTokenRegistration","sdk","notificationService","refreshListener","registerToken","unregisterToken","getToken","select","ios","token","registerAPNSPushTokenForCurrentUser","default","registerFCMPushTokenForCurrentUser","unregisterAPNSPushTokenForCurrentUser","unregisterFCMPushTokenForCurrentUser","getAPNSToken","getFCMToken","registerPushTokenForCurrentUser","hasPermission","hasPushPermission","pushPermission","requestPushPermission","warn","
|
|
1
|
+
{"version":3,"names":["useRef","Platform","Logger","useFreshCallback","useIIFE","usePlatformService","useSendbirdChat","usePushTokenRegistration","sdk","notificationService","refreshListener","registerToken","unregisterToken","getToken","select","ios","token","registerAPNSPushTokenForCurrentUser","default","registerFCMPushTokenForCurrentUser","unregisterAPNSPushTokenForCurrentUser","unregisterFCMPushTokenForCurrentUser","getAPNSToken","getFCMToken","registerPushTokenForCurrentUser","hasPermission","hasPushPermission","pushPermission","requestPushPermission","warn","current","onTokenRefresh","log","unregisterPushTokenForCurrentUser","_refreshListener$curr","call"],"sources":["usePushTokenRegistration.ts"],"sourcesContent":["import { useRef } from 'react';\nimport { Platform } from 'react-native';\n\nimport { Logger, useFreshCallback, useIIFE } from '@sendbird/uikit-utils';\n\nimport { usePlatformService, useSendbirdChat } from './useContext';\n\nconst usePushTokenRegistration = () => {\n const { sdk } = useSendbirdChat();\n const { notificationService } = usePlatformService();\n\n const refreshListener = useRef<() => void>();\n const [registerToken, unregisterToken, getToken] = useIIFE(() => {\n return [\n Platform.select({\n ios: (token: string) => sdk.registerAPNSPushTokenForCurrentUser(token),\n default: (token: string) => sdk.registerFCMPushTokenForCurrentUser(token),\n }),\n Platform.select({\n ios: (token: string) => sdk.unregisterAPNSPushTokenForCurrentUser(token),\n default: (token: string) => sdk.unregisterFCMPushTokenForCurrentUser(token),\n }),\n Platform.select({\n ios: notificationService.getAPNSToken,\n default: notificationService.getFCMToken,\n }),\n ];\n });\n\n const registerPushTokenForCurrentUser = useFreshCallback(async () => {\n // Check and request push permission\n const hasPermission = await notificationService.hasPushPermission();\n if (!hasPermission) {\n const pushPermission = await notificationService.requestPushPermission();\n if (!pushPermission) {\n Logger.warn('[usePushTokenRegistration]', 'Not granted push permission');\n return;\n }\n }\n\n // Register token refresh listener\n refreshListener.current = notificationService.onTokenRefresh(registerToken);\n\n // Register token\n const token = await getToken();\n if (token) {\n Logger.log('[usePushTokenRegistration]', 'registered token:', token);\n await registerToken(token);\n }\n });\n\n const unregisterPushTokenForCurrentUser = useFreshCallback(async () => {\n // Unregister token refresh listener\n refreshListener.current?.();\n\n // Unregister token\n const token = await getToken();\n if (token) {\n await unregisterToken(token);\n Logger.log('[usePushTokenRegistration]', 'unregistered token:', token);\n }\n });\n\n return { registerPushTokenForCurrentUser, unregisterPushTokenForCurrentUser };\n};\n\nexport default usePushTokenRegistration;\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,OAAO;AAC9B,SAASC,QAAQ,QAAQ,cAAc;AAEvC,SAASC,MAAM,EAAEC,gBAAgB,EAAEC,OAAO,QAAQ,uBAAuB;AAEzE,SAASC,kBAAkB,EAAEC,eAAe,QAAQ,cAAc;AAElE,MAAMC,wBAAwB,GAAGA,CAAA,KAAM;EACrC,MAAM;IAAEC;EAAI,CAAC,GAAGF,eAAe,EAAE;EACjC,MAAM;IAAEG;EAAoB,CAAC,GAAGJ,kBAAkB,EAAE;EAEpD,MAAMK,eAAe,GAAGV,MAAM,EAAc;EAC5C,MAAM,CAACW,aAAa,EAAEC,eAAe,EAAEC,QAAQ,CAAC,GAAGT,OAAO,CAAC,MAAM;IAC/D,OAAO,CACLH,QAAQ,CAACa,MAAM,CAAC;MACdC,GAAG,EAAGC,KAAa,IAAKR,GAAG,CAACS,mCAAmC,CAACD,KAAK,CAAC;MACtEE,OAAO,EAAGF,KAAa,IAAKR,GAAG,CAACW,kCAAkC,CAACH,KAAK;IAC1E,CAAC,CAAC,EACFf,QAAQ,CAACa,MAAM,CAAC;MACdC,GAAG,EAAGC,KAAa,IAAKR,GAAG,CAACY,qCAAqC,CAACJ,KAAK,CAAC;MACxEE,OAAO,EAAGF,KAAa,IAAKR,GAAG,CAACa,oCAAoC,CAACL,KAAK;IAC5E,CAAC,CAAC,EACFf,QAAQ,CAACa,MAAM,CAAC;MACdC,GAAG,EAAEN,mBAAmB,CAACa,YAAY;MACrCJ,OAAO,EAAET,mBAAmB,CAACc;IAC/B,CAAC,CAAC,CACH;EACH,CAAC,CAAC;EAEF,MAAMC,+BAA+B,GAAGrB,gBAAgB,CAAC,YAAY;IACnE;IACA,MAAMsB,aAAa,GAAG,MAAMhB,mBAAmB,CAACiB,iBAAiB,EAAE;IACnE,IAAI,CAACD,aAAa,EAAE;MAClB,MAAME,cAAc,GAAG,MAAMlB,mBAAmB,CAACmB,qBAAqB,EAAE;MACxE,IAAI,CAACD,cAAc,EAAE;QACnBzB,MAAM,CAAC2B,IAAI,CAAC,4BAA4B,EAAE,6BAA6B,CAAC;QACxE;MACF;IACF;;IAEA;IACAnB,eAAe,CAACoB,OAAO,GAAGrB,mBAAmB,CAACsB,cAAc,CAACpB,aAAa,CAAC;;IAE3E;IACA,MAAMK,KAAK,GAAG,MAAMH,QAAQ,EAAE;IAC9B,IAAIG,KAAK,EAAE;MACTd,MAAM,CAAC8B,GAAG,CAAC,4BAA4B,EAAE,mBAAmB,EAAEhB,KAAK,CAAC;MACpE,MAAML,aAAa,CAACK,KAAK,CAAC;IAC5B;EACF,CAAC,CAAC;EAEF,MAAMiB,iCAAiC,GAAG9B,gBAAgB,CAAC,YAAY;IAAA,IAAA+B,qBAAA;IACrE;IACA,CAAAA,qBAAA,GAAAxB,eAAe,CAACoB,OAAO,cAAAI,qBAAA,uBAAvBA,qBAAA,CAAAC,IAAA,CAAAzB,eAAe,CAAY;;IAE3B;IACA,MAAMM,KAAK,GAAG,MAAMH,QAAQ,EAAE;IAC9B,IAAIG,KAAK,EAAE;MACT,MAAMJ,eAAe,CAACI,KAAK,CAAC;MAC5Bd,MAAM,CAAC8B,GAAG,CAAC,4BAA4B,EAAE,qBAAqB,EAAEhB,KAAK,CAAC;IACxE;EACF,CAAC,CAAC;EAEF,OAAO;IAAEQ,+BAA+B;IAAES;EAAkC,CAAC;AAC/E,CAAC;AAED,eAAe1B,wBAAwB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { enUS } from 'date-fns/locale';
|
|
2
2
|
import { createBaseStringSet } from './createBaseStringSet';
|
|
3
3
|
const StringSetEn = createBaseStringSet({
|
|
4
|
-
dateLocale
|
|
4
|
+
dateLocale: enUS
|
|
5
5
|
});
|
|
6
6
|
export default StringSetEn;
|
|
7
7
|
//# sourceMappingURL=StringSet.en.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["enUS","createBaseStringSet","StringSetEn","dateLocale"],"sources":["StringSet.en.ts"],"sourcesContent":["import { enUS } from 'date-fns/locale';\n\nimport { createBaseStringSet } from './createBaseStringSet';\n\nconst StringSetEn = createBaseStringSet({ dateLocale: enUS });\n\nexport default StringSetEn;\n"],"mappings":"AAAA,SAASA,IAAI,QAAQ,iBAAiB;AAEtC,SAASC,mBAAmB,QAAQ,uBAAuB;AAE3D,MAAMC,WAAW,GAAGD,mBAAmB,CAAC;EAAEE,UAAU,EAAEH;AAAK,CAAC,CAAC;AAE7D,eAAeE,WAAW"}
|
package/lib/module/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["VERSION"],"sources":["version.ts"],"sourcesContent":["const VERSION = '3.7.
|
|
1
|
+
{"version":3,"names":["VERSION"],"sources":["version.ts"],"sourcesContent":["const VERSION = '3.7.3';\nexport default VERSION;\n"],"mappings":"AAAA,MAAMA,OAAO,GAAG,OAAO;AACvB,eAAeA,OAAO"}
|
|
@@ -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.7.
|
|
17
|
+
VERSION: "3.7.3";
|
|
18
18
|
PLATFORM: string;
|
|
19
19
|
DEFAULT: {
|
|
20
20
|
AUTO_PUSH_TOKEN_REGISTRATION: boolean;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
declare const _default: React.MemoExoticComponent<({ inputDisabled, ...props }: import("@sendbird/uikit-utils").PickPartial<import("../../../components/ChannelInput").ChannelInputProps, "
|
|
2
|
+
declare const _default: React.MemoExoticComponent<({ inputDisabled, ...props }: import("@sendbird/uikit-utils").PickPartial<import("../../../components/ChannelInput").ChannelInputProps, "shouldRenderInput" | "onPressSendUserMessage" | "onPressSendFileMessage" | "onPressUpdateUserMessage" | "onPressUpdateFileMessage" | "SuggestedMentionList" | "AttachmentsButton", "inputDisabled">) => React.JSX.Element>;
|
|
3
3
|
export default _default;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
declare const _default: React.MemoExoticComponent<(props: Pick<import("../../../components/ChannelMessageList").ChannelMessageListProps<import("@sendbird/chat/groupChannel").GroupChannel>, "channel" | "
|
|
2
|
+
declare const _default: React.MemoExoticComponent<(props: Pick<import("../../../components/ChannelMessageList").ChannelMessageListProps<import("@sendbird/chat/groupChannel").GroupChannel>, "channel" | "onBottomReached" | "onTopReached" | "onScrolledAwayFromBottom" | "currentUserId" | "enableMessageGrouping" | "searchItem" | "hasNext" | "onDeleteMessage" | "onResendFailedMessage" | "onPressMediaMessage" | "renderNewMessagesButton" | "renderScrollToBottomButton" | "renderMessage" | "messages" | "newMessages" | "scrolledAwayFromBottom" | "flatListProps"> & {
|
|
3
3
|
onResetMessageList: () => Promise<void>;
|
|
4
4
|
onResetMessageListWithStartingPoint: (startingPoint: number) => Promise<void>;
|
|
5
5
|
onUpdateSearchItem: (searchItem?: {
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
declare const _default: React.MemoExoticComponent<({ inputDisabled, ...props }: import("@sendbird/uikit-utils").PickPartial<import("../../../components/ChannelInput").ChannelInputProps, "
|
|
2
|
+
declare const _default: React.MemoExoticComponent<({ inputDisabled, ...props }: import("@sendbird/uikit-utils").PickPartial<import("../../../components/ChannelInput").ChannelInputProps, "shouldRenderInput" | "onPressSendUserMessage" | "onPressSendFileMessage" | "onPressUpdateUserMessage" | "onPressUpdateFileMessage" | "SuggestedMentionList" | "AttachmentsButton", "inputDisabled">) => React.JSX.Element>;
|
|
3
3
|
export default _default;
|
package/lib/typescript/src/domain/groupChannelThread/component/GroupChannelThreadMessageList.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
declare const _default: React.MemoExoticComponent<(props: Pick<import("../../../components/ChannelThreadMessageList").ChannelThreadMessageListProps<import("@sendbird/chat/groupChannel").GroupChannel>, "channel" | "
|
|
2
|
+
declare const _default: React.MemoExoticComponent<(props: Pick<import("../../../components/ChannelThreadMessageList").ChannelThreadMessageListProps<import("@sendbird/chat/groupChannel").GroupChannel>, "channel" | "onBottomReached" | "onTopReached" | "onScrolledAwayFromBottom" | "currentUserId" | "enableMessageGrouping" | "searchItem" | "hasNext" | "onDeleteMessage" | "onResendFailedMessage" | "onPressMediaMessage" | "renderMessage" | "messages" | "newMessages" | "scrolledAwayFromBottom" | "flatListProps"> & {
|
|
3
3
|
onResetMessageList: () => Promise<void>;
|
|
4
4
|
onResetMessageListWithStartingPoint: (startingPoint: number) => Promise<void>;
|
|
5
5
|
startingPoint?: number | undefined;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
declare const _default: React.MemoExoticComponent<({ inputDisabled, ...props }: import("@sendbird/uikit-utils").PickPartial<import("../../../components/ChannelInput").ChannelInputProps, "
|
|
2
|
+
declare const _default: React.MemoExoticComponent<({ inputDisabled, ...props }: import("@sendbird/uikit-utils").PickPartial<import("../../../components/ChannelInput").ChannelInputProps, "shouldRenderInput" | "onPressSendUserMessage" | "onPressSendFileMessage" | "onPressUpdateUserMessage" | "onPressUpdateFileMessage" | "AttachmentsButton", "inputDisabled">) => React.JSX.Element>;
|
|
3
3
|
export default _default;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
declare const _default: React.MemoExoticComponent<(props: Pick<import("../../../components/ChannelMessageList").ChannelMessageListProps<import("@sendbird/chat/openChannel").OpenChannel>, "channel" | "
|
|
2
|
+
declare const _default: React.MemoExoticComponent<(props: Pick<import("../../../components/ChannelMessageList").ChannelMessageListProps<import("@sendbird/chat/openChannel").OpenChannel>, "channel" | "onBottomReached" | "onTopReached" | "onScrolledAwayFromBottom" | "currentUserId" | "enableMessageGrouping" | "hasNext" | "onDeleteMessage" | "onResendFailedMessage" | "onPressMediaMessage" | "renderNewMessagesButton" | "renderScrollToBottomButton" | "renderMessage" | "messages" | "newMessages" | "scrolledAwayFromBottom" | "flatListProps">) => React.JSX.Element>;
|
|
3
3
|
export default _default;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const VERSION = "3.7.
|
|
1
|
+
declare const VERSION = "3.7.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.7.
|
|
3
|
+
"version": "3.7.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.7.
|
|
64
|
-
"@sendbird/uikit-react-native-foundation": "3.7.
|
|
63
|
+
"@sendbird/uikit-chat-hooks": "3.7.3",
|
|
64
|
+
"@sendbird/uikit-react-native-foundation": "3.7.3",
|
|
65
65
|
"@sendbird/uikit-tools": "0.0.1-alpha.77",
|
|
66
|
-
"@sendbird/uikit-utils": "3.7.
|
|
66
|
+
"@sendbird/uikit-utils": "3.7.3"
|
|
67
67
|
},
|
|
68
68
|
"devDependencies": {
|
|
69
69
|
"@bam.tech/react-native-image-resizer": "^3.0.4",
|
|
@@ -75,7 +75,7 @@
|
|
|
75
75
|
"@react-native-firebase/messaging": "^14.4.0",
|
|
76
76
|
"@types/react": "*",
|
|
77
77
|
"@types/react-native": "*",
|
|
78
|
-
"date-fns": "
|
|
78
|
+
"date-fns": ">=2.28.0",
|
|
79
79
|
"expo-av": "^13.2.1",
|
|
80
80
|
"expo-clipboard": "^4.1.2",
|
|
81
81
|
"expo-document-picker": "^11.5.3",
|
|
@@ -208,5 +208,5 @@
|
|
|
208
208
|
]
|
|
209
209
|
]
|
|
210
210
|
},
|
|
211
|
-
"gitHead": "
|
|
211
|
+
"gitHead": "c6efa80d5e1859100d6cb02c239f0a2c45eec860"
|
|
212
212
|
}
|
|
@@ -38,24 +38,27 @@ const usePushTokenRegistration = () => {
|
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
// Register
|
|
41
|
+
// Register token refresh listener
|
|
42
|
+
refreshListener.current = notificationService.onTokenRefresh(registerToken);
|
|
43
|
+
|
|
44
|
+
// Register token
|
|
42
45
|
const token = await getToken();
|
|
43
46
|
if (token) {
|
|
44
47
|
Logger.log('[usePushTokenRegistration]', 'registered token:', token);
|
|
45
|
-
registerToken(token);
|
|
48
|
+
await registerToken(token);
|
|
46
49
|
}
|
|
47
|
-
|
|
48
|
-
// Remove listener
|
|
49
|
-
refreshListener.current = notificationService.onTokenRefresh(registerToken);
|
|
50
50
|
});
|
|
51
51
|
|
|
52
52
|
const unregisterPushTokenForCurrentUser = useFreshCallback(async () => {
|
|
53
|
+
// Unregister token refresh listener
|
|
54
|
+
refreshListener.current?.();
|
|
55
|
+
|
|
56
|
+
// Unregister token
|
|
53
57
|
const token = await getToken();
|
|
54
58
|
if (token) {
|
|
55
|
-
unregisterToken(token);
|
|
59
|
+
await unregisterToken(token);
|
|
56
60
|
Logger.log('[usePushTokenRegistration]', 'unregistered token:', token);
|
|
57
61
|
}
|
|
58
|
-
refreshListener.current?.();
|
|
59
62
|
});
|
|
60
63
|
|
|
61
64
|
return { registerPushTokenForCurrentUser, unregisterPushTokenForCurrentUser };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { enUS } from 'date-fns/locale';
|
|
2
2
|
|
|
3
3
|
import { createBaseStringSet } from './createBaseStringSet';
|
|
4
4
|
|
|
5
|
-
const StringSetEn = createBaseStringSet({ dateLocale });
|
|
5
|
+
const StringSetEn = createBaseStringSet({ dateLocale: enUS });
|
|
6
6
|
|
|
7
7
|
export default StringSetEn;
|
package/src/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const VERSION = '3.7.
|
|
1
|
+
const VERSION = '3.7.3';
|
|
2
2
|
export default VERSION;
|