@tellescope/sdk 1.236.2 → 1.237.1

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 (41) hide show
  1. package/lib/cjs/enduser.d.ts +1 -0
  2. package/lib/cjs/enduser.d.ts.map +1 -1
  3. package/lib/cjs/enduser.js +1 -0
  4. package/lib/cjs/enduser.js.map +1 -1
  5. package/lib/cjs/sdk.d.ts +1 -0
  6. package/lib/cjs/sdk.d.ts.map +1 -1
  7. package/lib/cjs/sdk.js +1 -0
  8. package/lib/cjs/sdk.js.map +1 -1
  9. package/lib/cjs/tests/api_tests/inbox_thread_assignment_updates.test.d.ts.map +1 -1
  10. package/lib/cjs/tests/api_tests/inbox_thread_assignment_updates.test.js +172 -64
  11. package/lib/cjs/tests/api_tests/inbox_thread_assignment_updates.test.js.map +1 -1
  12. package/lib/cjs/tests/api_tests/inbox_thread_mdb_filter.test.d.ts +6 -0
  13. package/lib/cjs/tests/api_tests/inbox_thread_mdb_filter.test.d.ts.map +1 -0
  14. package/lib/cjs/tests/api_tests/inbox_thread_mdb_filter.test.js +372 -0
  15. package/lib/cjs/tests/api_tests/inbox_thread_mdb_filter.test.js.map +1 -0
  16. package/lib/cjs/tests/tests.js +571 -105
  17. package/lib/cjs/tests/tests.js.map +1 -1
  18. package/lib/esm/enduser.d.ts +3 -0
  19. package/lib/esm/enduser.d.ts.map +1 -1
  20. package/lib/esm/enduser.js +1 -0
  21. package/lib/esm/enduser.js.map +1 -1
  22. package/lib/esm/sdk.d.ts +5 -2
  23. package/lib/esm/sdk.d.ts.map +1 -1
  24. package/lib/esm/sdk.js +1 -0
  25. package/lib/esm/sdk.js.map +1 -1
  26. package/lib/esm/tests/api_tests/inbox_thread_assignment_updates.test.d.ts.map +1 -1
  27. package/lib/esm/tests/api_tests/inbox_thread_assignment_updates.test.js +172 -64
  28. package/lib/esm/tests/api_tests/inbox_thread_assignment_updates.test.js.map +1 -1
  29. package/lib/esm/tests/api_tests/inbox_thread_mdb_filter.test.d.ts +6 -0
  30. package/lib/esm/tests/api_tests/inbox_thread_mdb_filter.test.d.ts.map +1 -0
  31. package/lib/esm/tests/api_tests/inbox_thread_mdb_filter.test.js +368 -0
  32. package/lib/esm/tests/api_tests/inbox_thread_mdb_filter.test.js.map +1 -0
  33. package/lib/esm/tests/tests.js +571 -105
  34. package/lib/esm/tests/tests.js.map +1 -1
  35. package/lib/tsconfig.tsbuildinfo +1 -1
  36. package/package.json +10 -10
  37. package/src/enduser.ts +4 -0
  38. package/src/sdk.ts +4 -0
  39. package/src/tests/api_tests/inbox_thread_assignment_updates.test.ts +99 -0
  40. package/src/tests/tests.ts +399 -1
  41. package/test_generated.pdf +0 -0
@@ -0,0 +1,372 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
39
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
40
+ if (ar || !(i in from)) {
41
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
42
+ ar[i] = from[i];
43
+ }
44
+ }
45
+ return to.concat(ar || Array.prototype.slice.call(from));
46
+ };
47
+ Object.defineProperty(exports, "__esModule", { value: true });
48
+ exports.inbox_thread_mdb_filter_tests = void 0;
49
+ require('source-map-support').install();
50
+ var sdk_1 = require("../../sdk");
51
+ var testing_1 = require("@tellescope/testing");
52
+ var setup_1 = require("../setup");
53
+ var host = process.env.API_URL || 'http://localhost:8080';
54
+ var inbox_thread_mdb_filter_tests = function (_a) {
55
+ var sdk = _a.sdk, sdkNonAdmin = _a.sdkNonAdmin;
56
+ return __awaiter(void 0, void 0, void 0, function () {
57
+ var timestamp, testUser, testUser2, testEnduser, testEnduser2, baseTimestamp, oldTimestamp, emailThread, smsThread, chatThread, phoneThread, createdThreadIds, emailOnly, foundEmail, foundSmsInEmail, emailAndSms, foundEmailIn, foundSmsIn, foundChatIn, assignedToUser1, foundAssigned1, foundAssigned2, foundAssigned3, urgentTags, foundUrgent1, foundUrgent2, foundUrgent3, urgentAndVip, foundBoth1, foundBoth2, recentOnly, foundRecent1, foundRecent2, foundRecent3, readThreads, foundRead1, foundRead2, unreadThreads, foundUnread1, foundUnread2, combined, foundCombined1, foundCombined2, foundCombined3, countResult, withEnduserFilter, foundWithEnduser, emptyFilter, err_1;
58
+ var _b, _c, _d, _e;
59
+ var _f;
60
+ return __generator(this, function (_g) {
61
+ switch (_g.label) {
62
+ case 0:
63
+ (0, testing_1.log_header)("InboxThread mdbFilter Tests");
64
+ timestamp = Date.now();
65
+ return [4 /*yield*/, sdk.api.users.createOne({
66
+ fname: "Test",
67
+ lname: "MdbFilter",
68
+ email: "test-mdbfilter-".concat(timestamp, "@test.com"),
69
+ notificationEmailsDisabled: true
70
+ })];
71
+ case 1:
72
+ testUser = _g.sent();
73
+ return [4 /*yield*/, sdk.api.users.createOne({
74
+ fname: "Test",
75
+ lname: "MdbFilter2",
76
+ email: "test-mdbfilter2-".concat(timestamp, "@test.com"),
77
+ notificationEmailsDisabled: true
78
+ })];
79
+ case 2:
80
+ testUser2 = _g.sent();
81
+ return [4 /*yield*/, sdk.api.endusers.createOne({
82
+ fname: "Test",
83
+ lname: "Patient",
84
+ email: "test-patient-mdbfilter-".concat(timestamp, "@test.com")
85
+ })];
86
+ case 3:
87
+ testEnduser = _g.sent();
88
+ return [4 /*yield*/, sdk.api.endusers.createOne({
89
+ fname: "Test",
90
+ lname: "Patient2",
91
+ email: "test-patient-mdbfilter2-".concat(timestamp, "@test.com")
92
+ })
93
+ // Create test threads with different properties for filtering
94
+ ];
95
+ case 4:
96
+ testEnduser2 = _g.sent();
97
+ baseTimestamp = new Date();
98
+ oldTimestamp = new Date(baseTimestamp.getTime() - 7 * 24 * 60 * 60 * 1000) // 7 days ago
99
+ ;
100
+ return [4 /*yield*/, sdk.api.inbox_threads.createOne({
101
+ type: "Email",
102
+ title: "Email Thread for Filter Test",
103
+ threadId: "email-filter-test-".concat(timestamp),
104
+ assignedTo: [testUser.id],
105
+ enduserIds: [testEnduser.id],
106
+ userIds: [sdk.userInfo.id],
107
+ inboxStatus: 'New',
108
+ preview: 'Email preview',
109
+ timestamp: baseTimestamp,
110
+ tags: ['urgent', 'vip'],
111
+ readBy: (_b = {}, _b[sdk.userInfo.id] = new Date(), _b),
112
+ })
113
+ // Thread 2: SMS, unassigned, no tags, unread
114
+ ];
115
+ case 5:
116
+ emailThread = _g.sent();
117
+ return [4 /*yield*/, sdk.api.inbox_threads.createOne({
118
+ type: "SMS",
119
+ title: "SMS Thread for Filter Test",
120
+ threadId: "sms-filter-test-".concat(timestamp),
121
+ phoneNumber: "+15555551111",
122
+ enduserPhoneNumber: "+15555552222",
123
+ assignedTo: [],
124
+ enduserIds: [testEnduser.id],
125
+ userIds: [sdk.userInfo.id],
126
+ inboxStatus: 'New',
127
+ preview: 'SMS preview',
128
+ timestamp: oldTimestamp,
129
+ })
130
+ // Thread 3: Chat, assigned to testUser2, has different tags
131
+ ];
132
+ case 6:
133
+ smsThread = _g.sent();
134
+ return [4 /*yield*/, sdk.api.inbox_threads.createOne({
135
+ type: "Chat",
136
+ title: "Chat Thread for Filter Test",
137
+ threadId: "chat-filter-test-".concat(timestamp),
138
+ assignedTo: [testUser2.id],
139
+ enduserIds: [testEnduser2.id],
140
+ userIds: [sdk.userInfo.id],
141
+ inboxStatus: 'In Progress',
142
+ preview: 'Chat preview',
143
+ timestamp: baseTimestamp,
144
+ tags: ['follow-up'],
145
+ outboundTimestamp: new Date(),
146
+ })
147
+ // Thread 4: Phone, multiple assignees
148
+ ];
149
+ case 7:
150
+ chatThread = _g.sent();
151
+ return [4 /*yield*/, sdk.api.inbox_threads.createOne({
152
+ type: "Phone",
153
+ title: "Phone Thread for Filter Test",
154
+ threadId: "phone-filter-test-".concat(timestamp),
155
+ phoneNumber: "+15555553333",
156
+ enduserPhoneNumber: "+15555554444",
157
+ assignedTo: [testUser.id, testUser2.id],
158
+ enduserIds: [testEnduser.id],
159
+ userIds: [sdk.userInfo.id],
160
+ inboxStatus: 'New',
161
+ preview: 'Phone preview',
162
+ timestamp: oldTimestamp,
163
+ tags: ['urgent'],
164
+ })];
165
+ case 8:
166
+ phoneThread = _g.sent();
167
+ createdThreadIds = [emailThread.id, smsThread.id, chatThread.id, phoneThread.id];
168
+ _g.label = 9;
169
+ case 9:
170
+ _g.trys.push([9, , 22, 26]);
171
+ // Test 1: Filter by channel type (single)
172
+ console.log("Test 1: Filter by single channel type");
173
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
174
+ mdbFilter: { type: 'Email' }
175
+ })];
176
+ case 10:
177
+ emailOnly = _g.sent();
178
+ foundEmail = emailOnly.threads.find(function (t) { return t.id === emailThread.id; });
179
+ foundSmsInEmail = emailOnly.threads.find(function (t) { return t.id === smsThread.id; });
180
+ (0, testing_1.assert)(!!foundEmail, 'Email thread should be found when filtering by Email type');
181
+ (0, testing_1.assert)(!foundSmsInEmail, 'SMS thread should not be found when filtering by Email type');
182
+ // Test 2: Filter by multiple channel types ($in)
183
+ console.log("Test 2: Filter by multiple channel types");
184
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
185
+ mdbFilter: { type: { $in: ['Email', 'SMS'] } }
186
+ })];
187
+ case 11:
188
+ emailAndSms = _g.sent();
189
+ foundEmailIn = emailAndSms.threads.find(function (t) { return t.id === emailThread.id; });
190
+ foundSmsIn = emailAndSms.threads.find(function (t) { return t.id === smsThread.id; });
191
+ foundChatIn = emailAndSms.threads.find(function (t) { return t.id === chatThread.id; });
192
+ (0, testing_1.assert)(!!foundEmailIn, 'Email thread should be found');
193
+ (0, testing_1.assert)(!!foundSmsIn, 'SMS thread should be found');
194
+ (0, testing_1.assert)(!foundChatIn, 'Chat thread should not be found');
195
+ // Test 3: Filter by assignee
196
+ console.log("Test 3: Filter by assignee");
197
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
198
+ mdbFilter: { assignedTo: testUser.id }
199
+ })];
200
+ case 12:
201
+ assignedToUser1 = _g.sent();
202
+ foundAssigned1 = assignedToUser1.threads.find(function (t) { return t.id === emailThread.id; });
203
+ foundAssigned2 = assignedToUser1.threads.find(function (t) { return t.id === phoneThread.id; });
204
+ foundAssigned3 = assignedToUser1.threads.find(function (t) { return t.id === chatThread.id; });
205
+ (0, testing_1.assert)(!!foundAssigned1, 'Email thread should be found (assigned to testUser)');
206
+ (0, testing_1.assert)(!!foundAssigned2, 'Phone thread should be found (assigned to testUser)');
207
+ (0, testing_1.assert)(!foundAssigned3, 'Chat thread should not be found (assigned to testUser2)');
208
+ // Test 4: Filter by tags ($in - any match)
209
+ console.log("Test 4: Filter by tags (any match)");
210
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
211
+ mdbFilter: { tags: { $in: ['urgent'] } }
212
+ })];
213
+ case 13:
214
+ urgentTags = _g.sent();
215
+ foundUrgent1 = urgentTags.threads.find(function (t) { return t.id === emailThread.id; });
216
+ foundUrgent2 = urgentTags.threads.find(function (t) { return t.id === phoneThread.id; });
217
+ foundUrgent3 = urgentTags.threads.find(function (t) { return t.id === smsThread.id; });
218
+ (0, testing_1.assert)(!!foundUrgent1, 'Email thread should be found (has urgent tag)');
219
+ (0, testing_1.assert)(!!foundUrgent2, 'Phone thread should be found (has urgent tag)');
220
+ (0, testing_1.assert)(!foundUrgent3, 'SMS thread should not be found (no tags)');
221
+ // Test 5: Filter by tags ($all - all must match)
222
+ console.log("Test 5: Filter by tags (all must match)");
223
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
224
+ mdbFilter: { tags: { $all: ['urgent', 'vip'] } }
225
+ })];
226
+ case 14:
227
+ urgentAndVip = _g.sent();
228
+ foundBoth1 = urgentAndVip.threads.find(function (t) { return t.id === emailThread.id; });
229
+ foundBoth2 = urgentAndVip.threads.find(function (t) { return t.id === phoneThread.id; });
230
+ (0, testing_1.assert)(!!foundBoth1, 'Email thread should be found (has both urgent and vip)');
231
+ (0, testing_1.assert)(!foundBoth2, 'Phone thread should not be found (only has urgent)');
232
+ // Test 6: Filter by timestamp range
233
+ console.log("Test 6: Filter by timestamp range");
234
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
235
+ mdbFilter: {
236
+ timestamp: {
237
+ $gte: new Date(baseTimestamp.getTime() - 1000),
238
+ $lte: new Date(baseTimestamp.getTime() + 1000) // 1 second after base
239
+ }
240
+ }
241
+ })];
242
+ case 15:
243
+ recentOnly = _g.sent();
244
+ foundRecent1 = recentOnly.threads.find(function (t) { return t.id === emailThread.id; });
245
+ foundRecent2 = recentOnly.threads.find(function (t) { return t.id === chatThread.id; });
246
+ foundRecent3 = recentOnly.threads.find(function (t) { return t.id === smsThread.id; });
247
+ (0, testing_1.assert)(!!foundRecent1, 'Email thread should be found (recent timestamp)');
248
+ (0, testing_1.assert)(!!foundRecent2, 'Chat thread should be found (recent timestamp)');
249
+ (0, testing_1.assert)(!foundRecent3, 'SMS thread should not be found (old timestamp)');
250
+ // Test 7: Filter by read status (read)
251
+ console.log("Test 7: Filter by read status (read)");
252
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
253
+ mdbFilter: (_c = {}, _c["readBy.".concat(sdk.userInfo.id)] = { $exists: true, $ne: '' }, _c)
254
+ })];
255
+ case 16:
256
+ readThreads = _g.sent();
257
+ foundRead1 = readThreads.threads.find(function (t) { return t.id === emailThread.id; });
258
+ foundRead2 = readThreads.threads.find(function (t) { return t.id === smsThread.id; });
259
+ (0, testing_1.assert)(!!foundRead1, 'Email thread should be found (marked as read)');
260
+ (0, testing_1.assert)(!foundRead2, 'SMS thread should not be found (not read)');
261
+ // Test 8: Filter by read status (unread)
262
+ console.log("Test 8: Filter by read status (unread)");
263
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
264
+ mdbFilter: {
265
+ $or: [
266
+ (_d = {}, _d["readBy.".concat(sdk.userInfo.id)] = { $exists: false }, _d),
267
+ (_e = {}, _e["readBy.".concat(sdk.userInfo.id)] = '', _e)
268
+ ]
269
+ }
270
+ })];
271
+ case 17:
272
+ unreadThreads = _g.sent();
273
+ foundUnread1 = unreadThreads.threads.find(function (t) { return t.id === smsThread.id; });
274
+ foundUnread2 = unreadThreads.threads.find(function (t) { return t.id === emailThread.id; });
275
+ (0, testing_1.assert)(!!foundUnread1, 'SMS thread should be found (unread)');
276
+ (0, testing_1.assert)(!foundUnread2, 'Email thread should not be found (already read)');
277
+ // Test 9: Combined filters
278
+ console.log("Test 9: Combined filters (type + tags)");
279
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
280
+ mdbFilter: {
281
+ type: { $in: ['Email', 'Phone'] },
282
+ tags: { $in: ['urgent'] }
283
+ }
284
+ })];
285
+ case 18:
286
+ combined = _g.sent();
287
+ foundCombined1 = combined.threads.find(function (t) { return t.id === emailThread.id; });
288
+ foundCombined2 = combined.threads.find(function (t) { return t.id === phoneThread.id; });
289
+ foundCombined3 = combined.threads.find(function (t) { return t.id === chatThread.id; });
290
+ (0, testing_1.assert)(!!foundCombined1, 'Email thread should be found (Email type + urgent tag)');
291
+ (0, testing_1.assert)(!!foundCombined2, 'Phone thread should be found (Phone type + urgent tag)');
292
+ (0, testing_1.assert)(!foundCombined3, 'Chat thread should not be found (Chat type, no urgent)');
293
+ // Test 10: mdbFilter with returnCount
294
+ console.log("Test 10: mdbFilter with returnCount");
295
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
296
+ mdbFilter: { type: 'Email' },
297
+ returnCount: true
298
+ })];
299
+ case 19:
300
+ countResult = _g.sent();
301
+ (0, testing_1.assert)(((_f = countResult.count) !== null && _f !== void 0 ? _f : 0) >= 1, 'Count should be at least 1 for Email threads');
302
+ (0, testing_1.assert)(countResult.threads.length === 0, 'Threads array should be empty when returnCount is true');
303
+ // Test 11: mdbFilter combined with existing params
304
+ console.log("Test 11: mdbFilter combined with enduserIds param");
305
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
306
+ enduserIds: [testEnduser.id],
307
+ mdbFilter: { type: 'Email' }
308
+ })];
309
+ case 20:
310
+ withEnduserFilter = _g.sent();
311
+ foundWithEnduser = withEnduserFilter.threads.find(function (t) { return t.id === emailThread.id; });
312
+ (0, testing_1.assert)(!!foundWithEnduser, 'Email thread should be found with combined filters');
313
+ // Test 12: Empty mdbFilter should return all accessible threads
314
+ console.log("Test 12: Empty mdbFilter");
315
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
316
+ mdbFilter: {}
317
+ })];
318
+ case 21:
319
+ emptyFilter = _g.sent();
320
+ (0, testing_1.assert)(emptyFilter.threads.length > 0, 'Should return threads with empty mdbFilter');
321
+ console.log("All mdbFilter tests passed!");
322
+ return [3 /*break*/, 26];
323
+ case 22:
324
+ _g.trys.push([22, 24, , 25]);
325
+ return [4 /*yield*/, Promise.all(__spreadArray(__spreadArray([], createdThreadIds.map(function (id) { return sdk.api.inbox_threads.deleteOne(id); }), true), [
326
+ sdk.api.users.deleteOne(testUser.id),
327
+ sdk.api.users.deleteOne(testUser2.id),
328
+ sdk.api.endusers.deleteOne(testEnduser.id),
329
+ sdk.api.endusers.deleteOne(testEnduser2.id),
330
+ ], false))];
331
+ case 23:
332
+ _g.sent();
333
+ return [3 /*break*/, 25];
334
+ case 24:
335
+ err_1 = _g.sent();
336
+ console.error("Cleanup error:", err_1);
337
+ return [3 /*break*/, 25];
338
+ case 25: return [7 /*endfinally*/];
339
+ case 26: return [2 /*return*/];
340
+ }
341
+ });
342
+ });
343
+ };
344
+ exports.inbox_thread_mdb_filter_tests = inbox_thread_mdb_filter_tests;
345
+ // Allow running this test file independently
346
+ if (require.main === module) {
347
+ var sdk_2 = new sdk_1.Session({ host: host });
348
+ var sdkNonAdmin_1 = new sdk_1.Session({ host: host });
349
+ var runTests = function () { return __awaiter(void 0, void 0, void 0, function () {
350
+ return __generator(this, function (_a) {
351
+ switch (_a.label) {
352
+ case 0: return [4 /*yield*/, (0, setup_1.setup_tests)(sdk_2, sdkNonAdmin_1)];
353
+ case 1:
354
+ _a.sent();
355
+ return [4 /*yield*/, (0, exports.inbox_thread_mdb_filter_tests)({ sdk: sdk_2, sdkNonAdmin: sdkNonAdmin_1 })];
356
+ case 2:
357
+ _a.sent();
358
+ return [2 /*return*/];
359
+ }
360
+ });
361
+ }); };
362
+ runTests()
363
+ .then(function () {
364
+ console.log("✅ InboxThread mdbFilter test suite completed successfully");
365
+ process.exit(0);
366
+ })
367
+ .catch(function (error) {
368
+ console.error("❌ InboxThread mdbFilter test suite failed:", error);
369
+ process.exit(1);
370
+ });
371
+ }
372
+ //# sourceMappingURL=inbox_thread_mdb_filter.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inbox_thread_mdb_filter.test.js","sourceRoot":"","sources":["../../../../src/tests/api_tests/inbox_thread_mdb_filter.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,EAAE,CAAC;AAExC,iCAAmC;AACnC,+CAG4B;AAC5B,kCAAsC;AAEtC,IAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,uBAAgC,CAAA;AAE7D,IAAM,6BAA6B,GAAG,UAAO,EAA4D;QAA1D,GAAG,SAAA,EAAE,WAAW,iBAAA;;;;;;;;oBACpE,IAAA,oBAAU,EAAC,6BAA6B,CAAC,CAAA;oBAGnC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;oBAGX,qBAAM,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;4BAC7C,KAAK,EAAE,MAAM;4BACb,KAAK,EAAE,WAAW;4BAClB,KAAK,EAAE,yBAAkB,SAAS,cAAW;4BAC7C,0BAA0B,EAAE,IAAI;yBACjC,CAAC,EAAA;;oBALI,QAAQ,GAAG,SAKf;oBAEgB,qBAAM,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;4BAC9C,KAAK,EAAE,MAAM;4BACb,KAAK,EAAE,YAAY;4BACnB,KAAK,EAAE,0BAAmB,SAAS,cAAW;4BAC9C,0BAA0B,EAAE,IAAI;yBACjC,CAAC,EAAA;;oBALI,SAAS,GAAG,SAKhB;oBAEkB,qBAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC;4BACnD,KAAK,EAAE,MAAM;4BACb,KAAK,EAAE,SAAS;4BAChB,KAAK,EAAE,iCAA0B,SAAS,cAAW;yBACtD,CAAC,EAAA;;oBAJI,WAAW,GAAG,SAIlB;oBAEmB,qBAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC;4BACpD,KAAK,EAAE,MAAM;4BACb,KAAK,EAAE,UAAU;4BACjB,KAAK,EAAE,kCAA2B,SAAS,cAAW;yBACvD,CAAC;wBAEF,8DAA8D;sBAF5D;;oBAJI,YAAY,GAAG,SAInB;oBAGI,aAAa,GAAG,IAAI,IAAI,EAAE,CAAA;oBAC1B,YAAY,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;oBAAd,CAAA;oBAG5D,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC;4BACxD,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,8BAA8B;4BACrC,QAAQ,EAAE,4BAAqB,SAAS,CAAE;4BAC1C,UAAU,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;4BACzB,UAAU,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;4BAC5B,OAAO,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC1B,WAAW,EAAE,KAAK;4BAClB,OAAO,EAAE,eAAe;4BACxB,SAAS,EAAE,aAAa;4BACxB,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC;4BACvB,MAAM,YAAI,GAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAG,IAAI,IAAI,EAAE,KAAE;yBAC1C,CAAC;wBAEF,6CAA6C;sBAF3C;;oBAZI,WAAW,GAAG,SAYlB;oBAGgB,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC;4BACtD,IAAI,EAAE,KAAK;4BACX,KAAK,EAAE,4BAA4B;4BACnC,QAAQ,EAAE,0BAAmB,SAAS,CAAE;4BACxC,WAAW,EAAE,cAAc;4BAC3B,kBAAkB,EAAE,cAAc;4BAClC,UAAU,EAAE,EAAE;4BACd,UAAU,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;4BAC5B,OAAO,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC1B,WAAW,EAAE,KAAK;4BAClB,OAAO,EAAE,aAAa;4BACtB,SAAS,EAAE,YAAY;yBACxB,CAAC;wBAEF,4DAA4D;sBAF1D;;oBAZI,SAAS,GAAG,SAYhB;oBAGiB,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC;4BACvD,IAAI,EAAE,MAAM;4BACZ,KAAK,EAAE,6BAA6B;4BACpC,QAAQ,EAAE,2BAAoB,SAAS,CAAE;4BACzC,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC;4BAC1B,UAAU,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;4BAC7B,OAAO,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC1B,WAAW,EAAE,aAAa;4BAC1B,OAAO,EAAE,cAAc;4BACvB,SAAS,EAAE,aAAa;4BACxB,IAAI,EAAE,CAAC,WAAW,CAAC;4BACnB,iBAAiB,EAAE,IAAI,IAAI,EAAE;yBAC9B,CAAC;wBAEF,sCAAsC;sBAFpC;;oBAZI,UAAU,GAAG,SAYjB;oBAGkB,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC;4BACxD,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,8BAA8B;4BACrC,QAAQ,EAAE,4BAAqB,SAAS,CAAE;4BAC1C,WAAW,EAAE,cAAc;4BAC3B,kBAAkB,EAAE,cAAc;4BAClC,UAAU,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC;4BACvC,UAAU,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;4BAC5B,OAAO,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC1B,WAAW,EAAE,KAAK;4BAClB,OAAO,EAAE,eAAe;4BACxB,SAAS,EAAE,YAAY;4BACvB,IAAI,EAAE,CAAC,QAAQ,CAAC;yBACjB,CAAC,EAAA;;oBAbI,WAAW,GAAG,SAalB;oBAEI,gBAAgB,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC,CAAA;;;;oBAGpF,0CAA0C;oBAC1C,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAA;oBAClC,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC;4BACzD,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;yBAC7B,CAAC,EAAA;;oBAFI,SAAS,GAAG,SAEhB;oBACI,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBACjE,eAAe,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE,EAArB,CAAqB,CAAC,CAAA;oBAC1E,IAAA,gBAAM,EAAC,CAAC,CAAC,UAAU,EAAE,2DAA2D,CAAC,CAAA;oBACjF,IAAA,gBAAM,EAAC,CAAC,eAAe,EAAE,6DAA6D,CAAC,CAAA;oBAEvF,iDAAiD;oBACjD,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAA;oBACnC,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC;4BAC3D,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE;yBAC/C,CAAC,EAAA;;oBAFI,WAAW,GAAG,SAElB;oBACI,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBACrE,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE,EAArB,CAAqB,CAAC,CAAA;oBACjE,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,EAAtB,CAAsB,CAAC,CAAA;oBACzE,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,8BAA8B,CAAC,CAAA;oBACtD,IAAA,gBAAM,EAAC,CAAC,CAAC,UAAU,EAAE,4BAA4B,CAAC,CAAA;oBAClD,IAAA,gBAAM,EAAC,CAAC,WAAW,EAAE,iCAAiC,CAAC,CAAA;oBAEvD,6BAA6B;oBAC7B,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;oBACjB,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC;4BAC/D,SAAS,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE;yBACvC,CAAC,EAAA;;oBAFI,eAAe,GAAG,SAEtB;oBACI,cAAc,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBAC3E,cAAc,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBAC3E,cAAc,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,EAAtB,CAAsB,CAAC,CAAA;oBAChF,IAAA,gBAAM,EAAC,CAAC,CAAC,cAAc,EAAE,qDAAqD,CAAC,CAAA;oBAC/E,IAAA,gBAAM,EAAC,CAAC,CAAC,cAAc,EAAE,qDAAqD,CAAC,CAAA;oBAC/E,IAAA,gBAAM,EAAC,CAAC,cAAc,EAAE,yDAAyD,CAAC,CAAA;oBAElF,2CAA2C;oBAC3C,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAA;oBAC9B,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC;4BAC1D,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE;yBACzC,CAAC,EAAA;;oBAFI,UAAU,GAAG,SAEjB;oBACI,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBACpE,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBACpE,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE,EAArB,CAAqB,CAAC,CAAA;oBACxE,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,+CAA+C,CAAC,CAAA;oBACvE,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,+CAA+C,CAAC,CAAA;oBACvE,IAAA,gBAAM,EAAC,CAAC,YAAY,EAAE,0CAA0C,CAAC,CAAA;oBAEjE,iDAAiD;oBACjD,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAA;oBACjC,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC;4BAC5D,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE;yBACjD,CAAC,EAAA;;oBAFI,YAAY,GAAG,SAEnB;oBACI,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBACpE,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBAC1E,IAAA,gBAAM,EAAC,CAAC,CAAC,UAAU,EAAE,wDAAwD,CAAC,CAAA;oBAC9E,IAAA,gBAAM,EAAC,CAAC,UAAU,EAAE,oDAAoD,CAAC,CAAA;oBAEzE,oCAAoC;oBACpC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAA;oBAC7B,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC;4BAC1D,SAAS,EAAE;gCACT,SAAS,EAAE;oCACT,IAAI,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;oCAC9C,IAAI,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAE,sBAAsB;iCACvE;6BACF;yBACF,CAAC,EAAA;;oBAPI,UAAU,GAAG,SAOjB;oBACI,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBACpE,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,EAAtB,CAAsB,CAAC,CAAA;oBACnE,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE,EAArB,CAAqB,CAAC,CAAA;oBACxE,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,iDAAiD,CAAC,CAAA;oBACzE,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,gDAAgD,CAAC,CAAA;oBACxE,IAAA,gBAAM,EAAC,CAAC,YAAY,EAAE,gDAAgD,CAAC,CAAA;oBAEvE,uCAAuC;oBACvC,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAA;oBAC/B,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC;4BAC3D,SAAS,YAAI,GAAC,iBAAU,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAE,IAAG,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,KAAE;yBACzE,CAAC,EAAA;;oBAFI,WAAW,GAAG,SAElB;oBACI,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBACnE,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE,EAArB,CAAqB,CAAC,CAAA;oBACvE,IAAA,gBAAM,EAAC,CAAC,CAAC,UAAU,EAAE,+CAA+C,CAAC,CAAA;oBACrE,IAAA,gBAAM,EAAC,CAAC,UAAU,EAAE,2CAA2C,CAAC,CAAA;oBAEhE,yCAAyC;oBACzC,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAA;oBAC/B,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC;4BAC7D,SAAS,EAAE;gCACT,GAAG,EAAE;8CACD,GAAC,iBAAU,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAE,IAAG,EAAE,OAAO,EAAE,KAAK,EAAE;8CACjD,GAAC,iBAAU,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAE,IAAG,EAAE;iCACpC;6BACF;yBACF,CAAC,EAAA;;oBAPI,aAAa,GAAG,SAOpB;oBACI,YAAY,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE,EAArB,CAAqB,CAAC,CAAA;oBACrE,YAAY,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBAC7E,IAAA,gBAAM,EAAC,CAAC,CAAC,YAAY,EAAE,qCAAqC,CAAC,CAAA;oBAC7D,IAAA,gBAAM,EAAC,CAAC,YAAY,EAAE,iDAAiD,CAAC,CAAA;oBAExE,2BAA2B;oBAC3B,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAA;oBACpC,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC;4BACxD,SAAS,EAAE;gCACT,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;gCACjC,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE;6BAC1B;yBACF,CAAC,EAAA;;oBALI,QAAQ,GAAG,SAKf;oBACI,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBACpE,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBACpE,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,EAAtB,CAAsB,CAAC,CAAA;oBACzE,IAAA,gBAAM,EAAC,CAAC,CAAC,cAAc,EAAE,wDAAwD,CAAC,CAAA;oBAClF,IAAA,gBAAM,EAAC,CAAC,CAAC,cAAc,EAAE,wDAAwD,CAAC,CAAA;oBAClF,IAAA,gBAAM,EAAC,CAAC,cAAc,EAAE,wDAAwD,CAAC,CAAA;oBAEjF,sCAAsC;oBACtC,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAA;oBAC9B,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC;4BAC3D,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;4BAC5B,WAAW,EAAE,IAAI;yBAClB,CAAC,EAAA;;oBAHI,WAAW,GAAG,SAGlB;oBACF,IAAA,gBAAM,EAAC,CAAC,MAAA,WAAW,CAAC,KAAK,mCAAI,CAAC,CAAC,IAAI,CAAC,EAAE,8CAA8C,CAAC,CAAA;oBACrF,IAAA,gBAAM,EAAC,WAAW,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,wDAAwD,CAAC,CAAA;oBAElG,mDAAmD;oBACnD,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAA;oBACtC,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC;4BACjE,UAAU,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;4BAC5B,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;yBAC7B,CAAC,EAAA;;oBAHI,iBAAiB,GAAG,SAGxB;oBACI,gBAAgB,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAvB,CAAuB,CAAC,CAAA;oBACrF,IAAA,gBAAM,EAAC,CAAC,CAAC,gBAAgB,EAAE,oDAAoD,CAAC,CAAA;oBAEhF,gEAAgE;oBAChE,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAA;oBACnB,qBAAM,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC;4BAC3D,SAAS,EAAE,EAAE;yBACd,CAAC,EAAA;;oBAFI,WAAW,GAAG,SAElB;oBACF,IAAA,gBAAM,EAAC,WAAW,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,4CAA4C,CAAC,CAAA;oBAEpF,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAA;;;;oBAKxC,qBAAM,OAAO,CAAC,GAAG,iCACZ,gBAAgB,CAAC,GAAG,CAAC,UAAA,EAAE,IAAI,OAAA,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC,EAAnC,CAAmC,CAAC;4BAClE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;4BACpC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;4BACrC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC;4BAC1C,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;kCAC3C,EAAA;;oBANF,SAME,CAAA;;;;oBAEF,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAG,CAAC,CAAA;;;;;;;CAGzC,CAAA;AA/PY,QAAA,6BAA6B,iCA+PzC;AAED,6CAA6C;AAC7C,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;IAC3B,IAAM,KAAG,GAAG,IAAI,aAAO,CAAC,EAAE,IAAI,MAAA,EAAE,CAAC,CAAA;IACjC,IAAM,aAAW,GAAG,IAAI,aAAO,CAAC,EAAE,IAAI,MAAA,EAAE,CAAC,CAAA;IAEzC,IAAM,QAAQ,GAAG;;;wBACf,qBAAM,IAAA,mBAAW,EAAC,KAAG,EAAE,aAAW,CAAC,EAAA;;oBAAnC,SAAmC,CAAA;oBACnC,qBAAM,IAAA,qCAA6B,EAAC,EAAE,GAAG,OAAA,EAAE,WAAW,eAAA,EAAE,CAAC,EAAA;;oBAAzD,SAAyD,CAAA;;;;SAC1D,CAAA;IAED,QAAQ,EAAE;SACP,IAAI,CAAC;QACJ,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAA;QACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC;SACD,KAAK,CAAC,UAAC,KAAK;QACX,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,KAAK,CAAC,CAAA;QAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;CACL"}