@viewberapp/chat 0.0.101 → 0.0.102
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/API.d.ts +12 -1
- package/dist/API.js +16 -7
- package/dist/API.js.map +1 -1
- package/dist/CachedChat.d.ts +6 -8
- package/dist/CachedChat.js +51 -46
- package/dist/CachedChat.js.map +1 -1
- package/dist/ChatSubscription.d.ts +1 -2
- package/dist/ChatSubscription.js +1 -1
- package/dist/ChatSubscription.js.map +1 -1
- package/dist/Message.d.ts +16 -10
- package/dist/Message.js +8 -20
- package/dist/Message.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/react/components/AdminMessage.js +3 -1
- package/dist/react/components/AdminMessage.js.map +1 -1
- package/dist/react/components/Message.d.ts +2 -3
- package/dist/react/components/Message.js +1 -2
- package/dist/react/components/Message.js.map +1 -1
- package/dist/react/components/MessageList.d.ts +1 -2
- package/dist/react/components/MessageList.js +7 -11
- package/dist/react/components/MessageList.js.map +1 -1
- package/dist/react/useChat.d.ts +1 -2
- package/dist/react/useChat.js.map +1 -1
- package/dist/util/getLatestMessage.d.ts +1 -2
- package/dist/util/getLatestMessage.js +7 -9
- package/dist/util/getLatestMessage.js.map +1 -1
- package/dist/util/index.d.ts +2 -3
- package/dist/util/index.js +2 -4
- package/dist/util/index.js.map +1 -1
- package/package.json +3 -3
package/dist/API.d.ts
CHANGED
|
@@ -36,7 +36,18 @@ export interface GetUserChatUnreadMessageCountParams {
|
|
|
36
36
|
appointmentIsConfirmedForViewing?: boolean;
|
|
37
37
|
}
|
|
38
38
|
export declare type StoreMessageReturnValue = {
|
|
39
|
-
message:
|
|
39
|
+
message: {
|
|
40
|
+
id: number;
|
|
41
|
+
chat_id: number;
|
|
42
|
+
message: string;
|
|
43
|
+
sender_id: number;
|
|
44
|
+
sender: {
|
|
45
|
+
id: number;
|
|
46
|
+
first_name: string;
|
|
47
|
+
};
|
|
48
|
+
is_admin_message: boolean;
|
|
49
|
+
created_at: string;
|
|
50
|
+
};
|
|
40
51
|
error?: undefined;
|
|
41
52
|
} | {
|
|
42
53
|
message?: undefined;
|
package/dist/API.js
CHANGED
|
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const axios_1 = __importDefault(require("axios"));
|
|
7
|
+
const cuid_1 = __importDefault(require("cuid"));
|
|
7
8
|
const Message_1 = __importDefault(require("./Message"));
|
|
8
9
|
class API {
|
|
9
10
|
constructor(params) {
|
|
@@ -81,15 +82,18 @@ class API {
|
|
|
81
82
|
}).then(response => {
|
|
82
83
|
this.debugApiResponse('storeMessage', response);
|
|
83
84
|
resolve({
|
|
84
|
-
message:
|
|
85
|
+
message: {
|
|
85
86
|
id: response.data.data.id,
|
|
86
|
-
|
|
87
|
+
chat_id: response.data.data.chat_id,
|
|
87
88
|
message: response.data.data.message,
|
|
88
|
-
|
|
89
|
-
sender:
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
89
|
+
sender_id: response.data.data.sender_id,
|
|
90
|
+
sender: {
|
|
91
|
+
id: response.data.data.sender.id,
|
|
92
|
+
first_name: response.data.data.sender.first_name
|
|
93
|
+
},
|
|
94
|
+
is_admin_message: response.data.data.is_admin_message,
|
|
95
|
+
created_at: response.data.data.created_at
|
|
96
|
+
}
|
|
93
97
|
});
|
|
94
98
|
}).catch(err => {
|
|
95
99
|
var _a, _b, _c, _d, _e;
|
|
@@ -116,8 +120,10 @@ class API {
|
|
|
116
120
|
resolve({
|
|
117
121
|
messages: response.data.data.map((m) => new Message_1.default({
|
|
118
122
|
id: m.id,
|
|
123
|
+
clientId: (0, cuid_1.default)(),
|
|
119
124
|
chatId: m.chat_id,
|
|
120
125
|
message: m.message,
|
|
126
|
+
status: 'sent',
|
|
121
127
|
senderId: m.sender_id,
|
|
122
128
|
sender: m.sender,
|
|
123
129
|
isAdminMessage: m.is_admin_message,
|
|
@@ -165,6 +171,9 @@ class API {
|
|
|
165
171
|
});
|
|
166
172
|
});
|
|
167
173
|
this.markChatMessagesReadUpTo = (chatId, message) => new Promise((resolve, reject) => {
|
|
174
|
+
if (!message.id) {
|
|
175
|
+
return resolve({ error: undefined });
|
|
176
|
+
}
|
|
168
177
|
this.axios.post(this.markChatMessagesReadUpToRoute(chatId, message.id), undefined, {
|
|
169
178
|
headers: this.constructHeaders(),
|
|
170
179
|
}).then(response => {
|
package/dist/API.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"API.js","sourceRoot":"","sources":["../src/API.ts"],"names":[],"mappings":";;;;;AAAA,kDAA6C;
|
|
1
|
+
{"version":3,"file":"API.js","sourceRoot":"","sources":["../src/API.ts"],"names":[],"mappings":"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"}
|
package/dist/CachedChat.d.ts
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import Ably from 'ably';
|
|
2
2
|
import API from "./API";
|
|
3
3
|
import { Logger } from "./logger";
|
|
4
|
+
import ChatError from './ChatError';
|
|
4
5
|
import OnlineUser from "./OnlineUser";
|
|
5
|
-
import { ChannelStatus, ConnectionStatus, DebugOptions } from './Chat';
|
|
6
|
-
import PendingMessage from "./PendingMessage";
|
|
7
6
|
import Message from "./Message";
|
|
7
|
+
import { ChannelStatus, ConnectionStatus, DebugOptions } from './Chat';
|
|
8
8
|
import ChatSubscription from "./ChatSubscription";
|
|
9
|
-
import ChatError from './ChatError';
|
|
10
9
|
export interface CachedChatParams {
|
|
11
10
|
id: number;
|
|
12
11
|
api: API;
|
|
@@ -19,7 +18,7 @@ export interface CachedChatParams {
|
|
|
19
18
|
export interface SendMessageOptions {
|
|
20
19
|
isAdminMessage: boolean;
|
|
21
20
|
}
|
|
22
|
-
export declare type Messages =
|
|
21
|
+
export declare type Messages = Message[];
|
|
23
22
|
export declare type GetLatestMessagesStatus = 'initialized' | 'fetching' | 'success' | 'failed';
|
|
24
23
|
export default class CachedChat {
|
|
25
24
|
private id;
|
|
@@ -36,14 +35,13 @@ export default class CachedChat {
|
|
|
36
35
|
private debug;
|
|
37
36
|
constructor({ id, api, channel, connectionStatus, logger, debugLogger, debug }: CachedChatParams);
|
|
38
37
|
sendMessage(message: string, options?: SendMessageOptions): Promise<void>;
|
|
39
|
-
sendPendingMessage(pendingMessage:
|
|
38
|
+
sendPendingMessage(pendingMessage: Message): Promise<void>;
|
|
40
39
|
getLatestMessages(): void;
|
|
41
40
|
markMessagesReadUpTo(message: Message): Promise<{
|
|
42
41
|
error: ChatError | undefined;
|
|
43
42
|
}>;
|
|
44
|
-
addMessage(message: Message
|
|
45
|
-
private
|
|
46
|
-
private updatePendingMessageStatus;
|
|
43
|
+
addMessage(message: Message): void;
|
|
44
|
+
private updateMessage;
|
|
47
45
|
addSubscription(subscription: ChatSubscription): void;
|
|
48
46
|
getConnectionStatus(): ConnectionStatus;
|
|
49
47
|
setConnectionStatus(status: ConnectionStatus): void;
|
package/dist/CachedChat.js
CHANGED
|
@@ -1,31 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
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;
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
24
4
|
};
|
|
25
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
const
|
|
27
|
-
const
|
|
28
|
-
const Message_1 =
|
|
6
|
+
const cuid_1 = __importDefault(require("cuid"));
|
|
7
|
+
const util_1 = require("./util");
|
|
8
|
+
const Message_1 = __importDefault(require("./Message"));
|
|
29
9
|
class CachedChat {
|
|
30
10
|
constructor({ id, api, channel, connectionStatus, logger, debugLogger, debug }) {
|
|
31
11
|
this.getLatestMessagesStatus = 'initialized';
|
|
@@ -49,8 +29,10 @@ class CachedChat {
|
|
|
49
29
|
if (message.name === 'chat.message.created') {
|
|
50
30
|
this.addMessage(new Message_1.default({
|
|
51
31
|
id: message.data.id,
|
|
32
|
+
clientId: (0, cuid_1.default)(),
|
|
52
33
|
chatId: message.data.chat_id,
|
|
53
34
|
message: message.data.message,
|
|
35
|
+
status: 'sent',
|
|
54
36
|
senderId: message.data.sender_id,
|
|
55
37
|
sender: message.data.sender,
|
|
56
38
|
isAdminMessage: message.data.is_admin_message,
|
|
@@ -62,11 +44,15 @@ class CachedChat {
|
|
|
62
44
|
}
|
|
63
45
|
sendMessage(message, options) {
|
|
64
46
|
return new Promise((resolve, reject) => {
|
|
65
|
-
const pendingMessage = new
|
|
66
|
-
id:
|
|
47
|
+
const pendingMessage = new Message_1.default({
|
|
48
|
+
id: undefined,
|
|
49
|
+
clientId: (0, cuid_1.default)(),
|
|
50
|
+
chatId: this.id,
|
|
67
51
|
message,
|
|
68
52
|
status: 'initialized',
|
|
69
|
-
|
|
53
|
+
senderId: undefined,
|
|
54
|
+
sender: undefined,
|
|
55
|
+
isAdminMessage: (options === null || options === void 0 ? void 0 : options.isAdminMessage) || false,
|
|
70
56
|
createdAt: new Date
|
|
71
57
|
});
|
|
72
58
|
this.addMessage(pendingMessage);
|
|
@@ -78,22 +64,41 @@ class CachedChat {
|
|
|
78
64
|
}
|
|
79
65
|
sendPendingMessage(pendingMessage) {
|
|
80
66
|
return new Promise((resolve, reject) => {
|
|
81
|
-
if (!
|
|
67
|
+
if (!pendingMessage.isPendingMessage || pendingMessage.status === 'pending') {
|
|
82
68
|
return resolve();
|
|
83
69
|
}
|
|
84
|
-
this.
|
|
70
|
+
this.updateMessage(pendingMessage, {
|
|
71
|
+
status: 'pending'
|
|
72
|
+
});
|
|
85
73
|
this.fireMessagesEventOnEachNonCancelledSubscription();
|
|
86
|
-
this.api.storeMessage(this.id, pendingMessage.message,
|
|
74
|
+
this.api.storeMessage(this.id, pendingMessage.message, {
|
|
75
|
+
isAdminMessage: pendingMessage.isAdminMessage
|
|
76
|
+
}).then(({ message, error }) => {
|
|
87
77
|
if (error) {
|
|
88
|
-
this.
|
|
78
|
+
this.updateMessage(pendingMessage, {
|
|
79
|
+
status: 'failed'
|
|
80
|
+
});
|
|
89
81
|
this.fireMessagesEventOnEachNonCancelledSubscription();
|
|
90
82
|
return reject(new Error(error.message));
|
|
91
83
|
}
|
|
92
|
-
this.
|
|
84
|
+
this.updateMessage(pendingMessage, {
|
|
85
|
+
id: message.id,
|
|
86
|
+
chatId: message.chat_id,
|
|
87
|
+
message: message.message,
|
|
88
|
+
status: 'sent',
|
|
89
|
+
senderId: message.sender_id,
|
|
90
|
+
sender: {
|
|
91
|
+
first_name: message.sender.first_name
|
|
92
|
+
},
|
|
93
|
+
isAdminMessage: message.is_admin_message,
|
|
94
|
+
createdAt: new Date(message.created_at)
|
|
95
|
+
});
|
|
93
96
|
this.fireMessagesEventOnEachNonCancelledSubscription();
|
|
94
97
|
resolve();
|
|
95
98
|
}).catch(err => {
|
|
96
|
-
this.
|
|
99
|
+
this.updateMessage(pendingMessage, {
|
|
100
|
+
status: 'failed'
|
|
101
|
+
});
|
|
97
102
|
this.fireMessagesEventOnEachNonCancelledSubscription();
|
|
98
103
|
reject(err);
|
|
99
104
|
});
|
|
@@ -117,16 +122,22 @@ class CachedChat {
|
|
|
117
122
|
return this.api.markChatMessagesReadUpTo(this.id, message);
|
|
118
123
|
}
|
|
119
124
|
addMessage(message) {
|
|
120
|
-
if (message
|
|
125
|
+
if (message.isPendingMessage) {
|
|
121
126
|
this.messages.push(message);
|
|
122
127
|
return;
|
|
123
128
|
}
|
|
124
129
|
let index = -1;
|
|
125
130
|
for (let i = (this.messages.length - 1); i >= 0; i--) {
|
|
126
|
-
|
|
131
|
+
let iteratedMessage = this.messages[i];
|
|
132
|
+
if (!(0, util_1.isNil)(message.id)
|
|
133
|
+
&& !(0, util_1.isNil)(iteratedMessage.id)
|
|
134
|
+
&& iteratedMessage.id < message.id
|
|
135
|
+
&& index === -1) {
|
|
127
136
|
index = i;
|
|
128
137
|
}
|
|
129
|
-
if ((0,
|
|
138
|
+
if (!(0, util_1.isNil)(message.id)
|
|
139
|
+
&& !(0, util_1.isNil)(iteratedMessage.id)
|
|
140
|
+
&& message.id === iteratedMessage.id) {
|
|
130
141
|
return;
|
|
131
142
|
}
|
|
132
143
|
}
|
|
@@ -139,16 +150,10 @@ class CachedChat {
|
|
|
139
150
|
this.messages = this.messages.concat([]);
|
|
140
151
|
}
|
|
141
152
|
}
|
|
142
|
-
|
|
143
|
-
this.messages = this.messages.filter((m) => {
|
|
144
|
-
return m.id !== pendingMessage.id;
|
|
145
|
-
});
|
|
146
|
-
this.addMessage(message);
|
|
147
|
-
}
|
|
148
|
-
updatePendingMessageStatus(pendingMessage, status) {
|
|
153
|
+
updateMessage(message, newValues) {
|
|
149
154
|
this.messages = this.messages.map((m) => {
|
|
150
|
-
if (
|
|
151
|
-
return m.clone(
|
|
155
|
+
if (m.clientId === message.clientId) {
|
|
156
|
+
return m.clone(newValues);
|
|
152
157
|
}
|
|
153
158
|
return m;
|
|
154
159
|
});
|
package/dist/CachedChat.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CachedChat.js","sourceRoot":"","sources":["../src/CachedChat.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CachedChat.js","sourceRoot":"","sources":["../src/CachedChat.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,6 @@ import ChatError from "./ChatError";
|
|
|
3
3
|
import OnlineUser from "./OnlineUser";
|
|
4
4
|
import { ConnectionStatus, ChannelStatus } from "./Chat";
|
|
5
5
|
import CachedChat, { GetLatestMessagesStatus, Messages, SendMessageOptions } from "./CachedChat";
|
|
6
|
-
import PendingMessage from "./PendingMessage";
|
|
7
6
|
export declare type ChatSubscriptionStatus = 'active' | 'cancelled';
|
|
8
7
|
export interface ChatSubscriptionOptions {
|
|
9
8
|
status: ChatSubscriptionStatus;
|
|
@@ -64,7 +63,7 @@ export default class ChatSubscription {
|
|
|
64
63
|
getGetLatestMessagesStatus(): GetLatestMessagesStatus;
|
|
65
64
|
setGetLatestMessagesStatus(status: GetLatestMessagesStatus): void;
|
|
66
65
|
sendMessage(message: string, options?: SendMessageOptions): Promise<any>;
|
|
67
|
-
sendPendingMessage(pendingMessage:
|
|
66
|
+
sendPendingMessage(pendingMessage: Message): Promise<any>;
|
|
68
67
|
getLatestMessages(): void;
|
|
69
68
|
markMessagesReadUpTo(message: Message): Promise<{
|
|
70
69
|
error?: ChatError | undefined;
|
package/dist/ChatSubscription.js
CHANGED
|
@@ -69,7 +69,7 @@ class ChatSubscription {
|
|
|
69
69
|
if (!messages.length) {
|
|
70
70
|
return resolve({});
|
|
71
71
|
}
|
|
72
|
-
let latestMessage = (0, util_1.
|
|
72
|
+
let latestMessage = (0, util_1.getLatestMessageThatHasId)(messages);
|
|
73
73
|
if ((0, util_1.isNil)(latestMessage)) {
|
|
74
74
|
return resolve({});
|
|
75
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatSubscription.js","sourceRoot":"","sources":["../src/ChatSubscription.ts"],"names":[],"mappings":";;AAIA,
|
|
1
|
+
{"version":3,"file":"ChatSubscription.js","sourceRoot":"","sources":["../src/ChatSubscription.ts"],"names":[],"mappings":"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"}
|
package/dist/Message.d.ts
CHANGED
|
@@ -1,25 +1,31 @@
|
|
|
1
1
|
export interface Sender {
|
|
2
2
|
first_name: string;
|
|
3
3
|
}
|
|
4
|
+
export declare type MessageStatus = 'initialized' | 'pending' | 'failed' | 'sent';
|
|
4
5
|
export default class Message {
|
|
5
|
-
readonly id: number;
|
|
6
|
+
readonly id: number | undefined;
|
|
7
|
+
readonly clientId: string;
|
|
6
8
|
readonly chatId: number;
|
|
7
9
|
readonly message: string;
|
|
8
|
-
readonly
|
|
9
|
-
readonly
|
|
10
|
+
readonly status: MessageStatus;
|
|
11
|
+
readonly senderId: number | undefined;
|
|
12
|
+
readonly sender: Sender | undefined;
|
|
10
13
|
readonly isAdminMessage: boolean;
|
|
11
14
|
readonly createdAt: Date;
|
|
12
|
-
constructor({ id, chatId, message, senderId, sender, isAdminMessage, createdAt }: {
|
|
13
|
-
id: number;
|
|
15
|
+
constructor({ id, clientId, chatId, message, status, senderId, sender, isAdminMessage, createdAt }: {
|
|
16
|
+
id: number | undefined;
|
|
17
|
+
clientId: string;
|
|
14
18
|
chatId: number;
|
|
15
19
|
message: string;
|
|
16
|
-
|
|
17
|
-
|
|
20
|
+
status: MessageStatus;
|
|
21
|
+
senderId: number | undefined;
|
|
22
|
+
sender: Sender | undefined;
|
|
18
23
|
isAdminMessage: boolean;
|
|
19
24
|
createdAt: Date;
|
|
20
25
|
});
|
|
21
26
|
get isPendingMessage(): boolean;
|
|
27
|
+
clone(params: {
|
|
28
|
+
message?: string;
|
|
29
|
+
status?: MessageStatus;
|
|
30
|
+
}): Message;
|
|
22
31
|
}
|
|
23
|
-
export declare const isMessage: (m: unknown) => m is Message;
|
|
24
|
-
export declare const isMessageAnd: (m: unknown, then: (m: Message) => boolean) => boolean;
|
|
25
|
-
export declare const isMessageThen: (m: unknown, then: (m: Message) => void) => void;
|
package/dist/Message.js
CHANGED
|
@@ -1,36 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
3
|
+
const util_1 = require("./util");
|
|
4
4
|
class Message {
|
|
5
|
-
constructor({ id, chatId, message, senderId, sender, isAdminMessage, createdAt }) {
|
|
5
|
+
constructor({ id, clientId, chatId, message, status, senderId, sender, isAdminMessage, createdAt }) {
|
|
6
6
|
this.id = id;
|
|
7
|
+
this.clientId = clientId;
|
|
7
8
|
this.chatId = chatId;
|
|
8
9
|
this.message = message;
|
|
10
|
+
this.status = status;
|
|
9
11
|
this.senderId = senderId;
|
|
10
12
|
this.sender = sender;
|
|
11
13
|
this.isAdminMessage = isAdminMessage;
|
|
12
14
|
this.createdAt = createdAt;
|
|
13
15
|
}
|
|
14
16
|
get isPendingMessage() {
|
|
15
|
-
return
|
|
17
|
+
return (0, util_1.isNil)(this.id);
|
|
18
|
+
}
|
|
19
|
+
clone(params) {
|
|
20
|
+
return new Message(Object.assign({ id: this.id, clientId: this.clientId, chatId: this.chatId, message: this.message, status: this.status, senderId: this.senderId, sender: this.sender, isAdminMessage: this.isAdminMessage, createdAt: this.createdAt }, params));
|
|
16
21
|
}
|
|
17
22
|
}
|
|
18
23
|
exports.default = Message;
|
|
19
|
-
const isMessage = (m) => {
|
|
20
|
-
return m instanceof Message;
|
|
21
|
-
};
|
|
22
|
-
exports.isMessage = isMessage;
|
|
23
|
-
const isMessageAnd = (m, then) => {
|
|
24
|
-
if ((0, exports.isMessage)(m)) {
|
|
25
|
-
return then(m);
|
|
26
|
-
}
|
|
27
|
-
return false;
|
|
28
|
-
};
|
|
29
|
-
exports.isMessageAnd = isMessageAnd;
|
|
30
|
-
const isMessageThen = (m, then) => {
|
|
31
|
-
if ((0, exports.isMessage)(m)) {
|
|
32
|
-
then(m);
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
exports.isMessageThen = isMessageThen;
|
|
36
24
|
//# sourceMappingURL=Message.js.map
|
package/dist/Message.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Message.js","sourceRoot":"","sources":["../src/Message.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Message.js","sourceRoot":"","sources":["../src/Message.ts"],"names":[],"mappings":";;AAAA,iCAA+B;AAwB/B,MAAqB,OAAO;IAWxB,YAAY,EACR,EAAE,EACF,QAAQ,EACR,MAAM,EACN,OAAO,EACP,MAAM,EACN,QAAQ,EACR,MAAM,EACN,cAAc,EACd,SAAS,EAWZ;QACG,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,IAAW,gBAAgB;QACvB,OAAO,IAAA,YAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAQO,KAAK,CAAC,MAGb;QACG,OAAO,IAAI,OAAO,iBACd,EAAE,EAAE,IAAI,CAAC,EAAE,EACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,cAAc,EAAE,IAAI,CAAC,cAAc,EACnC,SAAS,EAAE,IAAI,CAAC,SAAS,IACtB,MAAM,EACX,CAAA;IACN,CAAC;CACJ;AAtED,0BAsEC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,5 +4,5 @@ import useAppointmentChat from "./react/useAppointmentChat";
|
|
|
4
4
|
import { useRealtimeTotalUserUnreadChatMessages } from "./react/useRealtimeTotalUserUnreadChatMessages";
|
|
5
5
|
export { ConsoleLogger, RollbarLogger, NullLogger } from './logger';
|
|
6
6
|
export { Message, MessageRow, MessageList, AdminMessage, ConnectionAndChannelStatusLabel } from './react';
|
|
7
|
-
export { isNil,
|
|
7
|
+
export { isNil, getLatestMessageThatHasId } from './util';
|
|
8
8
|
export { Chat, useChat, useAppointmentChat, useRealtimeTotalUserUnreadChatMessages };
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.useRealtimeTotalUserUnreadChatMessages = exports.useAppointmentChat = exports.useChat = exports.Chat = exports.
|
|
6
|
+
exports.useRealtimeTotalUserUnreadChatMessages = exports.useAppointmentChat = exports.useChat = exports.Chat = exports.getLatestMessageThatHasId = exports.isNil = exports.ConnectionAndChannelStatusLabel = exports.AdminMessage = exports.MessageList = exports.MessageRow = exports.Message = exports.NullLogger = exports.RollbarLogger = exports.ConsoleLogger = void 0;
|
|
7
7
|
const Chat_1 = __importDefault(require("./Chat"));
|
|
8
8
|
exports.Chat = Chat_1.default;
|
|
9
9
|
const useChat_1 = __importDefault(require("./react/useChat"));
|
|
@@ -24,5 +24,5 @@ Object.defineProperty(exports, "AdminMessage", { enumerable: true, get: function
|
|
|
24
24
|
Object.defineProperty(exports, "ConnectionAndChannelStatusLabel", { enumerable: true, get: function () { return react_1.ConnectionAndChannelStatusLabel; } });
|
|
25
25
|
var util_1 = require("./util");
|
|
26
26
|
Object.defineProperty(exports, "isNil", { enumerable: true, get: function () { return util_1.isNil; } });
|
|
27
|
-
Object.defineProperty(exports, "
|
|
27
|
+
Object.defineProperty(exports, "getLatestMessageThatHasId", { enumerable: true, get: function () { return util_1.getLatestMessageThatHasId; } });
|
|
28
28
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;AACb,kDAA0B;AAyBtB,eAzBG,cAAI,CAyBH;AAxBR,8DAAsC;AAyBlC,kBAzBG,iBAAO,CAyBH;AAxBX,oFAA4D;AAyBxD,6BAzBG,4BAAkB,CAyBH;AAxBtB,2GAAwG;AAyBpG,uHAzBK,+EAAsC,OAyBL;AAvB1C,mCAIkB;AAHd,uGAAA,aAAa,OAAA;AACb,uGAAA,aAAa,OAAA;AACb,oGAAA,UAAU,OAAA;AAGd,iCAMiB;AALb,gGAAA,OAAO,OAAA;AACP,mGAAA,UAAU,OAAA;AACV,oGAAA,WAAW,OAAA;AACX,qGAAA,YAAY,OAAA;AACZ,wHAAA,+BAA+B,OAAA;AAGnC,+BAGgB;AAFZ,6FAAA,KAAK,OAAA;AACL,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;AACb,kDAA0B;AAyBtB,eAzBG,cAAI,CAyBH;AAxBR,8DAAsC;AAyBlC,kBAzBG,iBAAO,CAyBH;AAxBX,oFAA4D;AAyBxD,6BAzBG,4BAAkB,CAyBH;AAxBtB,2GAAwG;AAyBpG,uHAzBK,+EAAsC,OAyBL;AAvB1C,mCAIkB;AAHd,uGAAA,aAAa,OAAA;AACb,uGAAA,aAAa,OAAA;AACb,oGAAA,UAAU,OAAA;AAGd,iCAMiB;AALb,gGAAA,OAAO,OAAA;AACP,mGAAA,UAAU,OAAA;AACV,oGAAA,WAAW,OAAA;AACX,qGAAA,YAAY,OAAA;AACZ,wHAAA,+BAA+B,OAAA;AAGnC,+BAGgB;AAFZ,6FAAA,KAAK,OAAA;AACL,iHAAA,yBAAyB,OAAA"}
|
|
@@ -52,7 +52,9 @@ const AdminMessage = ({ message }) => {
|
|
|
52
52
|
};
|
|
53
53
|
return (React.createElement("div", { style: containerStyles },
|
|
54
54
|
React.createElement("div", { style: messageStyles, onClick: () => setDateTimeIsShowing(!dateTimeIsShowing) },
|
|
55
|
-
React.createElement("div", { style: senderLabelStyles }, message.sender
|
|
55
|
+
React.createElement("div", { style: senderLabelStyles }, message.sender
|
|
56
|
+
? (message.sender.first_name + '@viewber')
|
|
57
|
+
: 'viewber'),
|
|
56
58
|
React.createElement("div", { style: messageContentStyles }, message.message)),
|
|
57
59
|
dateTimeIsShowing && React.createElement(MessageDateTime_1.MessageDateTime, { date: message.createdAt, style: { display: 'block' } })));
|
|
58
60
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdminMessage.js","sourceRoot":"","sources":["../../../src/react/components/AdminMessage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAE/B,uDAAoD;AAM7C,MAAM,YAAY,GAAG,CAAC,EAAC,OAAO,EAAoB,EAAE,EAAE;IACzD,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAU,KAAK,CAAC,CAAC;IAEjF,MAAM,eAAe,GAAwB;QACzC,OAAO,EAAE,cAAc;QACvB,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,iBAAiB;KAC5B,CAAA;IAED,MAAM,aAAa,GAAwB;QACvC,YAAY,EAAE,UAAU;QACxB,MAAM,EAAE,gBAAgB;QACxB,KAAK,EAAE,MAAM;KAChB,CAAC;IAEF,MAAM,iBAAiB,GAAwB;QAC3C,eAAe,EAAE,SAAS;QAC1B,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,cAAc;QACvB,QAAQ,EAAE,SAAS;QACnB,mBAAmB,EAAE,UAAU;QAC/B,oBAAoB,EAAE,UAAU;KACnC,CAAA;IAED,MAAM,oBAAoB,GAAwB;QAC9C,OAAO,EAAE,cAAc;KAC1B,CAAA;IAED,OAAO,CACH,6BAAK,KAAK,EAAE,eAAe;QACvB,6BAAK,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,CAAC,iBAAiB,CAAC;YAC9E,6BAAK,KAAK,EAAE,iBAAiB,IACxB,OAAO,CAAC,MAAM,CAAC,UAAU,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"AdminMessage.js","sourceRoot":"","sources":["../../../src/react/components/AdminMessage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAE/B,uDAAoD;AAM7C,MAAM,YAAY,GAAG,CAAC,EAAC,OAAO,EAAoB,EAAE,EAAE;IACzD,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAU,KAAK,CAAC,CAAC;IAEjF,MAAM,eAAe,GAAwB;QACzC,OAAO,EAAE,cAAc;QACvB,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,iBAAiB;KAC5B,CAAA;IAED,MAAM,aAAa,GAAwB;QACvC,YAAY,EAAE,UAAU;QACxB,MAAM,EAAE,gBAAgB;QACxB,KAAK,EAAE,MAAM;KAChB,CAAC;IAEF,MAAM,iBAAiB,GAAwB;QAC3C,eAAe,EAAE,SAAS;QAC1B,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,cAAc;QACvB,QAAQ,EAAE,SAAS;QACnB,mBAAmB,EAAE,UAAU;QAC/B,oBAAoB,EAAE,UAAU;KACnC,CAAA;IAED,MAAM,oBAAoB,GAAwB;QAC9C,OAAO,EAAE,cAAc;KAC1B,CAAA;IAED,OAAO,CACH,6BAAK,KAAK,EAAE,eAAe;QACvB,6BAAK,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,CAAC,iBAAiB,CAAC;YAC9E,6BAAK,KAAK,EAAE,iBAAiB,IACxB,OAAO,CAAC,MAAM;gBACX,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;gBAC1C,CAAC,CAAC,SAAS,CAEb;YACN,6BAAK,KAAK,EAAE,oBAAoB,IAC3B,OAAO,CAAC,OAAO,CACd,CACJ;QACL,iBAAiB,IAAI,oBAAC,iCAAe,IAAC,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,EAAC,OAAO,EAAE,OAAO,EAAC,GAAI,CAC3F,CACT,CAAA;AACL,CAAC,CAAA;AA7CY,QAAA,YAAY,gBA6CxB"}
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import MessageModel from "../../Message";
|
|
4
|
-
import PendingMessage from '../../PendingMessage';
|
|
5
4
|
export interface MessageProps {
|
|
6
|
-
message: MessageModel
|
|
5
|
+
message: MessageModel;
|
|
7
6
|
isCurrentUser: boolean;
|
|
8
7
|
failedPendingMessageIconClassName?: string;
|
|
9
8
|
failedPendingMessageDescriptionStyles?: React.CSSProperties;
|
|
10
9
|
failedPendingMessageDescriptionClassName?: string;
|
|
11
|
-
onFailedPendingMessageClick?: (pendingMessage:
|
|
10
|
+
onFailedPendingMessageClick?: (pendingMessage: MessageModel) => void;
|
|
12
11
|
}
|
|
13
12
|
export declare const Message: {
|
|
14
13
|
({ message, isCurrentUser, failedPendingMessageIconClassName, failedPendingMessageDescriptionStyles, failedPendingMessageDescriptionClassName, onFailedPendingMessageClick }: MessageProps): JSX.Element;
|
|
@@ -29,12 +29,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
29
29
|
exports.Message = void 0;
|
|
30
30
|
const React = __importStar(require("react"));
|
|
31
31
|
const prop_types_1 = __importDefault(require("prop-types"));
|
|
32
|
-
const PendingMessage_1 = require("../../PendingMessage");
|
|
33
32
|
const MessageDateTime_1 = require("./MessageDateTime");
|
|
34
33
|
const util_1 = require("../../util");
|
|
35
34
|
const Message = ({ message, isCurrentUser, failedPendingMessageIconClassName, failedPendingMessageDescriptionStyles, failedPendingMessageDescriptionClassName, onFailedPendingMessageClick }) => {
|
|
36
35
|
const [dateTimeIsShowing, setDateTimeIsShowing] = React.useState(false);
|
|
37
|
-
const isFailedPendingMessage = (
|
|
36
|
+
const isFailedPendingMessage = (message.isPendingMessage
|
|
38
37
|
&& message.status === 'failed');
|
|
39
38
|
const handleMessageClick = () => {
|
|
40
39
|
if (!isFailedPendingMessage) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Message.js","sourceRoot":"","sources":["../../../src/react/components/Message.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,4DAAmC;AAEnC,
|
|
1
|
+
{"version":3,"file":"Message.js","sourceRoot":"","sources":["../../../src/react/components/Message.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,4DAAmC;AAEnC,uDAAoD;AACpD,qCAAmC;AAW5B,MAAM,OAAO,GAAG,CAAC,EACpB,OAAO,EACP,aAAa,EACb,iCAAiC,EACjC,qCAAqC,EACrC,wCAAwC,EACxC,2BAA2B,EAChB,EAAE,EAAE;IACf,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAU,KAAK,CAAC,CAAC;IAEjF,MAAM,sBAAsB,GAAG,CAC3B,OAAO,CAAC,gBAAgB;WACrB,OAAO,CAAC,MAAM,KAAK,QAAQ,CACjC,CAAC;IAEF,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC5B,IAAI,CAAC,sBAAsB,EAAE;YACzB,oBAAoB,CAAC,CAAC,iBAAiB,CAAC,CAAC;YACzC,OAAO;SACV;QACD,IAAI,2BAA2B,EAAE;YAC7B,2BAA2B,CAAC,OAAO,CAAC,CAAC;SACxC;IACL,CAAC,CAAA;IAED,MAAM,eAAe,GAAwB;QACzC,OAAO,EAAE,cAAc;QACvB,QAAQ,EAAE,OAAO;QACjB,MAAM,EAAE,iBAAiB;KAC5B,CAAA;IAED,MAAM,aAAa,GAAwB;QACvC,OAAO,EAAE,cAAc;QACvB,YAAY,EAAE,UAAU;QACxB,eAAe,EAAE,aAAa;YAC1B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,SAAS;QACf,KAAK,EAAE,aAAa;YAChB,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,SAAS;QACf,OAAO,EAAE,cAAc;KAC1B,CAAC;IAEF,OAAO,CACH,6BAAK,KAAK,EAAE,eAAe;QACvB;YACI,6BAAK,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,kBAAkB;gBAClD,kCAAO,OAAO,CAAC,OAAO,CAAQ,CAC5B;YACL,sBAAsB,IAAI,CAAC,IAAA,YAAK,EAAC,iCAAiC,CAAC;gBAChE,6BAAK,KAAK,EAAE,EAAC,OAAO,EAAE,cAAc,EAAC;oBACjC,2BAAG,SAAS,EAAE,iCAAiC,GAAI,CACjD;YAET,sBAAsB;gBACnB,6BAAK,SAAS,EAAE,wCAAwC,EAAE,KAAK,EAAE,qCAAqC,IAE9F,IAAA,YAAK,EAAC,2BAA2B,CAAC;oBAC9B,CAAC,CAAC,6BAA6B;oBAC/B,CAAC,CAAC,6CAA6C,CAErD;YAET,iBAAiB;gBACd;oBACI,oBAAC,iCAAe,IAAC,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,EAAC,OAAO,EAAE,OAAO,EAAC,GAAI,CACrE,CAER,CACJ,CACT,CAAA;AACL,CAAC,CAAA;AAvEY,QAAA,OAAO,WAuEnB;AAED,eAAO,CAAC,SAAS,GAAG;IAChB,OAAO,EAAE,oBAAS,CAAC,MAAM;IACzB,aAAa,EAAE,oBAAS,CAAC,IAAI;IAC7B,iCAAiC,EAAE,oBAAS,CAAC,MAAM;IACnD,qCAAqC,EAAE,oBAAS,CAAC,MAAM;IACvD,wCAAwC,EAAE,oBAAS,CAAC,MAAM;IAC1D,2BAA2B,EAAE,oBAAS,CAAC,IAAI;CAC9C,CAAA"}
|
|
@@ -3,7 +3,6 @@ import PropTypes from 'prop-types';
|
|
|
3
3
|
import ChatError from '../../ChatError';
|
|
4
4
|
import MessageModel from '../../Message';
|
|
5
5
|
import { GetLatestMessagesStatus, Messages } from '../../CachedChat';
|
|
6
|
-
import PendingMessage from '../../PendingMessage';
|
|
7
6
|
export interface MessageListProps {
|
|
8
7
|
messages: Messages;
|
|
9
8
|
currentUserId: number;
|
|
@@ -12,7 +11,7 @@ export interface MessageListProps {
|
|
|
12
11
|
failedPendingMessageIconClassName?: string;
|
|
13
12
|
failedPendingMessageDescriptionStyles?: React.CSSProperties;
|
|
14
13
|
failedPendingMessageDescriptionClassName?: string;
|
|
15
|
-
onFailedPendingMessageClick?: (pendingMessage:
|
|
14
|
+
onFailedPendingMessageClick?: (pendingMessage: MessageModel) => void;
|
|
16
15
|
getLatestMessagesStatus: GetLatestMessagesStatus;
|
|
17
16
|
markMessagesReadUpTo(message: MessageModel): Promise<{
|
|
18
17
|
error: ChatError | undefined;
|
|
@@ -32,7 +32,6 @@ const prop_types_1 = __importDefault(require("prop-types"));
|
|
|
32
32
|
const MessageRow_1 = require("./MessageRow");
|
|
33
33
|
const AdminMessage_1 = require("./AdminMessage");
|
|
34
34
|
const Message_1 = require("./Message");
|
|
35
|
-
const PendingMessage_1 = require("../../PendingMessage");
|
|
36
35
|
const util_1 = require("../../util");
|
|
37
36
|
const MessageList = ({ messages, currentUserId, messagesScrollContainerId, messagesContainerClassName, failedPendingMessageIconClassName, failedPendingMessageDescriptionStyles, failedPendingMessageDescriptionClassName, onFailedPendingMessageClick, getLatestMessagesStatus, markMessagesReadUpTo, shouldMarkMessagesAsRead, loadingContent, retryContent, noMessagesContent, onMessagesMarkedAsRead, onRequestScrollToBottomOfMessagesScrollContainer }) => {
|
|
38
37
|
const [lastMessageMarkedAsReadUpTo, setLastMessageMarkedAsReadUpTo] = React.useState();
|
|
@@ -45,8 +44,8 @@ const MessageList = ({ messages, currentUserId, messagesScrollContainerId, messa
|
|
|
45
44
|
if (!messages.length || !shouldMarkMessagesAsRead) {
|
|
46
45
|
return;
|
|
47
46
|
}
|
|
48
|
-
let latestMessage = (0, util_1.
|
|
49
|
-
if ((0, util_1.isNil)(latestMessage)) {
|
|
47
|
+
let latestMessage = (0, util_1.getLatestMessageThatHasId)(messages);
|
|
48
|
+
if ((0, util_1.isNil)(latestMessage) || (0, util_1.isNil)(latestMessage.id)) {
|
|
50
49
|
return;
|
|
51
50
|
}
|
|
52
51
|
if (((0, util_1.isNil)(lastMessageMarkedAsReadUpTo) || lastMessageMarkedAsReadUpTo < latestMessage.id)) {
|
|
@@ -73,17 +72,14 @@ const MessageList = ({ messages, currentUserId, messagesScrollContainerId, messa
|
|
|
73
72
|
return (React.createElement("div", { id: messagesScrollContainerId, className: messagesContainerClassName, style: { maxHeight: '500px', overflowY: 'auto' } }, messages.length === 0
|
|
74
73
|
? noMessagesContent
|
|
75
74
|
: messages.map(message => {
|
|
76
|
-
if (
|
|
77
|
-
return (React.createElement(MessageRow_1.MessageRow, { key: message.
|
|
78
|
-
React.createElement(Message_1.Message, { message: message, isCurrentUser: true, failedPendingMessageIconClassName: failedPendingMessageIconClassName, failedPendingMessageDescriptionStyles: failedPendingMessageDescriptionStyles, failedPendingMessageDescriptionClassName: failedPendingMessageDescriptionClassName, onFailedPendingMessageClick: onFailedPendingMessageClick })));
|
|
79
|
-
}
|
|
80
|
-
else if (message.isAdminMessage) {
|
|
81
|
-
return (React.createElement(MessageRow_1.MessageRow, { key: message.id, isCurrentUser: false },
|
|
75
|
+
if (message.isAdminMessage) {
|
|
76
|
+
return (React.createElement(MessageRow_1.MessageRow, { key: message.clientId, isCurrentUser: false },
|
|
82
77
|
React.createElement(AdminMessage_1.AdminMessage, { message: message })));
|
|
83
78
|
}
|
|
84
79
|
else {
|
|
85
|
-
|
|
86
|
-
|
|
80
|
+
const isCurrentUser = message.isPendingMessage || message.senderId === currentUserId;
|
|
81
|
+
return (React.createElement(MessageRow_1.MessageRow, { key: message.clientId, isCurrentUser: isCurrentUser },
|
|
82
|
+
React.createElement(Message_1.Message, { message: message, isCurrentUser: isCurrentUser, failedPendingMessageIconClassName: failedPendingMessageIconClassName, failedPendingMessageDescriptionStyles: failedPendingMessageDescriptionStyles, failedPendingMessageDescriptionClassName: failedPendingMessageDescriptionClassName, onFailedPendingMessageClick: onFailedPendingMessageClick })));
|
|
87
83
|
}
|
|
88
84
|
})));
|
|
89
85
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageList.js","sourceRoot":"","sources":["../../../src/react/components/MessageList.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,4DAAmC;AAInC,6CAA0C;AAC1C,iDAA8C;AAC9C,uCAAoC;AACpC,
|
|
1
|
+
{"version":3,"file":"MessageList.js","sourceRoot":"","sources":["../../../src/react/components/MessageList.tsx"],"names":[],"mappings":"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"}
|
package/dist/react/useChat.d.ts
CHANGED
|
@@ -4,7 +4,6 @@ import OnlineUser from '../OnlineUser';
|
|
|
4
4
|
import { ConnectionStatus, ChannelStatus } from '../Chat';
|
|
5
5
|
import { GetLatestMessagesStatus, Messages } from '../CachedChat';
|
|
6
6
|
import { ChatSubscriptionStatus, ChatSubscriptionEventCallbackData } from '../ChatSubscription';
|
|
7
|
-
import PendingMessage from '../PendingMessage';
|
|
8
7
|
export interface UseChatOptions {
|
|
9
8
|
idType?: 'appointment';
|
|
10
9
|
onMessages?: OnMessagesCallback | undefined;
|
|
@@ -21,7 +20,7 @@ export interface UseChatReturnValue {
|
|
|
21
20
|
getLatestMessagesStatus: GetLatestMessagesStatus | undefined;
|
|
22
21
|
initialize: () => void;
|
|
23
22
|
sendMessage: (message: string) => Promise<any> | void;
|
|
24
|
-
sendPendingMessage: (pendingMessage:
|
|
23
|
+
sendPendingMessage: (pendingMessage: Message) => Promise<any> | void;
|
|
25
24
|
getLatestMessages: () => void;
|
|
26
25
|
markMessagesReadUpTo: (message: Message) => Promise<{
|
|
27
26
|
error?: ChatError | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useChat.js","sourceRoot":"","sources":["../../src/react/useChat.ts"],"names":[],"mappings":";;;;;AAAA,iCAA0C;AAG1C,yCAAsC;AAEtC,mDAAgE;AAChE,uDAAoD;
|
|
1
|
+
{"version":3,"file":"useChat.js","sourceRoot":"","sources":["../../src/react/useChat.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
import Message from "../Message";
|
|
2
|
-
|
|
3
|
-
export declare const getLatestMessage: (messages: (Message | PendingMessage)[]) => Message | undefined;
|
|
2
|
+
export declare const getLatestMessageThatHasId: (messages: Message[]) => Message | undefined;
|
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
const Message_1 = require("../Message");
|
|
3
|
+
exports.getLatestMessageThatHasId = void 0;
|
|
5
4
|
const isNil_1 = require("./isNil");
|
|
6
|
-
const
|
|
5
|
+
const getLatestMessageThatHasId = (messages) => {
|
|
7
6
|
let latestMessage;
|
|
8
7
|
for (let i = 0, il = messages.length; i < il; i++) {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
});
|
|
8
|
+
const message = messages[i];
|
|
9
|
+
if (!(0, isNil_1.isNil)(message.id) && ((0, isNil_1.isNil)(latestMessage) || latestMessage.id < message.id)) {
|
|
10
|
+
latestMessage = message;
|
|
11
|
+
}
|
|
14
12
|
}
|
|
15
13
|
return latestMessage;
|
|
16
14
|
};
|
|
17
|
-
exports.
|
|
15
|
+
exports.getLatestMessageThatHasId = getLatestMessageThatHasId;
|
|
18
16
|
//# sourceMappingURL=getLatestMessage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLatestMessage.js","sourceRoot":"","sources":["../../src/util/getLatestMessage.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"getLatestMessage.js","sourceRoot":"","sources":["../../src/util/getLatestMessage.ts"],"names":[],"mappings":";;;AACA,mCAAgC;AAEzB,MAAM,yBAAyB,GAAG,CAAC,QAAmB,EAAqB,EAAE;IAChF,IAAI,aAAgC,CAAC;IAErC,KAAI,IAAI,CAAC,GAAC,CAAC,EAAC,EAAE,GAAC,QAAQ,CAAC,MAAM,EAAC,CAAC,GAAC,EAAE,EAAC,CAAC,EAAE,EAAE;QACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,IAAA,aAAK,EAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,IAAA,aAAK,EAAC,aAAa,CAAC,IAAI,aAAa,CAAC,EAAG,GAAG,OAAO,CAAC,EAAE,CAAC,EAAE;YAChF,aAAa,GAAG,OAAO,CAAC;SAC3B;KACJ;IAED,OAAO,aAAa,CAAC;AACzB,CAAC,CAAA;AAXY,QAAA,yBAAyB,6BAWrC"}
|
package/dist/util/index.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import { isNil } from "./isNil";
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
export { isNil, groupMessages, getLatestMessage };
|
|
2
|
+
import { getLatestMessageThatHasId } from "./getLatestMessage";
|
|
3
|
+
export { isNil, getLatestMessageThatHasId };
|
package/dist/util/index.js
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.getLatestMessageThatHasId = exports.isNil = void 0;
|
|
4
4
|
const isNil_1 = require("./isNil");
|
|
5
5
|
Object.defineProperty(exports, "isNil", { enumerable: true, get: function () { return isNil_1.isNil; } });
|
|
6
|
-
const groupMessages_1 = require("./groupMessages");
|
|
7
|
-
Object.defineProperty(exports, "groupMessages", { enumerable: true, get: function () { return groupMessages_1.groupMessages; } });
|
|
8
6
|
const getLatestMessage_1 = require("./getLatestMessage");
|
|
9
|
-
Object.defineProperty(exports, "
|
|
7
|
+
Object.defineProperty(exports, "getLatestMessageThatHasId", { enumerable: true, get: function () { return getLatestMessage_1.getLatestMessageThatHasId; } });
|
|
10
8
|
//# sourceMappingURL=index.js.map
|
package/dist/util/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAI5B,sFAJK,aAAK,OAIL;AAHT,yDAA+D;AAI3D,0GAJK,4CAAyB,OAIL"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@viewberapp/chat",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.102",
|
|
4
4
|
"description": "Viewber chat",
|
|
5
5
|
"author": "Jacob <jacob.chen@viewber.co.uk>",
|
|
6
6
|
"homepage": "https://bitbucket.org/ezadr/viewberjs#readme",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"url": "https://bitbucket.org/ezadr/viewberjs/issues"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"
|
|
32
|
+
"cuid": "^2.1.8"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
35
|
"@types/react": "^16.14.0",
|
|
@@ -42,5 +42,5 @@
|
|
|
42
42
|
"react": "^16.14.0",
|
|
43
43
|
"rollbar": "^2.25.0"
|
|
44
44
|
},
|
|
45
|
-
"gitHead": "
|
|
45
|
+
"gitHead": "f16f01758d34a03e2593e4de0f260d03af8ab32d"
|
|
46
46
|
}
|