@viewberapp/chat 0.1.14 → 0.1.17

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.
Files changed (75) hide show
  1. package/LICENSE +20 -20
  2. package/dist/API.d.ts +93 -91
  3. package/dist/API.js +243 -241
  4. package/dist/API.js.map +1 -1
  5. package/dist/CachedChat.d.ts +67 -64
  6. package/dist/CachedChat.js +248 -241
  7. package/dist/CachedChat.js.map +1 -1
  8. package/dist/Chat.d.ts +66 -66
  9. package/dist/Chat.js +273 -270
  10. package/dist/Chat.js.map +1 -1
  11. package/dist/ChatError.d.ts +4 -4
  12. package/dist/ChatError.js +2 -2
  13. package/dist/ChatSubscription.d.ts +84 -82
  14. package/dist/ChatSubscription.js +134 -128
  15. package/dist/ChatSubscription.js.map +1 -1
  16. package/dist/Message.d.ts +25 -25
  17. package/dist/Message.js +35 -35
  18. package/dist/OnlineUser.d.ts +8 -8
  19. package/dist/OnlineUser.js +9 -9
  20. package/dist/PendingMessage.d.ts +23 -23
  21. package/dist/PendingMessage.js +23 -23
  22. package/dist/index.d.ts +8 -8
  23. package/dist/index.js +27 -27
  24. package/dist/logger/ConsoleLogger.d.ts +8 -8
  25. package/dist/logger/ConsoleLogger.js +20 -20
  26. package/dist/logger/ConsoleLogger.js.map +1 -1
  27. package/dist/logger/NullLogger.d.ts +8 -8
  28. package/dist/logger/NullLogger.js +10 -10
  29. package/dist/logger/NullLogger.js.map +1 -1
  30. package/dist/logger/RollbarLogger.d.ts +11 -11
  31. package/dist/logger/RollbarLogger.js +23 -23
  32. package/dist/logger/RollbarLogger.js.map +1 -1
  33. package/dist/logger/index.d.ts +12 -12
  34. package/dist/logger/index.js +12 -12
  35. package/dist/logger/index.js.map +1 -1
  36. package/dist/react/components/AdminMessage.d.ts +6 -6
  37. package/dist/react/components/AdminMessage.js +59 -59
  38. package/dist/react/components/ConnectionAndChannelStatusLabel.d.ts +7 -7
  39. package/dist/react/components/ConnectionAndChannelStatusLabel.js +59 -59
  40. package/dist/react/components/Message.d.ts +23 -23
  41. package/dist/react/components/Message.js +87 -87
  42. package/dist/react/components/MessageDateTime.d.ts +8 -8
  43. package/dist/react/components/MessageDateTime.js +31 -31
  44. package/dist/react/components/MessageList.d.ts +46 -46
  45. package/dist/react/components/MessageList.js +107 -107
  46. package/dist/react/components/MessageRow.d.ts +5 -5
  47. package/dist/react/components/MessageRow.js +34 -34
  48. package/dist/react/components/index.d.ts +6 -6
  49. package/dist/react/components/index.js +13 -13
  50. package/dist/react/index.d.ts +3 -3
  51. package/dist/react/index.js +16 -16
  52. package/dist/react/useAppointmentChat.d.ts +3 -3
  53. package/dist/react/useAppointmentChat.js +10 -10
  54. package/dist/react/useChat.d.ts +40 -38
  55. package/dist/react/useChat.js +127 -125
  56. package/dist/react/useChat.js.map +1 -1
  57. package/dist/react/useRealtimeTotalUserUnreadChatMessages.d.ts +13 -12
  58. package/dist/react/useRealtimeTotalUserUnreadChatMessages.js +138 -137
  59. package/dist/react/useRealtimeTotalUserUnreadChatMessages.js.map +1 -1
  60. package/dist/util/getLatestMessage.d.ts +3 -3
  61. package/dist/util/getLatestMessage.js +17 -17
  62. package/dist/util/groupMessages.d.ts +8 -8
  63. package/dist/util/groupMessages.js +30 -30
  64. package/dist/util/index.d.ts +4 -4
  65. package/dist/util/index.js +9 -9
  66. package/dist/util/isNil.d.ts +1 -1
  67. package/dist/util/isNil.js +7 -7
  68. package/dist/util/jwtTokenChanged.d.ts +1 -1
  69. package/dist/util/jwtTokenChanged.js +10 -10
  70. package/dist/util/useIsMounted.d.ts +1 -1
  71. package/dist/util/useIsMounted.js +13 -13
  72. package/package.json +2 -2
  73. package/dist/util/getLatestMessageId.d.ts +0 -3
  74. package/dist/util/getLatestMessageId.js +0 -18
  75. package/dist/util/getLatestMessageId.js.map +0 -1
@@ -1,126 +1,128 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const react_1 = require("react");
7
- const isNil_1 = require("../util/isNil");
8
- const Chat_1 = __importDefault(require("../Chat"));
9
- const useIsMounted_1 = require("../util/useIsMounted");
10
- const useChat = (id, { idType, onMessages } = {}) => {
11
- const isMounted = (0, useIsMounted_1.useIsMounted)();
12
- const [subscription, setSubscription] = (0, react_1.useState)();
13
- const [status, setStatus] = (0, react_1.useState)({
14
- status: 'not_initialized'
15
- });
16
- const [messages, setMessages] = (0, react_1.useState)([]);
17
- const [onlineUsers, setOnlineUsers] = (0, react_1.useState)([]);
18
- const [subscriptionStatus, setSubscriptionStatus] = (0, react_1.useState)();
19
- const [channelStatus, setChannelStatus] = (0, react_1.useState)();
20
- const [connectionStatus, setConnectionStatus] = (0, react_1.useState)();
21
- const [getLatestMessagesStatus, setGetLatestMessagesStatus] = (0, react_1.useState)();
22
- const handleMessages = ({ messages }) => {
23
- setMessages(messages);
24
- if (onMessages)
25
- onMessages({ messages });
26
- };
27
- const handleHere = ({ users }) => {
28
- setOnlineUsers(users);
29
- };
30
- const handleUserJoining = ({ user, users }) => {
31
- setOnlineUsers(users);
32
- };
33
- const handleUserLeaving = ({ user, users }) => {
34
- setOnlineUsers(users);
35
- };
36
- const handleSubscriptionStatusChange = ({ status }) => {
37
- if (isMounted()) {
38
- setSubscriptionStatus(status);
39
- }
40
- };
41
- const handleChannelStatusChange = ({ status }) => {
42
- setChannelStatus(status);
43
- };
44
- const handleConnectionStatusChange = ({ status }) => {
45
- setConnectionStatus(status);
46
- };
47
- const handleGetLatestMessagesStatusChange = ({ status }) => {
48
- setGetLatestMessagesStatus(status);
49
- };
50
- const initializeChatSubscription = () => {
51
- if (status.status === 'initializing' || !(0, isNil_1.isNil)(subscription)) {
52
- if (!(0, isNil_1.isNil)(subscription) && status.status !== 'initialized') {
53
- setStatus({ status: 'initialized' });
54
- }
55
- ;
56
- return;
57
- }
58
- setStatus({ status: 'initializing' });
59
- Chat_1.default[idType === 'appointment' ? 'appointment' : 'get'](id).then(({ subscription, error }) => {
60
- if (error) {
61
- setStatus({ status: 'error', error });
62
- return;
63
- }
64
- setSubscription(subscription);
65
- }).catch((err) => {
66
- setStatus({
67
- status: 'error',
68
- error: {
69
- message: err.message || 'Error',
70
- code: 'error'
71
- }
72
- });
73
- });
74
- };
75
- (0, react_1.useEffect)(() => {
76
- initializeChatSubscription();
77
- }, []);
78
- (0, react_1.useEffect)(() => {
79
- if (subscription) {
80
- setStatus({ status: 'initialized' });
81
- setMessages(subscription.messages);
82
- setSubscriptionStatus(subscription.getStatus());
83
- setChannelStatus(subscription.getChannelStatus());
84
- setConnectionStatus(subscription.getConnectionStatus());
85
- setGetLatestMessagesStatus(subscription.getGetLatestMessagesStatus());
86
- subscription
87
- .on('here', handleHere)
88
- .on('userJoining', handleUserJoining)
89
- .on('userLeaving', handleUserLeaving)
90
- .on('messages', handleMessages)
91
- .on('statusChange', handleSubscriptionStatusChange)
92
- .on('channelStatusChange', handleChannelStatusChange)
93
- .on('connectionStatusChange', handleConnectionStatusChange)
94
- .on('getLatestMessagesStatusChange', handleGetLatestMessagesStatusChange);
95
- }
96
- return () => {
97
- subscription === null || subscription === void 0 ? void 0 : subscription.cancel();
98
- };
99
- }, [subscription]);
100
- return {
101
- status,
102
- messages,
103
- onlineUsers,
104
- subscriptionStatus,
105
- channelStatus,
106
- connectionStatus,
107
- getLatestMessagesStatus,
108
- initialize: initializeChatSubscription,
109
- sendMessage: (message) => subscription === null || subscription === void 0 ? void 0 : subscription.sendMessage(message),
110
- reportChat: (reason) => subscription === null || subscription === void 0 ? void 0 : subscription.reportChat(reason),
111
- isDisabledByAdmin: () => subscription === null || subscription === void 0 ? void 0 : subscription.isDisabledByAdmin(),
112
- sendPendingMessage: (pendingMessage) => subscription === null || subscription === void 0 ? void 0 : subscription.sendPendingMessage(pendingMessage),
113
- getLatestMessages: () => subscription === null || subscription === void 0 ? void 0 : subscription.getLatestMessages(),
114
- markMessagesReadUpTo: (message) => {
115
- if (subscription) {
116
- return subscription.markMessagesReadUpTo(message);
117
- }
118
- return Promise.resolve({ error: {
119
- message: 'The chat is not initialized',
120
- code: 'no_chat_subscription'
121
- } });
122
- }
123
- };
124
- };
125
- exports.default = useChat;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = require("react");
7
+ const isNil_1 = require("../util/isNil");
8
+ const Chat_1 = __importDefault(require("../Chat"));
9
+ const useIsMounted_1 = require("../util/useIsMounted");
10
+ const useChat = (id, { idType, onMessages } = {}) => {
11
+ const isMounted = (0, useIsMounted_1.useIsMounted)();
12
+ const [subscription, setSubscription] = (0, react_1.useState)();
13
+ const [status, setStatus] = (0, react_1.useState)({
14
+ status: 'not_initialized'
15
+ });
16
+ const [messages, setMessages] = (0, react_1.useState)([]);
17
+ const [onlineUsers, setOnlineUsers] = (0, react_1.useState)([]);
18
+ const [subscriptionStatus, setSubscriptionStatus] = (0, react_1.useState)();
19
+ const [channelStatus, setChannelStatus] = (0, react_1.useState)();
20
+ const [connectionStatus, setConnectionStatus] = (0, react_1.useState)();
21
+ const [getLatestMessagesStatus, setGetLatestMessagesStatus] = (0, react_1.useState)();
22
+ const handleMessages = ({ messages }) => {
23
+ setMessages(messages);
24
+ if (onMessages)
25
+ onMessages({ messages });
26
+ };
27
+ const handleHere = ({ users }) => {
28
+ setOnlineUsers(users);
29
+ };
30
+ const handleUserJoining = ({ user, users }) => {
31
+ setOnlineUsers(users);
32
+ };
33
+ const handleUserLeaving = ({ user, users }) => {
34
+ setOnlineUsers(users);
35
+ };
36
+ const handleSubscriptionStatusChange = ({ status }) => {
37
+ if (isMounted()) {
38
+ setSubscriptionStatus(status);
39
+ }
40
+ };
41
+ const handleChannelStatusChange = ({ status }) => {
42
+ setChannelStatus(status);
43
+ };
44
+ const handleConnectionStatusChange = ({ status }) => {
45
+ setConnectionStatus(status);
46
+ };
47
+ const handleGetLatestMessagesStatusChange = ({ status }) => {
48
+ setGetLatestMessagesStatus(status);
49
+ };
50
+ const initializeChatSubscription = () => {
51
+ if (status.status === 'initializing' || !(0, isNil_1.isNil)(subscription)) {
52
+ if (!(0, isNil_1.isNil)(subscription) && status.status !== 'initialized') {
53
+ setStatus({ status: 'initialized' });
54
+ }
55
+ ;
56
+ return;
57
+ }
58
+ setStatus({ status: 'initializing' });
59
+ Chat_1.default[idType === 'appointment' ? 'appointment' : 'get'](id).then(({ subscription, error }) => {
60
+ if (error) {
61
+ setStatus({ status: 'error', error });
62
+ return;
63
+ }
64
+ setSubscription(subscription);
65
+ }).catch((err) => {
66
+ setStatus({
67
+ status: 'error',
68
+ error: {
69
+ message: err.message || 'Error',
70
+ code: 'error'
71
+ }
72
+ });
73
+ });
74
+ };
75
+ (0, react_1.useEffect)(() => {
76
+ initializeChatSubscription();
77
+ }, []);
78
+ (0, react_1.useEffect)(() => {
79
+ if (subscription) {
80
+ setStatus({ status: 'initialized' });
81
+ setMessages(subscription.messages);
82
+ setSubscriptionStatus(subscription.getStatus());
83
+ setChannelStatus(subscription.getChannelStatus());
84
+ setConnectionStatus(subscription.getConnectionStatus());
85
+ setGetLatestMessagesStatus(subscription.getGetLatestMessagesStatus());
86
+ subscription
87
+ .on('here', handleHere)
88
+ .on('userJoining', handleUserJoining)
89
+ .on('userLeaving', handleUserLeaving)
90
+ .on('messages', handleMessages)
91
+ .on('statusChange', handleSubscriptionStatusChange)
92
+ .on('channelStatusChange', handleChannelStatusChange)
93
+ .on('connectionStatusChange', handleConnectionStatusChange)
94
+ .on('getLatestMessagesStatusChange', handleGetLatestMessagesStatusChange);
95
+ }
96
+ return () => {
97
+ subscription === null || subscription === void 0 ? void 0 : subscription.cancel();
98
+ };
99
+ }, [subscription]);
100
+ return {
101
+ status,
102
+ messages,
103
+ onlineUsers,
104
+ subscriptionStatus,
105
+ channelStatus,
106
+ connectionStatus,
107
+ getLatestMessagesStatus,
108
+ initialize: initializeChatSubscription,
109
+ sendMessage: (message) => subscription === null || subscription === void 0 ? void 0 : subscription.sendMessage(message),
110
+ reportChat: (reason) => subscription === null || subscription === void 0 ? void 0 : subscription.reportChat(reason),
111
+ isDisabledByAdmin: () => subscription === null || subscription === void 0 ? void 0 : subscription.isDisabledByAdmin(),
112
+ isMember: () => { var _a; return (_a = subscription === null || subscription === void 0 ? void 0 : subscription.isMember()) !== null && _a !== void 0 ? _a : true; },
113
+ setIsMember: (is_member) => subscription === null || subscription === void 0 ? void 0 : subscription.setIsMember(is_member),
114
+ sendPendingMessage: (pendingMessage) => subscription === null || subscription === void 0 ? void 0 : subscription.sendPendingMessage(pendingMessage),
115
+ getLatestMessages: () => subscription === null || subscription === void 0 ? void 0 : subscription.getLatestMessages(),
116
+ markMessagesReadUpTo: (message) => {
117
+ if (subscription) {
118
+ return subscription.markMessagesReadUpTo(message);
119
+ }
120
+ return Promise.resolve({ error: {
121
+ message: 'The chat is not initialized',
122
+ code: 'no_chat_subscription'
123
+ } });
124
+ }
125
+ };
126
+ };
127
+ exports.default = useChat;
126
128
  //# sourceMappingURL=useChat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useChat.js","sourceRoot":"","sources":["../../src/react/useChat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useChat.js","sourceRoot":"","sources":["../../src/react/useChat.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,13 @@
1
- import { ChannelStatus } from "../Chat";
2
- export interface UseRealtimeTotalUserUnreadChatMessagesOptions {
3
- appointmentId?: number;
4
- requireAppointmentId?: boolean;
5
- appointmentIsConfirmedForViewing?: boolean;
6
- __debug__?: boolean;
7
- }
8
- export interface UseRealtimeTotalUserUnreadChatMessagesReturnValue {
9
- channelStatus: ChannelStatus | undefined;
10
- totalUnreadMessages: number | undefined;
11
- }
12
- export declare const useRealtimeTotalUserUnreadChatMessages: (userId?: number | null, options?: UseRealtimeTotalUserUnreadChatMessagesOptions) => UseRealtimeTotalUserUnreadChatMessagesReturnValue;
1
+ import { ChannelStatus } from "../Chat";
2
+ export interface UseRealtimeTotalUserUnreadChatMessagesOptions {
3
+ appointmentId?: number;
4
+ requireAppointmentId?: boolean;
5
+ appointmentIsConfirmedForViewing?: boolean;
6
+ __debug__?: boolean;
7
+ }
8
+ export interface UseRealtimeTotalUserUnreadChatMessagesReturnValue {
9
+ channelStatus: ChannelStatus | undefined;
10
+ totalUnreadMessages: number | undefined;
11
+ refetch: () => void;
12
+ }
13
+ export declare const useRealtimeTotalUserUnreadChatMessages: (userId?: number | null, options?: UseRealtimeTotalUserUnreadChatMessagesOptions) => UseRealtimeTotalUserUnreadChatMessagesReturnValue;
@@ -1,138 +1,139 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.useRealtimeTotalUserUnreadChatMessages = void 0;
30
- const react_1 = __importStar(require("react"));
31
- const util_1 = require("../util");
32
- const Chat_1 = __importDefault(require("../Chat"));
33
- const useRealtimeTotalUserUnreadChatMessages = (userId, options) => {
34
- const [chatIsInitialized, setChatIsInitialized] = (0, react_1.useState)(Chat_1.default.isInitialized());
35
- const [channelStatus, setChannelStatus] = (0, react_1.useState)();
36
- const [totalUnreadMessages, setTotalUnreadMessages] = (0, react_1.useState)();
37
- const loadUserChatUnreadMessageCount = (0, react_1.useCallback)(() => {
38
- Chat_1.default.api().getUserChatUnreadMessageCount({
39
- appointmentId: options === null || options === void 0 ? void 0 : options.appointmentId,
40
- appointmentIsConfirmedForViewing: options === null || options === void 0 ? void 0 : options.appointmentIsConfirmedForViewing
41
- }).then(res => {
42
- if (!(0, util_1.isNil)(res.count)) {
43
- setTotalUnreadMessages(res.count);
44
- }
45
- if (options === null || options === void 0 ? void 0 : options.__debug__) {
46
- console.log(res);
47
- }
48
- }).catch(err => {
49
- if (options === null || options === void 0 ? void 0 : options.__debug__) {
50
- console.error(err);
51
- }
52
- });
53
- }, [
54
- userId,
55
- options === null || options === void 0 ? void 0 : options.appointmentId,
56
- options === null || options === void 0 ? void 0 : options.requireAppointmentId,
57
- options === null || options === void 0 ? void 0 : options.appointmentIsConfirmedForViewing
58
- ]);
59
- react_1.default.useEffect(() => {
60
- let listener = (isInitialized) => {
61
- setChatIsInitialized(isInitialized);
62
- if (options === null || options === void 0 ? void 0 : options.__debug__) {
63
- console.log("useRealtimeTotalUserUnreadChatMessages chat isInitialized change", isInitialized);
64
- }
65
- };
66
- Chat_1.default.addEventListener('initialized', listener);
67
- return () => {
68
- Chat_1.default.removeEventListener('initialized', listener);
69
- };
70
- }, []);
71
- react_1.default.useEffect(() => {
72
- if (!chatIsInitialized
73
- || (0, util_1.isNil)(userId)
74
- || ((options === null || options === void 0 ? void 0 : options.requireAppointmentId) && (0, util_1.isNil)(options === null || options === void 0 ? void 0 : options.appointmentId))) {
75
- if (options === null || options === void 0 ? void 0 : options.__debug__) {
76
- console.log("useRealtimeTotalUserUnreadChatMessages initialize realtime listener early return", {
77
- chatIsInitialized,
78
- userId,
79
- appointmentId: options === null || options === void 0 ? void 0 : options.appointmentId,
80
- requireAppointmentId: options === null || options === void 0 ? void 0 : options.requireAppointmentId
81
- });
82
- }
83
- return;
84
- }
85
- loadUserChatUnreadMessageCount();
86
- Chat_1.default.connect();
87
- const channel = Chat_1.default.channel(`viewber:users:${userId}`);
88
- const chatMessageCreatedListener = (message) => {
89
- var _a;
90
- if (!(0, util_1.isNil)(options === null || options === void 0 ? void 0 : options.appointmentId)
91
- && ((_a = message.data.chat) === null || _a === void 0 ? void 0 : _a.request_accept_id) !== (options === null || options === void 0 ? void 0 : options.appointmentId)) {
92
- if (options === null || options === void 0 ? void 0 : options.__debug__) {
93
- console.log("useRealtimeTotalUserUnreadChatMessages chat.message.created early return", {
94
- userId,
95
- appointmentId: options === null || options === void 0 ? void 0 : options.appointmentId,
96
- requireAppointmentId: options === null || options === void 0 ? void 0 : options.requireAppointmentId,
97
- message
98
- });
99
- }
100
- return;
101
- }
102
- else if (options === null || options === void 0 ? void 0 : options.__debug__) {
103
- console.log("useRealtimeTotalUserUnreadChatMessages chat.message.created", {
104
- userId,
105
- appointmentId: options === null || options === void 0 ? void 0 : options.appointmentId,
106
- requireAppointmentId: options === null || options === void 0 ? void 0 : options.requireAppointmentId,
107
- message
108
- });
109
- }
110
- loadUserChatUnreadMessageCount();
111
- };
112
- const channelStatusListener = (stateChange) => {
113
- setChannelStatus(stateChange.current);
114
- };
115
- channel.subscribe('chat.message.created', chatMessageCreatedListener, err => {
116
- if (options === null || options === void 0 ? void 0 : options.__debug__) {
117
- console.error("useRealtimeTotalUserUnreadChatMessages chat.message.created subscribe error", err);
118
- }
119
- });
120
- channel.on(channelStatusListener);
121
- return () => {
122
- channel.unsubscribe('chat.message.created', chatMessageCreatedListener);
123
- channel.off(channelStatusListener);
124
- };
125
- }, [
126
- chatIsInitialized,
127
- userId,
128
- options === null || options === void 0 ? void 0 : options.appointmentId,
129
- options === null || options === void 0 ? void 0 : options.requireAppointmentId,
130
- options === null || options === void 0 ? void 0 : options.appointmentIsConfirmedForViewing
131
- ]);
132
- return {
133
- channelStatus,
134
- totalUnreadMessages
135
- };
136
- };
137
- exports.useRealtimeTotalUserUnreadChatMessages = useRealtimeTotalUserUnreadChatMessages;
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.useRealtimeTotalUserUnreadChatMessages = void 0;
30
+ const react_1 = __importStar(require("react"));
31
+ const util_1 = require("../util");
32
+ const Chat_1 = __importDefault(require("../Chat"));
33
+ const useRealtimeTotalUserUnreadChatMessages = (userId, options) => {
34
+ const [chatIsInitialized, setChatIsInitialized] = (0, react_1.useState)(Chat_1.default.isInitialized());
35
+ const [channelStatus, setChannelStatus] = (0, react_1.useState)();
36
+ const [totalUnreadMessages, setTotalUnreadMessages] = (0, react_1.useState)();
37
+ const loadUserChatUnreadMessageCount = (0, react_1.useCallback)(() => {
38
+ Chat_1.default.api().getUserChatUnreadMessageCount({
39
+ appointmentId: options === null || options === void 0 ? void 0 : options.appointmentId,
40
+ appointmentIsConfirmedForViewing: options === null || options === void 0 ? void 0 : options.appointmentIsConfirmedForViewing
41
+ }).then(res => {
42
+ if (!(0, util_1.isNil)(res.count)) {
43
+ setTotalUnreadMessages(res.count);
44
+ }
45
+ if (options === null || options === void 0 ? void 0 : options.__debug__) {
46
+ console.log(res);
47
+ }
48
+ }).catch(err => {
49
+ if (options === null || options === void 0 ? void 0 : options.__debug__) {
50
+ console.error(err);
51
+ }
52
+ });
53
+ }, [
54
+ userId,
55
+ options === null || options === void 0 ? void 0 : options.appointmentId,
56
+ options === null || options === void 0 ? void 0 : options.requireAppointmentId,
57
+ options === null || options === void 0 ? void 0 : options.appointmentIsConfirmedForViewing
58
+ ]);
59
+ react_1.default.useEffect(() => {
60
+ let listener = (isInitialized) => {
61
+ setChatIsInitialized(isInitialized);
62
+ if (options === null || options === void 0 ? void 0 : options.__debug__) {
63
+ console.log("useRealtimeTotalUserUnreadChatMessages chat isInitialized change", isInitialized);
64
+ }
65
+ };
66
+ Chat_1.default.addEventListener('initialized', listener);
67
+ return () => {
68
+ Chat_1.default.removeEventListener('initialized', listener);
69
+ };
70
+ }, []);
71
+ react_1.default.useEffect(() => {
72
+ if (!chatIsInitialized
73
+ || (0, util_1.isNil)(userId)
74
+ || ((options === null || options === void 0 ? void 0 : options.requireAppointmentId) && (0, util_1.isNil)(options === null || options === void 0 ? void 0 : options.appointmentId))) {
75
+ if (options === null || options === void 0 ? void 0 : options.__debug__) {
76
+ console.log("useRealtimeTotalUserUnreadChatMessages initialize realtime listener early return", {
77
+ chatIsInitialized,
78
+ userId,
79
+ appointmentId: options === null || options === void 0 ? void 0 : options.appointmentId,
80
+ requireAppointmentId: options === null || options === void 0 ? void 0 : options.requireAppointmentId
81
+ });
82
+ }
83
+ return;
84
+ }
85
+ loadUserChatUnreadMessageCount();
86
+ Chat_1.default.connect();
87
+ const channel = Chat_1.default.channel(`viewber:users:${userId}`);
88
+ const chatMessageCreatedListener = (message) => {
89
+ var _a;
90
+ if (!(0, util_1.isNil)(options === null || options === void 0 ? void 0 : options.appointmentId)
91
+ && ((_a = message.data.chat) === null || _a === void 0 ? void 0 : _a.request_accept_id) !== (options === null || options === void 0 ? void 0 : options.appointmentId)) {
92
+ if (options === null || options === void 0 ? void 0 : options.__debug__) {
93
+ console.log("useRealtimeTotalUserUnreadChatMessages chat.message.created early return", {
94
+ userId,
95
+ appointmentId: options === null || options === void 0 ? void 0 : options.appointmentId,
96
+ requireAppointmentId: options === null || options === void 0 ? void 0 : options.requireAppointmentId,
97
+ message
98
+ });
99
+ }
100
+ return;
101
+ }
102
+ else if (options === null || options === void 0 ? void 0 : options.__debug__) {
103
+ console.log("useRealtimeTotalUserUnreadChatMessages chat.message.created", {
104
+ userId,
105
+ appointmentId: options === null || options === void 0 ? void 0 : options.appointmentId,
106
+ requireAppointmentId: options === null || options === void 0 ? void 0 : options.requireAppointmentId,
107
+ message
108
+ });
109
+ }
110
+ loadUserChatUnreadMessageCount();
111
+ };
112
+ const channelStatusListener = (stateChange) => {
113
+ setChannelStatus(stateChange.current);
114
+ };
115
+ channel.subscribe('chat.message.created', chatMessageCreatedListener, err => {
116
+ if (options === null || options === void 0 ? void 0 : options.__debug__) {
117
+ console.error("useRealtimeTotalUserUnreadChatMessages chat.message.created subscribe error", err);
118
+ }
119
+ });
120
+ channel.on(channelStatusListener);
121
+ return () => {
122
+ channel.unsubscribe('chat.message.created', chatMessageCreatedListener);
123
+ channel.off(channelStatusListener);
124
+ };
125
+ }, [
126
+ chatIsInitialized,
127
+ userId,
128
+ options === null || options === void 0 ? void 0 : options.appointmentId,
129
+ options === null || options === void 0 ? void 0 : options.requireAppointmentId,
130
+ options === null || options === void 0 ? void 0 : options.appointmentIsConfirmedForViewing
131
+ ]);
132
+ return {
133
+ channelStatus,
134
+ totalUnreadMessages,
135
+ refetch: loadUserChatUnreadMessageCount
136
+ };
137
+ };
138
+ exports.useRealtimeTotalUserUnreadChatMessages = useRealtimeTotalUserUnreadChatMessages;
138
139
  //# sourceMappingURL=useRealtimeTotalUserUnreadChatMessages.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useRealtimeTotalUserUnreadChatMessages.js","sourceRoot":"","sources":["../../src/react/useRealtimeTotalUserUnreadChatMessages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useRealtimeTotalUserUnreadChatMessages.js","sourceRoot":"","sources":["../../src/react/useRealtimeTotalUserUnreadChatMessages.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import Message from "../Message";
2
- import PendingMessage from "../PendingMessage";
3
- export declare const getLatestMessage: (messages: (Message | PendingMessage)[]) => Message | undefined;
1
+ import Message from "../Message";
2
+ import PendingMessage from "../PendingMessage";
3
+ export declare const getLatestMessage: (messages: (Message | PendingMessage)[]) => Message | undefined;