@warriorteam/redai-zalo-sdk 1.18.0 → 1.20.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.
- package/CHANGELOG.md +156 -0
- package/README.md +33 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/services/broadcast.service.d.ts +90 -0
- package/dist/services/broadcast.service.d.ts.map +1 -0
- package/dist/services/broadcast.service.js +211 -0
- package/dist/services/broadcast.service.js.map +1 -0
- package/dist/services/group-message.service.d.ts +200 -0
- package/dist/services/group-message.service.d.ts.map +1 -1
- package/dist/services/group-message.service.js +331 -0
- package/dist/services/group-message.service.js.map +1 -1
- package/dist/types/broadcast.d.ts +244 -0
- package/dist/types/broadcast.d.ts.map +1 -0
- package/dist/types/broadcast.js +114 -0
- package/dist/types/broadcast.js.map +1 -0
- package/dist/zalo-sdk.d.ts +2 -0
- package/dist/zalo-sdk.d.ts.map +1 -1
- package/dist/zalo-sdk.js +2 -0
- package/dist/zalo-sdk.js.map +1 -1
- package/docs/API_REFERENCE.md +53 -0
- package/docs/BROADCAST_SERVICE.md +276 -0
- package/docs/group-message-list-api.md +332 -0
- package/examples/broadcast-example.ts +144 -0
- package/examples/group-message-list.ts +288 -0
- package/package.json +11 -3
|
@@ -1,5 +1,185 @@
|
|
|
1
1
|
import { ZaloClient } from "../clients/zalo-client";
|
|
2
2
|
import { GroupTextMessage, GroupImageMessage, GroupFileMessage, GroupStickerMessage, GroupMentionMessage, GroupMessageResult, GroupInfo, GroupMember } from "../types/group";
|
|
3
|
+
/**
|
|
4
|
+
* Interface cho từng tin nhắn trong danh sách tin nhắn group
|
|
5
|
+
*/
|
|
6
|
+
export interface GroupMessageItem {
|
|
7
|
+
/** Loại tin nhắn */
|
|
8
|
+
type: "text" | "image" | "file" | "sticker" | "mention";
|
|
9
|
+
/** Nội dung tin nhắn (cho text/mention message) */
|
|
10
|
+
text?: string;
|
|
11
|
+
/** URL hình ảnh (cho image message) */
|
|
12
|
+
imageUrl?: string;
|
|
13
|
+
/** Attachment ID (cho image message) */
|
|
14
|
+
attachmentId?: string;
|
|
15
|
+
/** Caption cho hình ảnh (tối đa 2000 ký tự) */
|
|
16
|
+
caption?: string;
|
|
17
|
+
/** Token file (cho file message) */
|
|
18
|
+
fileToken?: string;
|
|
19
|
+
/** Tên file (cho file message) */
|
|
20
|
+
fileName?: string;
|
|
21
|
+
/** Sticker ID (cho sticker message) */
|
|
22
|
+
stickerId?: string;
|
|
23
|
+
/** Danh sách mentions (cho mention message) */
|
|
24
|
+
mentions?: Array<{
|
|
25
|
+
user_id: string;
|
|
26
|
+
offset: number;
|
|
27
|
+
length: number;
|
|
28
|
+
}>;
|
|
29
|
+
/** Delay sau khi gửi tin nhắn này (milliseconds) */
|
|
30
|
+
delay?: number;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Interface cho request gửi danh sách tin nhắn tới 1 group
|
|
34
|
+
*/
|
|
35
|
+
export interface SendMessageListToGroupRequest {
|
|
36
|
+
/** Access token của Official Account */
|
|
37
|
+
accessToken: string;
|
|
38
|
+
/** Group ID */
|
|
39
|
+
groupId: string;
|
|
40
|
+
/** Danh sách tin nhắn */
|
|
41
|
+
messages: GroupMessageItem[];
|
|
42
|
+
/** Delay mặc định giữa các tin nhắn (milliseconds) */
|
|
43
|
+
defaultDelay?: number;
|
|
44
|
+
/** Callback function để tracking tiến trình */
|
|
45
|
+
onProgress?: (progress: GroupMessageProgressInfo) => void;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Interface cho thông tin tiến trình từng tin nhắn
|
|
49
|
+
*/
|
|
50
|
+
export interface GroupMessageProgressInfo {
|
|
51
|
+
/** Group ID */
|
|
52
|
+
groupId: string;
|
|
53
|
+
/** Index của tin nhắn trong danh sách (bắt đầu từ 0) */
|
|
54
|
+
messageIndex: number;
|
|
55
|
+
/** Tổng số tin nhắn */
|
|
56
|
+
totalMessages: number;
|
|
57
|
+
/** Loại tin nhắn */
|
|
58
|
+
messageType: string;
|
|
59
|
+
/** Trạng thái: 'started' | 'completed' | 'failed' */
|
|
60
|
+
status: 'started' | 'completed' | 'failed';
|
|
61
|
+
/** Kết quả gửi tin nhắn (nếu đã hoàn thành) */
|
|
62
|
+
result?: GroupMessageResult;
|
|
63
|
+
/** Thông tin lỗi (nếu thất bại) */
|
|
64
|
+
error?: string;
|
|
65
|
+
/** Thời gian bắt đầu */
|
|
66
|
+
startTime: number;
|
|
67
|
+
/** Thời gian kết thúc (nếu đã hoàn thành) */
|
|
68
|
+
endTime?: number;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Interface cho response gửi danh sách tin nhắn tới 1 group
|
|
72
|
+
*/
|
|
73
|
+
export interface SendMessageListToGroupResponse {
|
|
74
|
+
/** Group ID */
|
|
75
|
+
groupId: string;
|
|
76
|
+
/** Tổng số tin nhắn */
|
|
77
|
+
totalMessages: number;
|
|
78
|
+
/** Số tin nhắn gửi thành công */
|
|
79
|
+
successfulMessages: number;
|
|
80
|
+
/** Số tin nhắn gửi thất bại */
|
|
81
|
+
failedMessages: number;
|
|
82
|
+
/** Chi tiết kết quả từng tin nhắn */
|
|
83
|
+
messageResults: Array<{
|
|
84
|
+
/** Index của tin nhắn trong danh sách */
|
|
85
|
+
messageIndex: number;
|
|
86
|
+
/** Loại tin nhắn */
|
|
87
|
+
messageType: string;
|
|
88
|
+
/** Trạng thái gửi */
|
|
89
|
+
success: boolean;
|
|
90
|
+
/** Kết quả chi tiết */
|
|
91
|
+
result?: GroupMessageResult;
|
|
92
|
+
/** Thông tin lỗi nếu thất bại */
|
|
93
|
+
error?: string;
|
|
94
|
+
/** Thời gian bắt đầu gửi */
|
|
95
|
+
startTime: number;
|
|
96
|
+
/** Thời gian kết thúc */
|
|
97
|
+
endTime: number;
|
|
98
|
+
/** Thời gian thực hiện (milliseconds) */
|
|
99
|
+
duration: number;
|
|
100
|
+
}>;
|
|
101
|
+
/** Tổng thời gian thực hiện (milliseconds) */
|
|
102
|
+
totalDuration: number;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Interface cho request gửi danh sách tin nhắn tới nhiều groups
|
|
106
|
+
*/
|
|
107
|
+
export interface SendMessageListToMultipleGroupsRequest {
|
|
108
|
+
/** Access token của Official Account */
|
|
109
|
+
accessToken: string;
|
|
110
|
+
/** Danh sách group IDs */
|
|
111
|
+
groupIds: string[];
|
|
112
|
+
/** Danh sách tin nhắn */
|
|
113
|
+
messages: GroupMessageItem[];
|
|
114
|
+
/** Delay mặc định giữa các tin nhắn (milliseconds) */
|
|
115
|
+
defaultDelay?: number;
|
|
116
|
+
/** Delay giữa các groups (milliseconds) để tránh rate limit */
|
|
117
|
+
delayBetweenGroups?: number;
|
|
118
|
+
/** Callback function để tracking tiến trình */
|
|
119
|
+
onProgress?: (progress: MultipleGroupsProgressInfo) => void;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Interface cho thông tin tiến trình từng group
|
|
123
|
+
*/
|
|
124
|
+
export interface MultipleGroupsProgressInfo {
|
|
125
|
+
/** Group ID hiện tại */
|
|
126
|
+
groupId: string;
|
|
127
|
+
/** Index của group trong danh sách (bắt đầu từ 0) */
|
|
128
|
+
groupIndex: number;
|
|
129
|
+
/** Tổng số groups */
|
|
130
|
+
totalGroups: number;
|
|
131
|
+
/** Trạng thái: 'started' | 'completed' | 'failed' */
|
|
132
|
+
status: 'started' | 'completed' | 'failed';
|
|
133
|
+
/** Kết quả gửi tin nhắn cho group này (nếu đã hoàn thành) */
|
|
134
|
+
result?: SendMessageListToGroupResponse;
|
|
135
|
+
/** Thông tin lỗi (nếu thất bại) */
|
|
136
|
+
error?: string;
|
|
137
|
+
/** Thời gian bắt đầu */
|
|
138
|
+
startTime: number;
|
|
139
|
+
/** Thời gian kết thúc (nếu đã hoàn thành) */
|
|
140
|
+
endTime?: number;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Interface cho response gửi danh sách tin nhắn tới nhiều groups
|
|
144
|
+
*/
|
|
145
|
+
export interface SendMessageListToMultipleGroupsResponse {
|
|
146
|
+
/** Tổng số groups */
|
|
147
|
+
totalGroups: number;
|
|
148
|
+
/** Số groups gửi thành công */
|
|
149
|
+
successfulGroups: number;
|
|
150
|
+
/** Số groups gửi thất bại */
|
|
151
|
+
failedGroups: number;
|
|
152
|
+
/** Chi tiết kết quả từng group */
|
|
153
|
+
groupResults: Array<{
|
|
154
|
+
/** Group ID */
|
|
155
|
+
groupId: string;
|
|
156
|
+
/** Index của group trong danh sách */
|
|
157
|
+
groupIndex: number;
|
|
158
|
+
/** Trạng thái gửi cho group này */
|
|
159
|
+
success: boolean;
|
|
160
|
+
/** Kết quả chi tiết gửi tin nhắn */
|
|
161
|
+
messageListResult?: SendMessageListToGroupResponse;
|
|
162
|
+
/** Thông tin lỗi nếu thất bại */
|
|
163
|
+
error?: string;
|
|
164
|
+
/** Thời gian bắt đầu gửi */
|
|
165
|
+
startTime: number;
|
|
166
|
+
/** Thời gian kết thúc */
|
|
167
|
+
endTime: number;
|
|
168
|
+
/** Thời gian thực hiện (milliseconds) */
|
|
169
|
+
duration: number;
|
|
170
|
+
}>;
|
|
171
|
+
/** Tổng thời gian thực hiện (milliseconds) */
|
|
172
|
+
totalDuration: number;
|
|
173
|
+
/** Thống kê tin nhắn tổng cộng */
|
|
174
|
+
messageStats: {
|
|
175
|
+
/** Tổng số tin nhắn đã gửi thành công */
|
|
176
|
+
totalSuccessfulMessages: number;
|
|
177
|
+
/** Tổng số tin nhắn thất bại */
|
|
178
|
+
totalFailedMessages: number;
|
|
179
|
+
/** Tổng số tin nhắn */
|
|
180
|
+
totalMessages: number;
|
|
181
|
+
};
|
|
182
|
+
}
|
|
3
183
|
/**
|
|
4
184
|
* Service for handling Zalo Official Account Group Message Framework (GMF) APIs
|
|
5
185
|
*
|
|
@@ -97,6 +277,26 @@ export declare class GroupMessageService {
|
|
|
97
277
|
members: GroupMember[];
|
|
98
278
|
total: number;
|
|
99
279
|
}>;
|
|
280
|
+
/**
|
|
281
|
+
* Gửi danh sách tin nhắn tới 1 group với delay tùy chỉnh
|
|
282
|
+
* Hỗ trợ tất cả các loại tin nhắn: text, image, file, sticker, mention
|
|
283
|
+
*
|
|
284
|
+
* @param request Thông tin request gửi danh sách tin nhắn
|
|
285
|
+
* @returns Kết quả gửi từng tin nhắn
|
|
286
|
+
*/
|
|
287
|
+
sendMessageListToGroup(request: SendMessageListToGroupRequest): Promise<SendMessageListToGroupResponse>;
|
|
100
288
|
private handleGroupMessageError;
|
|
289
|
+
/**
|
|
290
|
+
* Gửi danh sách tin nhắn tới nhiều groups với callback tracking
|
|
291
|
+
*
|
|
292
|
+
* @param request Thông tin request gửi danh sách tin nhắn tới nhiều groups
|
|
293
|
+
* @returns Kết quả gửi tin nhắn cho tất cả groups
|
|
294
|
+
*/
|
|
295
|
+
sendMessageListToMultipleGroups(request: SendMessageListToMultipleGroupsRequest): Promise<SendMessageListToMultipleGroupsResponse>;
|
|
296
|
+
/**
|
|
297
|
+
* Utility method để sleep/delay
|
|
298
|
+
* @param ms Thời gian delay tính bằng milliseconds
|
|
299
|
+
*/
|
|
300
|
+
private sleep;
|
|
101
301
|
}
|
|
102
302
|
//# sourceMappingURL=group-message.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"group-message.service.d.ts","sourceRoot":"","sources":["../../src/services/group-message.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,SAAS,EACT,WAAW,EACZ,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"group-message.service.d.ts","sourceRoot":"","sources":["../../src/services/group-message.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.GroupMessageService = void 0;
|
|
4
|
+
const common_1 = require("../types/common");
|
|
4
5
|
/**
|
|
5
6
|
* Service for handling Zalo Official Account Group Message Framework (GMF) APIs
|
|
6
7
|
*
|
|
@@ -247,6 +248,183 @@ class GroupMessageService {
|
|
|
247
248
|
throw this.handleGroupMessageError(error, "Failed to get group members");
|
|
248
249
|
}
|
|
249
250
|
}
|
|
251
|
+
/**
|
|
252
|
+
* Gửi danh sách tin nhắn tới 1 group với delay tùy chỉnh
|
|
253
|
+
* Hỗ trợ tất cả các loại tin nhắn: text, image, file, sticker, mention
|
|
254
|
+
*
|
|
255
|
+
* @param request Thông tin request gửi danh sách tin nhắn
|
|
256
|
+
* @returns Kết quả gửi từng tin nhắn
|
|
257
|
+
*/
|
|
258
|
+
async sendMessageListToGroup(request) {
|
|
259
|
+
const startTime = Date.now();
|
|
260
|
+
const messageResults = [];
|
|
261
|
+
let successfulMessages = 0;
|
|
262
|
+
let failedMessages = 0;
|
|
263
|
+
try {
|
|
264
|
+
// Validate input
|
|
265
|
+
if (!request.accessToken || request.accessToken.trim().length === 0) {
|
|
266
|
+
throw new common_1.ZaloSDKError("Access token không được để trống", -1);
|
|
267
|
+
}
|
|
268
|
+
if (!request.groupId || request.groupId.trim().length === 0) {
|
|
269
|
+
throw new common_1.ZaloSDKError("Group ID không được để trống", -1);
|
|
270
|
+
}
|
|
271
|
+
if (!request.messages || request.messages.length === 0) {
|
|
272
|
+
throw new common_1.ZaloSDKError("Danh sách tin nhắn không được để trống", -1);
|
|
273
|
+
}
|
|
274
|
+
// Gửi từng tin nhắn theo thứ tự
|
|
275
|
+
for (let i = 0; i < request.messages.length; i++) {
|
|
276
|
+
const message = request.messages[i];
|
|
277
|
+
const messageStartTime = Date.now();
|
|
278
|
+
// Callback: Bắt đầu gửi tin nhắn
|
|
279
|
+
if (request.onProgress) {
|
|
280
|
+
request.onProgress({
|
|
281
|
+
groupId: request.groupId,
|
|
282
|
+
messageIndex: i,
|
|
283
|
+
totalMessages: request.messages.length,
|
|
284
|
+
messageType: message.type,
|
|
285
|
+
status: 'started',
|
|
286
|
+
startTime: messageStartTime,
|
|
287
|
+
});
|
|
288
|
+
}
|
|
289
|
+
const messageResult = {
|
|
290
|
+
messageIndex: i,
|
|
291
|
+
messageType: message.type,
|
|
292
|
+
success: false,
|
|
293
|
+
startTime: messageStartTime,
|
|
294
|
+
endTime: 0,
|
|
295
|
+
duration: 0,
|
|
296
|
+
};
|
|
297
|
+
try {
|
|
298
|
+
let result;
|
|
299
|
+
// Gửi tin nhắn theo loại
|
|
300
|
+
switch (message.type) {
|
|
301
|
+
case "text":
|
|
302
|
+
if (!message.text) {
|
|
303
|
+
throw new Error("Text không được để trống cho text message");
|
|
304
|
+
}
|
|
305
|
+
result = await this.sendTextMessage(request.accessToken, request.groupId, { type: "text", text: message.text });
|
|
306
|
+
break;
|
|
307
|
+
case "image":
|
|
308
|
+
if (!message.imageUrl && !message.attachmentId) {
|
|
309
|
+
throw new Error("imageUrl hoặc attachmentId là bắt buộc cho image message");
|
|
310
|
+
}
|
|
311
|
+
result = await this.sendImageMessage(request.accessToken, request.groupId, {
|
|
312
|
+
type: "image",
|
|
313
|
+
imageUrl: message.imageUrl,
|
|
314
|
+
attachmentId: message.attachmentId,
|
|
315
|
+
caption: message.caption,
|
|
316
|
+
});
|
|
317
|
+
break;
|
|
318
|
+
case "file":
|
|
319
|
+
if (!message.fileToken) {
|
|
320
|
+
throw new Error("fileToken là bắt buộc cho file message");
|
|
321
|
+
}
|
|
322
|
+
result = await this.sendFileMessage(request.accessToken, request.groupId, {
|
|
323
|
+
type: "file",
|
|
324
|
+
fileToken: message.fileToken,
|
|
325
|
+
fileName: message.fileName,
|
|
326
|
+
});
|
|
327
|
+
break;
|
|
328
|
+
case "sticker":
|
|
329
|
+
if (!message.stickerId) {
|
|
330
|
+
throw new Error("stickerId là bắt buộc cho sticker message");
|
|
331
|
+
}
|
|
332
|
+
result = await this.sendStickerMessage(request.accessToken, request.groupId, {
|
|
333
|
+
type: "sticker",
|
|
334
|
+
stickerId: message.stickerId,
|
|
335
|
+
});
|
|
336
|
+
break;
|
|
337
|
+
case "mention":
|
|
338
|
+
if (!message.text || !message.mentions) {
|
|
339
|
+
throw new Error("text và mentions là bắt buộc cho mention message");
|
|
340
|
+
}
|
|
341
|
+
result = await this.sendMentionMessage(request.accessToken, request.groupId, {
|
|
342
|
+
type: "mention",
|
|
343
|
+
text: message.text,
|
|
344
|
+
mentions: message.mentions,
|
|
345
|
+
});
|
|
346
|
+
break;
|
|
347
|
+
default:
|
|
348
|
+
throw new Error(`Loại tin nhắn không được hỗ trợ: ${message.type}`);
|
|
349
|
+
}
|
|
350
|
+
// Ghi nhận thành công
|
|
351
|
+
const messageEndTime = Date.now();
|
|
352
|
+
messageResult.success = true;
|
|
353
|
+
messageResult.result = result;
|
|
354
|
+
messageResult.endTime = messageEndTime;
|
|
355
|
+
messageResult.duration = messageEndTime - messageStartTime;
|
|
356
|
+
successfulMessages++;
|
|
357
|
+
// Callback: Hoàn thành thành công
|
|
358
|
+
if (request.onProgress) {
|
|
359
|
+
request.onProgress({
|
|
360
|
+
groupId: request.groupId,
|
|
361
|
+
messageIndex: i,
|
|
362
|
+
totalMessages: request.messages.length,
|
|
363
|
+
messageType: message.type,
|
|
364
|
+
status: 'completed',
|
|
365
|
+
result: result,
|
|
366
|
+
startTime: messageStartTime,
|
|
367
|
+
endTime: messageEndTime,
|
|
368
|
+
});
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
catch (error) {
|
|
372
|
+
// Ghi nhận thất bại
|
|
373
|
+
const messageEndTime = Date.now();
|
|
374
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
375
|
+
messageResult.success = false;
|
|
376
|
+
messageResult.error = errorMessage;
|
|
377
|
+
messageResult.endTime = messageEndTime;
|
|
378
|
+
messageResult.duration = messageEndTime - messageStartTime;
|
|
379
|
+
failedMessages++;
|
|
380
|
+
// Callback: Thất bại
|
|
381
|
+
if (request.onProgress) {
|
|
382
|
+
request.onProgress({
|
|
383
|
+
groupId: request.groupId,
|
|
384
|
+
messageIndex: i,
|
|
385
|
+
totalMessages: request.messages.length,
|
|
386
|
+
messageType: message.type,
|
|
387
|
+
status: 'failed',
|
|
388
|
+
error: errorMessage,
|
|
389
|
+
startTime: messageStartTime,
|
|
390
|
+
endTime: messageEndTime,
|
|
391
|
+
});
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
messageResults.push(messageResult);
|
|
395
|
+
// Delay trước khi gửi tin nhắn tiếp theo (trừ tin nhắn cuối cùng)
|
|
396
|
+
if (i < request.messages.length - 1) {
|
|
397
|
+
const delayTime = message.delay ?? request.defaultDelay ?? 0;
|
|
398
|
+
if (delayTime > 0) {
|
|
399
|
+
await this.sleep(delayTime);
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
const totalDuration = Date.now() - startTime;
|
|
404
|
+
return {
|
|
405
|
+
groupId: request.groupId,
|
|
406
|
+
totalMessages: request.messages.length,
|
|
407
|
+
successfulMessages,
|
|
408
|
+
failedMessages,
|
|
409
|
+
messageResults,
|
|
410
|
+
totalDuration,
|
|
411
|
+
};
|
|
412
|
+
}
|
|
413
|
+
catch (error) {
|
|
414
|
+
const totalDuration = Date.now() - startTime;
|
|
415
|
+
if (error instanceof common_1.ZaloSDKError) {
|
|
416
|
+
throw error;
|
|
417
|
+
}
|
|
418
|
+
throw new common_1.ZaloSDKError(`Failed to send message list to group: ${error.message}`, -1, {
|
|
419
|
+
groupId: request.groupId,
|
|
420
|
+
totalMessages: request.messages?.length || 0,
|
|
421
|
+
successfulMessages,
|
|
422
|
+
failedMessages,
|
|
423
|
+
messageResults,
|
|
424
|
+
totalDuration,
|
|
425
|
+
});
|
|
426
|
+
}
|
|
427
|
+
}
|
|
250
428
|
handleGroupMessageError(error, defaultMessage) {
|
|
251
429
|
if (error.response?.data) {
|
|
252
430
|
const errorData = error.response.data;
|
|
@@ -254,6 +432,159 @@ class GroupMessageService {
|
|
|
254
432
|
}
|
|
255
433
|
return new Error(`${defaultMessage}: ${error.message || "Unknown error"}`);
|
|
256
434
|
}
|
|
435
|
+
/**
|
|
436
|
+
* Gửi danh sách tin nhắn tới nhiều groups với callback tracking
|
|
437
|
+
*
|
|
438
|
+
* @param request Thông tin request gửi danh sách tin nhắn tới nhiều groups
|
|
439
|
+
* @returns Kết quả gửi tin nhắn cho tất cả groups
|
|
440
|
+
*/
|
|
441
|
+
async sendMessageListToMultipleGroups(request) {
|
|
442
|
+
const startTime = Date.now();
|
|
443
|
+
const groupResults = [];
|
|
444
|
+
let successfulGroups = 0;
|
|
445
|
+
let failedGroups = 0;
|
|
446
|
+
let totalSuccessfulMessages = 0;
|
|
447
|
+
let totalFailedMessages = 0;
|
|
448
|
+
try {
|
|
449
|
+
// Validate input
|
|
450
|
+
if (!request.accessToken || request.accessToken.trim().length === 0) {
|
|
451
|
+
throw new common_1.ZaloSDKError("Access token không được để trống", -1);
|
|
452
|
+
}
|
|
453
|
+
if (!request.groupIds || request.groupIds.length === 0) {
|
|
454
|
+
throw new common_1.ZaloSDKError("Danh sách group IDs không được để trống", -1);
|
|
455
|
+
}
|
|
456
|
+
if (!request.messages || request.messages.length === 0) {
|
|
457
|
+
throw new common_1.ZaloSDKError("Danh sách tin nhắn không được để trống", -1);
|
|
458
|
+
}
|
|
459
|
+
// Loại bỏ group IDs trùng lặp và rỗng
|
|
460
|
+
const uniqueGroupIds = [...new Set(request.groupIds.filter(id => id && id.trim().length > 0))];
|
|
461
|
+
if (uniqueGroupIds.length === 0) {
|
|
462
|
+
throw new common_1.ZaloSDKError("Không có group ID hợp lệ nào", -1);
|
|
463
|
+
}
|
|
464
|
+
// Gửi tin nhắn cho từng group tuần tự
|
|
465
|
+
for (let i = 0; i < uniqueGroupIds.length; i++) {
|
|
466
|
+
const groupId = uniqueGroupIds[i];
|
|
467
|
+
const groupStartTime = Date.now();
|
|
468
|
+
// Callback: Bắt đầu gửi cho group
|
|
469
|
+
if (request.onProgress) {
|
|
470
|
+
request.onProgress({
|
|
471
|
+
groupId,
|
|
472
|
+
groupIndex: i,
|
|
473
|
+
totalGroups: uniqueGroupIds.length,
|
|
474
|
+
status: 'started',
|
|
475
|
+
startTime: groupStartTime,
|
|
476
|
+
});
|
|
477
|
+
}
|
|
478
|
+
const groupResult = {
|
|
479
|
+
groupId,
|
|
480
|
+
groupIndex: i,
|
|
481
|
+
success: false,
|
|
482
|
+
startTime: groupStartTime,
|
|
483
|
+
endTime: 0,
|
|
484
|
+
duration: 0,
|
|
485
|
+
};
|
|
486
|
+
try {
|
|
487
|
+
// Gửi danh sách tin nhắn cho group này
|
|
488
|
+
const messageListResult = await this.sendMessageListToGroup({
|
|
489
|
+
accessToken: request.accessToken,
|
|
490
|
+
groupId,
|
|
491
|
+
messages: request.messages,
|
|
492
|
+
defaultDelay: request.defaultDelay,
|
|
493
|
+
// Không truyền onProgress để tránh callback lồng nhau
|
|
494
|
+
});
|
|
495
|
+
// Ghi nhận thành công
|
|
496
|
+
const groupEndTime = Date.now();
|
|
497
|
+
groupResult.success = true;
|
|
498
|
+
groupResult.messageListResult = messageListResult;
|
|
499
|
+
groupResult.endTime = groupEndTime;
|
|
500
|
+
groupResult.duration = groupEndTime - groupStartTime;
|
|
501
|
+
successfulGroups++;
|
|
502
|
+
totalSuccessfulMessages += messageListResult.successfulMessages;
|
|
503
|
+
totalFailedMessages += messageListResult.failedMessages;
|
|
504
|
+
// Callback: Hoàn thành thành công
|
|
505
|
+
if (request.onProgress) {
|
|
506
|
+
request.onProgress({
|
|
507
|
+
groupId,
|
|
508
|
+
groupIndex: i,
|
|
509
|
+
totalGroups: uniqueGroupIds.length,
|
|
510
|
+
status: 'completed',
|
|
511
|
+
result: messageListResult,
|
|
512
|
+
startTime: groupStartTime,
|
|
513
|
+
endTime: groupEndTime,
|
|
514
|
+
});
|
|
515
|
+
}
|
|
516
|
+
}
|
|
517
|
+
catch (error) {
|
|
518
|
+
// Ghi nhận thất bại
|
|
519
|
+
const groupEndTime = Date.now();
|
|
520
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
521
|
+
groupResult.success = false;
|
|
522
|
+
groupResult.error = errorMessage;
|
|
523
|
+
groupResult.endTime = groupEndTime;
|
|
524
|
+
groupResult.duration = groupEndTime - groupStartTime;
|
|
525
|
+
failedGroups++;
|
|
526
|
+
// Với group thất bại, coi như tất cả tin nhắn đều thất bại
|
|
527
|
+
totalFailedMessages += request.messages.length;
|
|
528
|
+
// Callback: Thất bại
|
|
529
|
+
if (request.onProgress) {
|
|
530
|
+
request.onProgress({
|
|
531
|
+
groupId,
|
|
532
|
+
groupIndex: i,
|
|
533
|
+
totalGroups: uniqueGroupIds.length,
|
|
534
|
+
status: 'failed',
|
|
535
|
+
error: errorMessage,
|
|
536
|
+
startTime: groupStartTime,
|
|
537
|
+
endTime: groupEndTime,
|
|
538
|
+
});
|
|
539
|
+
}
|
|
540
|
+
}
|
|
541
|
+
groupResults.push(groupResult);
|
|
542
|
+
// Delay giữa các groups (trừ group cuối cùng)
|
|
543
|
+
if (i < uniqueGroupIds.length - 1 && request.delayBetweenGroups && request.delayBetweenGroups > 0) {
|
|
544
|
+
await this.sleep(request.delayBetweenGroups);
|
|
545
|
+
}
|
|
546
|
+
}
|
|
547
|
+
const totalDuration = Date.now() - startTime;
|
|
548
|
+
const totalMessages = uniqueGroupIds.length * request.messages.length;
|
|
549
|
+
return {
|
|
550
|
+
totalGroups: uniqueGroupIds.length,
|
|
551
|
+
successfulGroups,
|
|
552
|
+
failedGroups,
|
|
553
|
+
groupResults,
|
|
554
|
+
totalDuration,
|
|
555
|
+
messageStats: {
|
|
556
|
+
totalSuccessfulMessages,
|
|
557
|
+
totalFailedMessages,
|
|
558
|
+
totalMessages,
|
|
559
|
+
},
|
|
560
|
+
};
|
|
561
|
+
}
|
|
562
|
+
catch (error) {
|
|
563
|
+
const totalDuration = Date.now() - startTime;
|
|
564
|
+
if (error instanceof common_1.ZaloSDKError) {
|
|
565
|
+
throw error;
|
|
566
|
+
}
|
|
567
|
+
throw new common_1.ZaloSDKError(`Failed to send message list to multiple groups: ${error.message}`, -1, {
|
|
568
|
+
totalGroups: request.groupIds?.length || 0,
|
|
569
|
+
successfulGroups,
|
|
570
|
+
failedGroups,
|
|
571
|
+
groupResults,
|
|
572
|
+
totalDuration,
|
|
573
|
+
messageStats: {
|
|
574
|
+
totalSuccessfulMessages,
|
|
575
|
+
totalFailedMessages,
|
|
576
|
+
totalMessages: (request.groupIds?.length || 0) * (request.messages?.length || 0),
|
|
577
|
+
},
|
|
578
|
+
});
|
|
579
|
+
}
|
|
580
|
+
}
|
|
581
|
+
/**
|
|
582
|
+
* Utility method để sleep/delay
|
|
583
|
+
* @param ms Thời gian delay tính bằng milliseconds
|
|
584
|
+
*/
|
|
585
|
+
sleep(ms) {
|
|
586
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
587
|
+
}
|
|
257
588
|
}
|
|
258
589
|
exports.GroupMessageService = GroupMessageService;
|
|
259
590
|
//# sourceMappingURL=group-message.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"group-message.service.js","sourceRoot":"","sources":["../../src/services/group-message.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"group-message.service.js","sourceRoot":"","sources":["../../src/services/group-message.service.ts"],"names":[],"mappings":";;;AAWA,4CAA+C;AA6L/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAa,mBAAmB;IAc9B,YAA6B,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;QAb/C,kDAAkD;QACjC,cAAS,GAAG;YAC3B,0BAA0B;YAC1B,OAAO,EAAE;gBACP,KAAK,EAAE,+CAA+C;aACvD;YACD,6BAA6B;YAC7B,KAAK,EAAE;gBACL,OAAO,EAAE,+CAA+C;gBACxD,UAAU,EAAE,kDAAkD;aAC/D;SACF,CAAC;IAEgD,CAAC;IAEnD;;;;;;OAMG;IACH,KAAK,CAAC,eAAe,CACnB,WAAmB,EACnB,OAAe,EACf,OAAyB;QAEzB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACxC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAC5B,WAAW,EACX;gBACE,SAAS,EAAE;oBACT,QAAQ,EAAE,OAAO;iBAClB;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,OAAO,CAAC,IAAI;iBACnB;aACF,CACF,CAAC;YAEF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,uBAAuB,CAChC,KAAK,EACL,sCAAsC,CACvC,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,gBAAgB,CACpB,WAAmB,EACnB,OAAe,EACf,OAA0B;QAE1B,IAAI,CAAC;YACH,4DAA4D;YAC5D,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gBAC/C,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;YACtE,CAAC;YAED,0BAA0B;YAC1B,MAAM,cAAc,GAAQ;gBAC1B,UAAU,EAAE;oBACV,IAAI,EAAE,UAAU;oBAChB,OAAO,EAAE;wBACP,aAAa,EAAE,OAAO;wBACtB,QAAQ,EAAE;4BACR;gCACE,UAAU,EAAE,OAAO;gCACnB,GAAG,CAAC,OAAO,CAAC,YAAY;oCACtB,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,YAAY,EAAE;oCACzC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;6BAC/B;yBACF;qBACF;iBACF;aACF,CAAC;YAEF,qDAAqD;YACrD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;oBAClC,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;gBAC3D,CAAC;gBACD,cAAc,CAAC,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;YACxC,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACxC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAC5B,WAAW,EACX;gBACE,SAAS,EAAE;oBACT,QAAQ,EAAE,OAAO;iBAClB;gBACD,OAAO,EAAE,cAAc;aACxB,CACF,CAAC;YAEF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,uBAAuB,CAChC,KAAK,EACL,uCAAuC,CACxC,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,eAAe,CACnB,WAAmB,EACnB,OAAe,EACf,OAAyB;QAEzB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACxC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAC5B,WAAW,EACX;gBACE,SAAS,EAAE;oBACT,QAAQ,EAAE,OAAO;iBAClB;gBACD,OAAO,EAAE;oBACP,UAAU,EAAE;wBACV,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE;4BACP,KAAK,EAAE,OAAO,CAAC,SAAS;yBACzB;qBACF;iBACF;aACF,CACF,CAAC;YAEF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,uBAAuB,CAChC,KAAK,EACL,sCAAsC,CACvC,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,kBAAkB,CACtB,WAAmB,EACnB,OAAe,EACf,OAA4B;QAE5B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACxC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAC5B,WAAW,EACX;gBACE,SAAS,EAAE;oBACT,QAAQ,EAAE,OAAO;iBAClB;gBACD,OAAO,EAAE;oBACP,UAAU,EAAE;wBACV,IAAI,EAAE,UAAU;wBAChB,OAAO,EAAE;4BACP,aAAa,EAAE,OAAO;4BACtB,QAAQ,EAAE;gCACR;oCACE,UAAU,EAAE,SAAS;oCACrB,aAAa,EAAE,OAAO,CAAC,SAAS;iCACjC;6BACF;yBACF;qBACF;iBACF;aACF,CACF,CAAC;YAEF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,uBAAuB,CAChC,KAAK,EACL,yCAAyC,CAC1C,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,kBAAkB,CACtB,WAAmB,EACnB,OAAe,EACf,OAA4B;QAE5B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACxC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAC5B,WAAW,EACX;gBACE,SAAS,EAAE;oBACT,QAAQ,EAAE,OAAO;iBAClB;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,OAAO,EAAE,OAAO,CAAC,QAAQ;iBAC1B;aACF,CACF,CAAC;YAEF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,uBAAuB,CAChC,KAAK,EACL,yCAAyC,CAC1C,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY,CAAC,WAAmB,EAAE,OAAe;QACrD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CACvC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,EAC5B,WAAW,EACX;gBACE,QAAQ,EAAE,OAAO;aAClB,CACF,CAAC;YAEF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,uBAAuB,CAChC,KAAK,EACL,iCAAiC,CAClC,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,eAAe,CACnB,WAAmB,EACnB,OAAe,EACf,SAAiB,CAAC,EAClB,QAAgB,EAAE;QAElB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAGtC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE;gBAC/C,QAAQ,EAAE,OAAO;gBACjB,MAAM;gBACN,KAAK;aACN,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,6BAA6B,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,sBAAsB,CACjC,OAAsC;QAEtC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,cAAc,GAAqD,EAAE,CAAC;QAC5E,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,cAAc,GAAG,CAAC,CAAC;QAEvB,IAAI,CAAC;YACH,iBAAiB;YACjB,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACpE,MAAM,IAAI,qBAAY,CAAC,kCAAkC,EAAE,CAAC,CAAC,CAAC,CAAC;YACjE,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5D,MAAM,IAAI,qBAAY,CAAC,8BAA8B,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7D,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvD,MAAM,IAAI,qBAAY,CAAC,wCAAwC,EAAE,CAAC,CAAC,CAAC,CAAC;YACvE,CAAC;YAED,gCAAgC;YAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACjD,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACpC,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAEpC,iCAAiC;gBACjC,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;oBACvB,OAAO,CAAC,UAAU,CAAC;wBACjB,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,YAAY,EAAE,CAAC;wBACf,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;wBACtC,WAAW,EAAE,OAAO,CAAC,IAAI;wBACzB,MAAM,EAAE,SAAS;wBACjB,SAAS,EAAE,gBAAgB;qBAC5B,CAAC,CAAC;gBACL,CAAC;gBAED,MAAM,aAAa,GAAG;oBACpB,YAAY,EAAE,CAAC;oBACf,WAAW,EAAE,OAAO,CAAC,IAAI;oBACzB,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,gBAAgB;oBAC3B,OAAO,EAAE,CAAC;oBACV,QAAQ,EAAE,CAAC;iBAC2C,CAAC;gBAEzD,IAAI,CAAC;oBACH,IAAI,MAA0B,CAAC;oBAE/B,yBAAyB;oBACzB,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;wBACrB,KAAK,MAAM;4BACT,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gCAClB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;4BAC/D,CAAC;4BACD,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CACjC,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,OAAO,EACf,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CACrC,CAAC;4BACF,MAAM;wBAER,KAAK,OAAO;4BACV,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gCAC/C,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;4BAC9E,CAAC;4BACD,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAClC,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,OAAO,EACf;gCACE,IAAI,EAAE,OAAO;gCACb,QAAQ,EAAE,OAAO,CAAC,QAAQ;gCAC1B,YAAY,EAAE,OAAO,CAAC,YAAY;gCAClC,OAAO,EAAE,OAAO,CAAC,OAAO;6BACzB,CACF,CAAC;4BACF,MAAM;wBAER,KAAK,MAAM;4BACT,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gCACvB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;4BAC5D,CAAC;4BACD,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CACjC,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,OAAO,EACf;gCACE,IAAI,EAAE,MAAM;gCACZ,SAAS,EAAE,OAAO,CAAC,SAAS;gCAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;6BAC3B,CACF,CAAC;4BACF,MAAM;wBAER,KAAK,SAAS;4BACZ,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gCACvB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;4BAC/D,CAAC;4BACD,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CACpC,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,OAAO,EACf;gCACE,IAAI,EAAE,SAAS;gCACf,SAAS,EAAE,OAAO,CAAC,SAAS;6BAC7B,CACF,CAAC;4BACF,MAAM;wBAER,KAAK,SAAS;4BACZ,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;gCACvC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;4BACtE,CAAC;4BACD,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CACpC,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,OAAO,EACf;gCACE,IAAI,EAAE,SAAS;gCACf,IAAI,EAAE,OAAO,CAAC,IAAI;gCAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;6BAC3B,CACF,CAAC;4BACF,MAAM;wBAER;4BACE,MAAM,IAAI,KAAK,CAAC,oCAAoC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;oBACxE,CAAC;oBAED,sBAAsB;oBACtB,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBAClC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;oBAC7B,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC;oBAC9B,aAAa,CAAC,OAAO,GAAG,cAAc,CAAC;oBACvC,aAAa,CAAC,QAAQ,GAAG,cAAc,GAAG,gBAAgB,CAAC;oBAE3D,kBAAkB,EAAE,CAAC;oBAErB,kCAAkC;oBAClC,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;wBACvB,OAAO,CAAC,UAAU,CAAC;4BACjB,OAAO,EAAE,OAAO,CAAC,OAAO;4BACxB,YAAY,EAAE,CAAC;4BACf,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;4BACtC,WAAW,EAAE,OAAO,CAAC,IAAI;4BACzB,MAAM,EAAE,WAAW;4BACnB,MAAM,EAAE,MAAM;4BACd,SAAS,EAAE,gBAAgB;4BAC3B,OAAO,EAAE,cAAc;yBACxB,CAAC,CAAC;oBACL,CAAC;gBAEH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,oBAAoB;oBACpB,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBAClC,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAE5E,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;oBAC9B,aAAa,CAAC,KAAK,GAAG,YAAY,CAAC;oBACnC,aAAa,CAAC,OAAO,GAAG,cAAc,CAAC;oBACvC,aAAa,CAAC,QAAQ,GAAG,cAAc,GAAG,gBAAgB,CAAC;oBAE3D,cAAc,EAAE,CAAC;oBAEjB,qBAAqB;oBACrB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;wBACvB,OAAO,CAAC,UAAU,CAAC;4BACjB,OAAO,EAAE,OAAO,CAAC,OAAO;4BACxB,YAAY,EAAE,CAAC;4BACf,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;4BACtC,WAAW,EAAE,OAAO,CAAC,IAAI;4BACzB,MAAM,EAAE,QAAQ;4BAChB,KAAK,EAAE,YAAY;4BACnB,SAAS,EAAE,gBAAgB;4BAC3B,OAAO,EAAE,cAAc;yBACxB,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBAED,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAEnC,kEAAkE;gBAClE,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,YAAY,IAAI,CAAC,CAAC;oBAC7D,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;wBAClB,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;oBAC9B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAE7C,OAAO;gBACL,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;gBACtC,kBAAkB;gBAClB,cAAc;gBACd,cAAc;gBACd,aAAa;aACd,CAAC;QAEJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAE7C,IAAI,KAAK,YAAY,qBAAY,EAAE,CAAC;gBAClC,MAAM,KAAK,CAAC;YACd,CAAC;YAED,MAAM,IAAI,qBAAY,CACpB,yCAA0C,KAAe,CAAC,OAAO,EAAE,EACnE,CAAC,CAAC,EACF;gBACE,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,aAAa,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;gBAC5C,kBAAkB;gBAClB,cAAc;gBACd,cAAc;gBACd,aAAa;aACd,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,uBAAuB,CAAC,KAAU,EAAE,cAAsB;QAChE,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;YACzB,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;YACtC,OAAO,IAAI,KAAK,CACd,GAAG,cAAc,KACf,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,KAAK,IAAI,eAC1C,EAAE,CACH,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,KAAK,CAAC,GAAG,cAAc,KAAK,KAAK,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,+BAA+B,CAC1C,OAA+C;QAE/C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,YAAY,GAA4D,EAAE,CAAC;QACjF,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,uBAAuB,GAAG,CAAC,CAAC;QAChC,IAAI,mBAAmB,GAAG,CAAC,CAAC;QAE5B,IAAI,CAAC;YACH,iBAAiB;YACjB,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACpE,MAAM,IAAI,qBAAY,CAAC,kCAAkC,EAAE,CAAC,CAAC,CAAC,CAAC;YACjE,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvD,MAAM,IAAI,qBAAY,CAAC,yCAAyC,EAAE,CAAC,CAAC,CAAC,CAAC;YACxE,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvD,MAAM,IAAI,qBAAY,CAAC,wCAAwC,EAAE,CAAC,CAAC,CAAC,CAAC;YACvE,CAAC;YAED,sCAAsC;YACtC,MAAM,cAAc,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAE/F,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAChC,MAAM,IAAI,qBAAY,CAAC,8BAA8B,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7D,CAAC;YAED,sCAAsC;YACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC/C,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;gBAClC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAElC,kCAAkC;gBAClC,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;oBACvB,OAAO,CAAC,UAAU,CAAC;wBACjB,OAAO;wBACP,UAAU,EAAE,CAAC;wBACb,WAAW,EAAE,cAAc,CAAC,MAAM;wBAClC,MAAM,EAAE,SAAS;wBACjB,SAAS,EAAE,cAAc;qBAC1B,CAAC,CAAC;gBACL,CAAC;gBAED,MAAM,WAAW,GAAG;oBAClB,OAAO;oBACP,UAAU,EAAE,CAAC;oBACb,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,cAAc;oBACzB,OAAO,EAAE,CAAC;oBACV,QAAQ,EAAE,CAAC;iBACkD,CAAC;gBAEhE,IAAI,CAAC;oBACH,uCAAuC;oBACvC,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC;wBAC1D,WAAW,EAAE,OAAO,CAAC,WAAW;wBAChC,OAAO;wBACP,QAAQ,EAAE,OAAO,CAAC,QAAQ;wBAC1B,YAAY,EAAE,OAAO,CAAC,YAAY;wBAClC,sDAAsD;qBACvD,CAAC,CAAC;oBAEH,sBAAsB;oBACtB,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBAChC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;oBAC3B,WAAW,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;oBAClD,WAAW,CAAC,OAAO,GAAG,YAAY,CAAC;oBACnC,WAAW,CAAC,QAAQ,GAAG,YAAY,GAAG,cAAc,CAAC;oBAErD,gBAAgB,EAAE,CAAC;oBACnB,uBAAuB,IAAI,iBAAiB,CAAC,kBAAkB,CAAC;oBAChE,mBAAmB,IAAI,iBAAiB,CAAC,cAAc,CAAC;oBAExD,kCAAkC;oBAClC,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;wBACvB,OAAO,CAAC,UAAU,CAAC;4BACjB,OAAO;4BACP,UAAU,EAAE,CAAC;4BACb,WAAW,EAAE,cAAc,CAAC,MAAM;4BAClC,MAAM,EAAE,WAAW;4BACnB,MAAM,EAAE,iBAAiB;4BACzB,SAAS,EAAE,cAAc;4BACzB,OAAO,EAAE,YAAY;yBACtB,CAAC,CAAC;oBACL,CAAC;gBAEH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,oBAAoB;oBACpB,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBAChC,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAE5E,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;oBAC5B,WAAW,CAAC,KAAK,GAAG,YAAY,CAAC;oBACjC,WAAW,CAAC,OAAO,GAAG,YAAY,CAAC;oBACnC,WAAW,CAAC,QAAQ,GAAG,YAAY,GAAG,cAAc,CAAC;oBAErD,YAAY,EAAE,CAAC;oBACf,2DAA2D;oBAC3D,mBAAmB,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;oBAE/C,qBAAqB;oBACrB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;wBACvB,OAAO,CAAC,UAAU,CAAC;4BACjB,OAAO;4BACP,UAAU,EAAE,CAAC;4BACb,WAAW,EAAE,cAAc,CAAC,MAAM;4BAClC,MAAM,EAAE,QAAQ;4BAChB,KAAK,EAAE,YAAY;4BACnB,SAAS,EAAE,cAAc;4BACzB,OAAO,EAAE,YAAY;yBACtB,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBAED,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAE/B,8CAA8C;gBAC9C,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,kBAAkB,IAAI,OAAO,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;oBAClG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;YAED,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAC7C,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YAEtE,OAAO;gBACL,WAAW,EAAE,cAAc,CAAC,MAAM;gBAClC,gBAAgB;gBAChB,YAAY;gBACZ,YAAY;gBACZ,aAAa;gBACb,YAAY,EAAE;oBACZ,uBAAuB;oBACvB,mBAAmB;oBACnB,aAAa;iBACd;aACF,CAAC;QAEJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAE7C,IAAI,KAAK,YAAY,qBAAY,EAAE,CAAC;gBAClC,MAAM,KAAK,CAAC;YACd,CAAC;YAED,MAAM,IAAI,qBAAY,CACpB,mDAAoD,KAAe,CAAC,OAAO,EAAE,EAC7E,CAAC,CAAC,EACF;gBACE,WAAW,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;gBAC1C,gBAAgB;gBAChB,YAAY;gBACZ,YAAY;gBACZ,aAAa;gBACb,YAAY,EAAE;oBACZ,uBAAuB;oBACvB,mBAAmB;oBACnB,aAAa,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,CAAC;iBACjF;aACF,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,EAAU;QACtB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;CACF;AA1sBD,kDA0sBC"}
|