@viewberapp/chat 0.0.106 → 0.0.110-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/LICENSE +20 -20
  2. package/dist/API.d.ts +83 -83
  3. package/dist/API.js +215 -216
  4. package/dist/API.js.map +1 -1
  5. package/dist/CachedChat.d.ts +59 -59
  6. package/dist/CachedChat.js +216 -220
  7. package/dist/CachedChat.js.map +1 -1
  8. package/dist/Chat.d.ts +64 -64
  9. package/dist/Chat.js +263 -267
  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 +79 -79
  14. package/dist/ChatSubscription.js +119 -119
  15. package/dist/ChatSubscription.js.map +1 -1
  16. package/dist/Message.d.ts +25 -25
  17. package/dist/Message.js +32 -35
  18. package/dist/Message.js.map +1 -1
  19. package/dist/OnlineUser.d.ts +8 -8
  20. package/dist/OnlineUser.js +9 -9
  21. package/dist/PendingMessage.d.ts +23 -23
  22. package/dist/PendingMessage.js +22 -23
  23. package/dist/PendingMessage.js.map +1 -1
  24. package/dist/index.d.ts +8 -8
  25. package/dist/index.js +27 -27
  26. package/dist/logger/ConsoleLogger.d.ts +8 -8
  27. package/dist/logger/ConsoleLogger.js +20 -20
  28. package/dist/logger/NullLogger.d.ts +8 -8
  29. package/dist/logger/NullLogger.js +10 -10
  30. package/dist/logger/RollbarLogger.d.ts +11 -11
  31. package/dist/logger/RollbarLogger.js +23 -23
  32. package/dist/logger/index.d.ts +12 -12
  33. package/dist/logger/index.js +12 -12
  34. package/dist/react/components/AdminMessage.d.ts +6 -6
  35. package/dist/react/components/AdminMessage.js +54 -59
  36. package/dist/react/components/AdminMessage.js.map +1 -1
  37. package/dist/react/components/ConnectionAndChannelStatusLabel.d.ts +7 -7
  38. package/dist/react/components/ConnectionAndChannelStatusLabel.js +54 -59
  39. package/dist/react/components/ConnectionAndChannelStatusLabel.js.map +1 -1
  40. package/dist/react/components/Message.d.ts +23 -23
  41. package/dist/react/components/Message.js +82 -87
  42. package/dist/react/components/Message.js.map +1 -1
  43. package/dist/react/components/MessageDateTime.d.ts +8 -8
  44. package/dist/react/components/MessageDateTime.js +26 -31
  45. package/dist/react/components/MessageDateTime.js.map +1 -1
  46. package/dist/react/components/MessageList.d.ts +46 -46
  47. package/dist/react/components/MessageList.js +102 -107
  48. package/dist/react/components/MessageList.js.map +1 -1
  49. package/dist/react/components/MessageRow.d.ts +5 -5
  50. package/dist/react/components/MessageRow.js +29 -34
  51. package/dist/react/components/MessageRow.js.map +1 -1
  52. package/dist/react/components/index.d.ts +6 -6
  53. package/dist/react/components/index.js +13 -13
  54. package/dist/react/index.d.ts +3 -3
  55. package/dist/react/index.js +12 -16
  56. package/dist/react/index.js.map +1 -1
  57. package/dist/react/useAppointmentChat.d.ts +3 -3
  58. package/dist/react/useAppointmentChat.js +10 -10
  59. package/dist/react/useAppointmentChat.js.map +1 -1
  60. package/dist/react/useChat.d.ts +36 -36
  61. package/dist/react/useChat.js +123 -123
  62. package/dist/react/useChat.js.map +1 -1
  63. package/dist/react/useRealtimeTotalUserUnreadChatMessages.d.ts +12 -12
  64. package/dist/react/useRealtimeTotalUserUnreadChatMessages.js +132 -139
  65. package/dist/react/useRealtimeTotalUserUnreadChatMessages.js.map +1 -1
  66. package/dist/util/getLatestMessage.d.ts +3 -3
  67. package/dist/util/getLatestMessage.js +16 -17
  68. package/dist/util/getLatestMessage.js.map +1 -1
  69. package/dist/util/groupMessages.d.ts +8 -8
  70. package/dist/util/groupMessages.js +29 -30
  71. package/dist/util/groupMessages.js.map +1 -1
  72. package/dist/util/index.d.ts +4 -4
  73. package/dist/util/index.js +9 -9
  74. package/dist/util/isNil.d.ts +1 -1
  75. package/dist/util/isNil.js +6 -7
  76. package/dist/util/isNil.js.map +1 -1
  77. package/dist/util/jwtTokenChanged.d.ts +1 -1
  78. package/dist/util/jwtTokenChanged.js +9 -10
  79. package/dist/util/jwtTokenChanged.js.map +1 -1
  80. package/dist/util/useIsMounted.d.ts +1 -1
  81. package/dist/util/useIsMounted.js +12 -13
  82. package/dist/util/useIsMounted.js.map +1 -1
  83. package/dist/viewberapp-chat.cjs.d.ts +11 -0
  84. package/package.json +4 -3
  85. package/dist/util/getLatestMessageId.d.ts +0 -3
  86. package/dist/util/getLatestMessageId.js +0 -18
  87. package/dist/util/getLatestMessageId.js.map +0 -1
@@ -1,221 +1,217 @@
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
- Object.defineProperty(exports, "__esModule", { value: true });
26
- const uuid_1 = require("uuid");
27
- const PendingMessage_1 = __importStar(require("./PendingMessage"));
28
- const Message_1 = __importStar(require("./Message"));
29
- class CachedChat {
30
- constructor({ id, api, channel, connectionStatus, logger, debugLogger, debug }) {
31
- this.getLatestMessagesStatus = 'initialized';
32
- this.id = id;
33
- this.api = api;
34
- this.messages = [];
35
- this.onlineUsers = [];
36
- this.subscriptions = [];
37
- this.channel = channel;
38
- this.channelStatus = this.channel.state;
39
- this.connectionStatus = connectionStatus;
40
- this.logger = logger;
41
- this.debugLogger = debugLogger;
42
- this.debug = debug;
43
- this.channel.on(this.handleChannelStateChange.bind(this));
44
- this.channel.subscribe((message) => {
45
- var _a;
46
- if ((_a = this.debug) === null || _a === void 0 ? void 0 : _a.inboundAblyMessages) {
47
- this.debugLogger.debug('[Ably] [InboundMessage]', message);
48
- }
49
- if (message.name === 'chat.message.created') {
50
- this.addMessage(new Message_1.default({
51
- id: message.data.id,
52
- chatId: message.data.chat_id,
53
- message: message.data.message,
54
- senderId: message.data.sender_id,
55
- sender: message.data.sender,
56
- isAdminMessage: message.data.is_admin_message,
57
- createdAt: new Date(message.data.created_at)
58
- }));
59
- this.fireMessagesEventOnEachNonCancelledSubscription();
60
- }
61
- });
62
- }
63
- sendMessage(message, options) {
64
- return new Promise((resolve, reject) => {
65
- const pendingMessage = new PendingMessage_1.default({
66
- id: (0, uuid_1.v4)(),
67
- message,
68
- status: 'initialized',
69
- options,
70
- createdAt: new Date
71
- });
72
- this.addMessage(pendingMessage);
73
- this.fireMessagesEventOnEachNonCancelledSubscription();
74
- this.sendPendingMessage(pendingMessage)
75
- .then(() => resolve())
76
- .catch(err => reject(err));
77
- });
78
- }
79
- sendPendingMessage(pendingMessage) {
80
- return new Promise((resolve, reject) => {
81
- if (!(0, PendingMessage_1.isPendingMessage)(pendingMessage) || pendingMessage.status === 'pending') {
82
- return resolve();
83
- }
84
- this.updatePendingMessageStatus(pendingMessage, 'pending');
85
- this.fireMessagesEventOnEachNonCancelledSubscription();
86
- this.api.storeMessage(this.id, pendingMessage.message, pendingMessage.options).then(({ message, error }) => {
87
- if (error) {
88
- this.updatePendingMessageStatus(pendingMessage, 'failed');
89
- this.fireMessagesEventOnEachNonCancelledSubscription();
90
- return reject(new Error(error.message));
91
- }
92
- this.replacePendingMessage(pendingMessage, message);
93
- this.fireMessagesEventOnEachNonCancelledSubscription();
94
- resolve();
95
- }).catch(err => {
96
- this.updatePendingMessageStatus(pendingMessage, 'failed');
97
- this.fireMessagesEventOnEachNonCancelledSubscription();
98
- reject(err);
99
- });
100
- });
101
- }
102
- getLatestMessages() {
103
- this.setGetLatestMessagesStatus('fetching');
104
- this.api.getLatestMessages(this.id).then(({ messages, error }) => {
105
- if (messages) {
106
- messages.forEach(m => this.addMessage(m));
107
- this.setGetLatestMessagesStatus('success');
108
- this.fireMessagesEventOnEachNonCancelledSubscription();
109
- return;
110
- }
111
- this.setGetLatestMessagesStatus('failed');
112
- }).catch(err => {
113
- this.setGetLatestMessagesStatus('failed');
114
- });
115
- }
116
- markMessagesReadUpTo(message) {
117
- return this.api.markChatMessagesReadUpTo(this.id, message);
118
- }
119
- addMessage(message) {
120
- if (message instanceof PendingMessage_1.default) {
121
- this.messages.push(message);
122
- return;
123
- }
124
- let index = -1;
125
- for (let i = (this.messages.length - 1); i >= 0; i--) {
126
- if ((0, Message_1.isMessageAnd)(this.messages[i], m => m.id < message.id) && index === -1) {
127
- index = i;
128
- }
129
- if ((0, Message_1.isMessageAnd)(this.messages[i], m => m.id === message.id)) {
130
- return;
131
- }
132
- }
133
- if (index === -1) {
134
- this.messages.unshift(message);
135
- this.messages = this.messages.concat([]);
136
- }
137
- else {
138
- this.messages.splice(index + 1, 0, message);
139
- this.messages = this.messages.concat([]);
140
- }
141
- }
142
- replacePendingMessage(pendingMessage, message) {
143
- this.messages = this.messages.filter((m) => {
144
- return m.id !== pendingMessage.id;
145
- });
146
- this.addMessage(message);
147
- }
148
- updatePendingMessageStatus(pendingMessage, status) {
149
- this.messages = this.messages.map((m) => {
150
- if ((0, PendingMessage_1.isPendingMessage)(m) && m.id === pendingMessage.id) {
151
- return m.clone({ status });
152
- }
153
- return m;
154
- });
155
- }
156
- addSubscription(subscription) {
157
- this.subscriptions.push(subscription);
158
- }
159
- getConnectionStatus() {
160
- return this.connectionStatus;
161
- }
162
- setConnectionStatus(status) {
163
- this.connectionStatus = status;
164
- this.subscriptions.forEach(subscription => {
165
- if (subscription.getStatus() !== 'cancelled') {
166
- subscription.setConnectionStatus(this.connectionStatus);
167
- }
168
- });
169
- }
170
- getChannelStatus() {
171
- return this.channelStatus;
172
- }
173
- handleChannelStateChange(stateChange) {
174
- this.channelStatus = stateChange.current;
175
- this.subscriptions.forEach(subscription => {
176
- if (subscription.getStatus() !== 'cancelled') {
177
- subscription.setChannelStatus(this.channelStatus);
178
- }
179
- });
180
- }
181
- getGetLatestMessagesStatus() {
182
- return this.getLatestMessagesStatus;
183
- }
184
- setGetLatestMessagesStatus(status) {
185
- this.getLatestMessagesStatus = status;
186
- this.subscriptions.forEach(subscription => {
187
- if (subscription.getStatus() !== 'cancelled') {
188
- subscription.setGetLatestMessagesStatus(this.getLatestMessagesStatus);
189
- }
190
- });
191
- }
192
- detachChannel(callback) {
193
- this.channel.detach(callback);
194
- }
195
- fireMessagesEventOnEachNonCancelledSubscription() {
196
- this.fireEventOnEachSubscription('messages', {
197
- messages: this.messages.concat()
198
- }, {
199
- whereStatusNotIn: ['cancelled']
200
- });
201
- }
202
- fireEventOnEachSubscription(name, data, options) {
203
- for (let i = 0, il = this.subscriptions.length; i < il; i++) {
204
- const subscription = this.subscriptions[i];
205
- if (options && Array.isArray(options.whereStatusNotIn) && options.whereStatusNotIn.includes(subscription.getStatus())) {
206
- continue;
207
- }
208
- subscription.fireEvent(name, data);
209
- }
210
- }
211
- cancelSubscription(subscription) {
212
- subscription.setStatus('cancelled');
213
- }
214
- cancelAllSubscriptions() {
215
- this.subscriptions.forEach(subscription => {
216
- this.cancelSubscription(subscription);
217
- });
218
- }
219
- }
220
- exports.default = CachedChat;
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ const uuid_1 = require("uuid");
23
+ const PendingMessage_1 = __importStar(require("./PendingMessage"));
24
+ const Message_1 = __importStar(require("./Message"));
25
+ class CachedChat {
26
+ constructor({ id, api, channel, connectionStatus, logger, debugLogger, debug }) {
27
+ this.getLatestMessagesStatus = 'initialized';
28
+ this.id = id;
29
+ this.api = api;
30
+ this.messages = [];
31
+ this.onlineUsers = [];
32
+ this.subscriptions = [];
33
+ this.channel = channel;
34
+ this.channelStatus = this.channel.state;
35
+ this.connectionStatus = connectionStatus;
36
+ this.logger = logger;
37
+ this.debugLogger = debugLogger;
38
+ this.debug = debug;
39
+ this.channel.on(this.handleChannelStateChange.bind(this));
40
+ this.channel.subscribe((message) => {
41
+ var _a;
42
+ if ((_a = this.debug) === null || _a === void 0 ? void 0 : _a.inboundAblyMessages) {
43
+ this.debugLogger.debug('[Ably] [InboundMessage]', message);
44
+ }
45
+ if (message.name === 'chat.message.created') {
46
+ this.addMessage(new Message_1.default({
47
+ id: message.data.id,
48
+ chatId: message.data.chat_id,
49
+ message: message.data.message,
50
+ senderId: message.data.sender_id,
51
+ sender: message.data.sender,
52
+ isAdminMessage: message.data.is_admin_message,
53
+ createdAt: new Date(message.data.created_at)
54
+ }));
55
+ this.fireMessagesEventOnEachNonCancelledSubscription();
56
+ }
57
+ });
58
+ }
59
+ sendMessage(message, options) {
60
+ return new Promise((resolve, reject) => {
61
+ const pendingMessage = new PendingMessage_1.default({
62
+ id: uuid_1.v4(),
63
+ message,
64
+ status: 'initialized',
65
+ options,
66
+ createdAt: new Date
67
+ });
68
+ this.addMessage(pendingMessage);
69
+ this.fireMessagesEventOnEachNonCancelledSubscription();
70
+ this.sendPendingMessage(pendingMessage)
71
+ .then(() => resolve())
72
+ .catch(err => reject(err));
73
+ });
74
+ }
75
+ sendPendingMessage(pendingMessage) {
76
+ return new Promise((resolve, reject) => {
77
+ if (!PendingMessage_1.isPendingMessage(pendingMessage) || pendingMessage.status === 'pending') {
78
+ return resolve();
79
+ }
80
+ this.updatePendingMessageStatus(pendingMessage, 'pending');
81
+ this.fireMessagesEventOnEachNonCancelledSubscription();
82
+ this.api.storeMessage(this.id, pendingMessage.message, pendingMessage.options).then(({ message, error }) => {
83
+ if (error) {
84
+ this.updatePendingMessageStatus(pendingMessage, 'failed');
85
+ this.fireMessagesEventOnEachNonCancelledSubscription();
86
+ return reject(new Error(error.message));
87
+ }
88
+ this.replacePendingMessage(pendingMessage, message);
89
+ this.fireMessagesEventOnEachNonCancelledSubscription();
90
+ resolve();
91
+ }).catch(err => {
92
+ this.updatePendingMessageStatus(pendingMessage, 'failed');
93
+ this.fireMessagesEventOnEachNonCancelledSubscription();
94
+ reject(err);
95
+ });
96
+ });
97
+ }
98
+ getLatestMessages() {
99
+ this.setGetLatestMessagesStatus('fetching');
100
+ this.api.getLatestMessages(this.id).then(({ messages, error }) => {
101
+ if (messages) {
102
+ messages.forEach(m => this.addMessage(m));
103
+ this.setGetLatestMessagesStatus('success');
104
+ this.fireMessagesEventOnEachNonCancelledSubscription();
105
+ return;
106
+ }
107
+ this.setGetLatestMessagesStatus('failed');
108
+ }).catch(err => {
109
+ this.setGetLatestMessagesStatus('failed');
110
+ });
111
+ }
112
+ markMessagesReadUpTo(message) {
113
+ return this.api.markChatMessagesReadUpTo(this.id, message);
114
+ }
115
+ addMessage(message) {
116
+ if (message instanceof PendingMessage_1.default) {
117
+ this.messages.push(message);
118
+ return;
119
+ }
120
+ let index = -1;
121
+ for (let i = (this.messages.length - 1); i >= 0; i--) {
122
+ if (Message_1.isMessageAnd(this.messages[i], m => m.id < message.id) && index === -1) {
123
+ index = i;
124
+ }
125
+ if (Message_1.isMessageAnd(this.messages[i], m => m.id === message.id)) {
126
+ return;
127
+ }
128
+ }
129
+ if (index === -1) {
130
+ this.messages.unshift(message);
131
+ this.messages = this.messages.concat([]);
132
+ }
133
+ else {
134
+ this.messages.splice(index + 1, 0, message);
135
+ this.messages = this.messages.concat([]);
136
+ }
137
+ }
138
+ replacePendingMessage(pendingMessage, message) {
139
+ this.messages = this.messages.filter((m) => {
140
+ return m.id !== pendingMessage.id;
141
+ });
142
+ this.addMessage(message);
143
+ }
144
+ updatePendingMessageStatus(pendingMessage, status) {
145
+ this.messages = this.messages.map((m) => {
146
+ if (PendingMessage_1.isPendingMessage(m) && m.id === pendingMessage.id) {
147
+ return m.clone({ status });
148
+ }
149
+ return m;
150
+ });
151
+ }
152
+ addSubscription(subscription) {
153
+ this.subscriptions.push(subscription);
154
+ }
155
+ getConnectionStatus() {
156
+ return this.connectionStatus;
157
+ }
158
+ setConnectionStatus(status) {
159
+ this.connectionStatus = status;
160
+ this.subscriptions.forEach(subscription => {
161
+ if (subscription.getStatus() !== 'cancelled') {
162
+ subscription.setConnectionStatus(this.connectionStatus);
163
+ }
164
+ });
165
+ }
166
+ getChannelStatus() {
167
+ return this.channelStatus;
168
+ }
169
+ handleChannelStateChange(stateChange) {
170
+ this.channelStatus = stateChange.current;
171
+ this.subscriptions.forEach(subscription => {
172
+ if (subscription.getStatus() !== 'cancelled') {
173
+ subscription.setChannelStatus(this.channelStatus);
174
+ }
175
+ });
176
+ }
177
+ getGetLatestMessagesStatus() {
178
+ return this.getLatestMessagesStatus;
179
+ }
180
+ setGetLatestMessagesStatus(status) {
181
+ this.getLatestMessagesStatus = status;
182
+ this.subscriptions.forEach(subscription => {
183
+ if (subscription.getStatus() !== 'cancelled') {
184
+ subscription.setGetLatestMessagesStatus(this.getLatestMessagesStatus);
185
+ }
186
+ });
187
+ }
188
+ detachChannel(callback) {
189
+ this.channel.detach(callback);
190
+ }
191
+ fireMessagesEventOnEachNonCancelledSubscription() {
192
+ this.fireEventOnEachSubscription('messages', {
193
+ messages: this.messages.concat()
194
+ }, {
195
+ whereStatusNotIn: ['cancelled']
196
+ });
197
+ }
198
+ fireEventOnEachSubscription(name, data, options) {
199
+ for (let i = 0, il = this.subscriptions.length; i < il; i++) {
200
+ const subscription = this.subscriptions[i];
201
+ if (options && Array.isArray(options.whereStatusNotIn) && options.whereStatusNotIn.includes(subscription.getStatus())) {
202
+ continue;
203
+ }
204
+ subscription.fireEvent(name, data);
205
+ }
206
+ }
207
+ cancelSubscription(subscription) {
208
+ subscription.setStatus('cancelled');
209
+ }
210
+ cancelAllSubscriptions() {
211
+ this.subscriptions.forEach(subscription => {
212
+ this.cancelSubscription(subscription);
213
+ });
214
+ }
215
+ }
216
+ exports.default = CachedChat;
221
217
  //# sourceMappingURL=CachedChat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CachedChat.js","sourceRoot":"","sources":["../src/CachedChat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CachedChat.js","sourceRoot":"","sources":["../src/CachedChat.ts"],"names":[],"mappings":"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"}
package/dist/Chat.d.ts CHANGED
@@ -1,64 +1,64 @@
1
- import * as Ably from 'ably';
2
- import ChatError from "./ChatError";
3
- import { AxiosInstance } from 'axios';
4
- import API, { ConstructApiParams } from "./API";
5
- import { Logger } from "./logger";
6
- import ChatSubscription from "./ChatSubscription";
7
- export interface ChatOptions {
8
- axios: AxiosInstance;
9
- logger?: Logger;
10
- jwtToken?: string;
11
- routes: Routes;
12
- debug?: DebugOptions;
13
- }
14
- export interface Routes {
15
- getChatMessagesRoute: ConstructApiParams['getChatMessagesRoute'];
16
- getChatAblyTokenRoute: ConstructApiParams['getChatAblyTokenRoute'];
17
- getChatStoreMessageRoute: ConstructApiParams['getChatStoreMessageRoute'];
18
- getChatForAppointmentRoute: ConstructApiParams['getChatForAppointmentRoute'];
19
- markChatMessagesReadUpToRoute: ConstructApiParams['markChatMessagesReadUpToRoute'];
20
- getUserChatUnreadMessageCountRoute: ConstructApiParams['getUserChatUnreadMessageCountRoute'];
21
- }
22
- export interface DebugOptions {
23
- apiResponses: boolean;
24
- apiErrors: boolean;
25
- inboundAblyMessages: boolean;
26
- }
27
- export declare type ConnectionStatus = 'initialized' | 'connecting' | 'connected' | 'disconnected' | 'suspended' | 'closing' | 'closed' | 'failed';
28
- export declare type ChannelStatus = 'initialized' | 'attaching' | 'attached' | 'detaching' | 'detached' | 'suspended' | 'failed';
29
- export interface ChatEvents {
30
- initialized: boolean;
31
- }
32
- export declare type ChatEventCallbacks = {
33
- [Event in keyof ChatEvents]: (data: ChatEvents[Event]) => void;
34
- };
35
- export declare type ChatEventListeners = {
36
- [Event in keyof ChatEvents]: ChatEventCallbacks[Event][];
37
- };
38
- declare const Chat: {
39
- init: (options: ChatOptions) => void;
40
- isInitialized: () => boolean;
41
- setJwtToken: (_jwtToken?: string) => void;
42
- api: () => API;
43
- get: (id: number) => Promise<{
44
- subscription: ChatSubscription;
45
- error?: undefined;
46
- } | {
47
- subscription?: undefined;
48
- error: ChatError;
49
- }>;
50
- appointment: (appointmentId: number) => Promise<{
51
- subscription: ChatSubscription;
52
- error?: undefined;
53
- } | {
54
- subscription?: undefined;
55
- error: ChatError;
56
- }>;
57
- connect: () => void;
58
- close: () => void;
59
- channel: (channelName: string) => Ably.Types.RealtimeChannelCallbacks;
60
- addEventListener: <Event_1 extends "initialized">(event: Event_1, listener: ChatEventCallbacks[Event_1]) => void;
61
- removeEventListener: <Event_2 extends "initialized">(event: Event_2, listener: ChatEventCallbacks[Event_2]) => void;
62
- logout: () => void;
63
- };
64
- export default Chat;
1
+ import * as Ably from 'ably';
2
+ import ChatError from "./ChatError";
3
+ import { AxiosInstance } from 'axios';
4
+ import API, { ConstructApiParams } from "./API";
5
+ import { Logger } from "./logger";
6
+ import ChatSubscription from "./ChatSubscription";
7
+ export interface ChatOptions {
8
+ axios: AxiosInstance;
9
+ logger?: Logger;
10
+ jwtToken?: string;
11
+ routes: Routes;
12
+ debug?: DebugOptions;
13
+ }
14
+ export interface Routes {
15
+ getChatMessagesRoute: ConstructApiParams['getChatMessagesRoute'];
16
+ getChatAblyTokenRoute: ConstructApiParams['getChatAblyTokenRoute'];
17
+ getChatStoreMessageRoute: ConstructApiParams['getChatStoreMessageRoute'];
18
+ getChatForAppointmentRoute: ConstructApiParams['getChatForAppointmentRoute'];
19
+ markChatMessagesReadUpToRoute: ConstructApiParams['markChatMessagesReadUpToRoute'];
20
+ getUserChatUnreadMessageCountRoute: ConstructApiParams['getUserChatUnreadMessageCountRoute'];
21
+ }
22
+ export interface DebugOptions {
23
+ apiResponses: boolean;
24
+ apiErrors: boolean;
25
+ inboundAblyMessages: boolean;
26
+ }
27
+ export declare type ConnectionStatus = 'initialized' | 'connecting' | 'connected' | 'disconnected' | 'suspended' | 'closing' | 'closed' | 'failed';
28
+ export declare type ChannelStatus = 'initialized' | 'attaching' | 'attached' | 'detaching' | 'detached' | 'suspended' | 'failed';
29
+ export interface ChatEvents {
30
+ initialized: boolean;
31
+ }
32
+ export declare type ChatEventCallbacks = {
33
+ [Event in keyof ChatEvents]: (data: ChatEvents[Event]) => void;
34
+ };
35
+ export declare type ChatEventListeners = {
36
+ [Event in keyof ChatEvents]: ChatEventCallbacks[Event][];
37
+ };
38
+ declare const Chat: {
39
+ init: (options: ChatOptions) => void;
40
+ isInitialized: () => boolean;
41
+ setJwtToken: (_jwtToken?: string | undefined) => void;
42
+ api: () => API;
43
+ get: (id: number) => Promise<{
44
+ subscription: ChatSubscription;
45
+ error?: undefined;
46
+ } | {
47
+ subscription?: undefined;
48
+ error: ChatError;
49
+ }>;
50
+ appointment: (appointmentId: number) => Promise<{
51
+ subscription: ChatSubscription;
52
+ error?: undefined;
53
+ } | {
54
+ subscription?: undefined;
55
+ error: ChatError;
56
+ }>;
57
+ connect: () => void;
58
+ close: () => void;
59
+ channel: (channelName: string) => Ably.Types.RealtimeChannelCallbacks;
60
+ addEventListener: <Event_1 extends "initialized">(event: Event_1, listener: ChatEventCallbacks[Event_1]) => void;
61
+ removeEventListener: <Event_2 extends "initialized">(event: Event_2, listener: ChatEventCallbacks[Event_2]) => void;
62
+ logout: () => void;
63
+ };
64
+ export default Chat;