@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,368 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
+ 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;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
38
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
39
+ if (ar || !(i in from)) {
40
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
41
+ ar[i] = from[i];
42
+ }
43
+ }
44
+ return to.concat(ar || Array.prototype.slice.call(from));
45
+ };
46
+ require('source-map-support').install();
47
+ import { Session } from "../../sdk";
48
+ import { assert, log_header, } from "@tellescope/testing";
49
+ import { setup_tests } from "../setup";
50
+ var host = process.env.API_URL || 'http://localhost:8080';
51
+ export var inbox_thread_mdb_filter_tests = function (_a) {
52
+ var sdk = _a.sdk, sdkNonAdmin = _a.sdkNonAdmin;
53
+ return __awaiter(void 0, void 0, void 0, function () {
54
+ 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;
55
+ var _b, _c, _d, _e;
56
+ var _f;
57
+ return __generator(this, function (_g) {
58
+ switch (_g.label) {
59
+ case 0:
60
+ log_header("InboxThread mdbFilter Tests");
61
+ timestamp = Date.now();
62
+ return [4 /*yield*/, sdk.api.users.createOne({
63
+ fname: "Test",
64
+ lname: "MdbFilter",
65
+ email: "test-mdbfilter-".concat(timestamp, "@test.com"),
66
+ notificationEmailsDisabled: true
67
+ })];
68
+ case 1:
69
+ testUser = _g.sent();
70
+ return [4 /*yield*/, sdk.api.users.createOne({
71
+ fname: "Test",
72
+ lname: "MdbFilter2",
73
+ email: "test-mdbfilter2-".concat(timestamp, "@test.com"),
74
+ notificationEmailsDisabled: true
75
+ })];
76
+ case 2:
77
+ testUser2 = _g.sent();
78
+ return [4 /*yield*/, sdk.api.endusers.createOne({
79
+ fname: "Test",
80
+ lname: "Patient",
81
+ email: "test-patient-mdbfilter-".concat(timestamp, "@test.com")
82
+ })];
83
+ case 3:
84
+ testEnduser = _g.sent();
85
+ return [4 /*yield*/, sdk.api.endusers.createOne({
86
+ fname: "Test",
87
+ lname: "Patient2",
88
+ email: "test-patient-mdbfilter2-".concat(timestamp, "@test.com")
89
+ })
90
+ // Create test threads with different properties for filtering
91
+ ];
92
+ case 4:
93
+ testEnduser2 = _g.sent();
94
+ baseTimestamp = new Date();
95
+ oldTimestamp = new Date(baseTimestamp.getTime() - 7 * 24 * 60 * 60 * 1000) // 7 days ago
96
+ ;
97
+ return [4 /*yield*/, sdk.api.inbox_threads.createOne({
98
+ type: "Email",
99
+ title: "Email Thread for Filter Test",
100
+ threadId: "email-filter-test-".concat(timestamp),
101
+ assignedTo: [testUser.id],
102
+ enduserIds: [testEnduser.id],
103
+ userIds: [sdk.userInfo.id],
104
+ inboxStatus: 'New',
105
+ preview: 'Email preview',
106
+ timestamp: baseTimestamp,
107
+ tags: ['urgent', 'vip'],
108
+ readBy: (_b = {}, _b[sdk.userInfo.id] = new Date(), _b),
109
+ })
110
+ // Thread 2: SMS, unassigned, no tags, unread
111
+ ];
112
+ case 5:
113
+ emailThread = _g.sent();
114
+ return [4 /*yield*/, sdk.api.inbox_threads.createOne({
115
+ type: "SMS",
116
+ title: "SMS Thread for Filter Test",
117
+ threadId: "sms-filter-test-".concat(timestamp),
118
+ phoneNumber: "+15555551111",
119
+ enduserPhoneNumber: "+15555552222",
120
+ assignedTo: [],
121
+ enduserIds: [testEnduser.id],
122
+ userIds: [sdk.userInfo.id],
123
+ inboxStatus: 'New',
124
+ preview: 'SMS preview',
125
+ timestamp: oldTimestamp,
126
+ })
127
+ // Thread 3: Chat, assigned to testUser2, has different tags
128
+ ];
129
+ case 6:
130
+ smsThread = _g.sent();
131
+ return [4 /*yield*/, sdk.api.inbox_threads.createOne({
132
+ type: "Chat",
133
+ title: "Chat Thread for Filter Test",
134
+ threadId: "chat-filter-test-".concat(timestamp),
135
+ assignedTo: [testUser2.id],
136
+ enduserIds: [testEnduser2.id],
137
+ userIds: [sdk.userInfo.id],
138
+ inboxStatus: 'In Progress',
139
+ preview: 'Chat preview',
140
+ timestamp: baseTimestamp,
141
+ tags: ['follow-up'],
142
+ outboundTimestamp: new Date(),
143
+ })
144
+ // Thread 4: Phone, multiple assignees
145
+ ];
146
+ case 7:
147
+ chatThread = _g.sent();
148
+ return [4 /*yield*/, sdk.api.inbox_threads.createOne({
149
+ type: "Phone",
150
+ title: "Phone Thread for Filter Test",
151
+ threadId: "phone-filter-test-".concat(timestamp),
152
+ phoneNumber: "+15555553333",
153
+ enduserPhoneNumber: "+15555554444",
154
+ assignedTo: [testUser.id, testUser2.id],
155
+ enduserIds: [testEnduser.id],
156
+ userIds: [sdk.userInfo.id],
157
+ inboxStatus: 'New',
158
+ preview: 'Phone preview',
159
+ timestamp: oldTimestamp,
160
+ tags: ['urgent'],
161
+ })];
162
+ case 8:
163
+ phoneThread = _g.sent();
164
+ createdThreadIds = [emailThread.id, smsThread.id, chatThread.id, phoneThread.id];
165
+ _g.label = 9;
166
+ case 9:
167
+ _g.trys.push([9, , 22, 26]);
168
+ // Test 1: Filter by channel type (single)
169
+ console.log("Test 1: Filter by single channel type");
170
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
171
+ mdbFilter: { type: 'Email' }
172
+ })];
173
+ case 10:
174
+ emailOnly = _g.sent();
175
+ foundEmail = emailOnly.threads.find(function (t) { return t.id === emailThread.id; });
176
+ foundSmsInEmail = emailOnly.threads.find(function (t) { return t.id === smsThread.id; });
177
+ assert(!!foundEmail, 'Email thread should be found when filtering by Email type');
178
+ assert(!foundSmsInEmail, 'SMS thread should not be found when filtering by Email type');
179
+ // Test 2: Filter by multiple channel types ($in)
180
+ console.log("Test 2: Filter by multiple channel types");
181
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
182
+ mdbFilter: { type: { $in: ['Email', 'SMS'] } }
183
+ })];
184
+ case 11:
185
+ emailAndSms = _g.sent();
186
+ foundEmailIn = emailAndSms.threads.find(function (t) { return t.id === emailThread.id; });
187
+ foundSmsIn = emailAndSms.threads.find(function (t) { return t.id === smsThread.id; });
188
+ foundChatIn = emailAndSms.threads.find(function (t) { return t.id === chatThread.id; });
189
+ assert(!!foundEmailIn, 'Email thread should be found');
190
+ assert(!!foundSmsIn, 'SMS thread should be found');
191
+ assert(!foundChatIn, 'Chat thread should not be found');
192
+ // Test 3: Filter by assignee
193
+ console.log("Test 3: Filter by assignee");
194
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
195
+ mdbFilter: { assignedTo: testUser.id }
196
+ })];
197
+ case 12:
198
+ assignedToUser1 = _g.sent();
199
+ foundAssigned1 = assignedToUser1.threads.find(function (t) { return t.id === emailThread.id; });
200
+ foundAssigned2 = assignedToUser1.threads.find(function (t) { return t.id === phoneThread.id; });
201
+ foundAssigned3 = assignedToUser1.threads.find(function (t) { return t.id === chatThread.id; });
202
+ assert(!!foundAssigned1, 'Email thread should be found (assigned to testUser)');
203
+ assert(!!foundAssigned2, 'Phone thread should be found (assigned to testUser)');
204
+ assert(!foundAssigned3, 'Chat thread should not be found (assigned to testUser2)');
205
+ // Test 4: Filter by tags ($in - any match)
206
+ console.log("Test 4: Filter by tags (any match)");
207
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
208
+ mdbFilter: { tags: { $in: ['urgent'] } }
209
+ })];
210
+ case 13:
211
+ urgentTags = _g.sent();
212
+ foundUrgent1 = urgentTags.threads.find(function (t) { return t.id === emailThread.id; });
213
+ foundUrgent2 = urgentTags.threads.find(function (t) { return t.id === phoneThread.id; });
214
+ foundUrgent3 = urgentTags.threads.find(function (t) { return t.id === smsThread.id; });
215
+ assert(!!foundUrgent1, 'Email thread should be found (has urgent tag)');
216
+ assert(!!foundUrgent2, 'Phone thread should be found (has urgent tag)');
217
+ assert(!foundUrgent3, 'SMS thread should not be found (no tags)');
218
+ // Test 5: Filter by tags ($all - all must match)
219
+ console.log("Test 5: Filter by tags (all must match)");
220
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
221
+ mdbFilter: { tags: { $all: ['urgent', 'vip'] } }
222
+ })];
223
+ case 14:
224
+ urgentAndVip = _g.sent();
225
+ foundBoth1 = urgentAndVip.threads.find(function (t) { return t.id === emailThread.id; });
226
+ foundBoth2 = urgentAndVip.threads.find(function (t) { return t.id === phoneThread.id; });
227
+ assert(!!foundBoth1, 'Email thread should be found (has both urgent and vip)');
228
+ assert(!foundBoth2, 'Phone thread should not be found (only has urgent)');
229
+ // Test 6: Filter by timestamp range
230
+ console.log("Test 6: Filter by timestamp range");
231
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
232
+ mdbFilter: {
233
+ timestamp: {
234
+ $gte: new Date(baseTimestamp.getTime() - 1000),
235
+ $lte: new Date(baseTimestamp.getTime() + 1000) // 1 second after base
236
+ }
237
+ }
238
+ })];
239
+ case 15:
240
+ recentOnly = _g.sent();
241
+ foundRecent1 = recentOnly.threads.find(function (t) { return t.id === emailThread.id; });
242
+ foundRecent2 = recentOnly.threads.find(function (t) { return t.id === chatThread.id; });
243
+ foundRecent3 = recentOnly.threads.find(function (t) { return t.id === smsThread.id; });
244
+ assert(!!foundRecent1, 'Email thread should be found (recent timestamp)');
245
+ assert(!!foundRecent2, 'Chat thread should be found (recent timestamp)');
246
+ assert(!foundRecent3, 'SMS thread should not be found (old timestamp)');
247
+ // Test 7: Filter by read status (read)
248
+ console.log("Test 7: Filter by read status (read)");
249
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
250
+ mdbFilter: (_c = {}, _c["readBy.".concat(sdk.userInfo.id)] = { $exists: true, $ne: '' }, _c)
251
+ })];
252
+ case 16:
253
+ readThreads = _g.sent();
254
+ foundRead1 = readThreads.threads.find(function (t) { return t.id === emailThread.id; });
255
+ foundRead2 = readThreads.threads.find(function (t) { return t.id === smsThread.id; });
256
+ assert(!!foundRead1, 'Email thread should be found (marked as read)');
257
+ assert(!foundRead2, 'SMS thread should not be found (not read)');
258
+ // Test 8: Filter by read status (unread)
259
+ console.log("Test 8: Filter by read status (unread)");
260
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
261
+ mdbFilter: {
262
+ $or: [
263
+ (_d = {}, _d["readBy.".concat(sdk.userInfo.id)] = { $exists: false }, _d),
264
+ (_e = {}, _e["readBy.".concat(sdk.userInfo.id)] = '', _e)
265
+ ]
266
+ }
267
+ })];
268
+ case 17:
269
+ unreadThreads = _g.sent();
270
+ foundUnread1 = unreadThreads.threads.find(function (t) { return t.id === smsThread.id; });
271
+ foundUnread2 = unreadThreads.threads.find(function (t) { return t.id === emailThread.id; });
272
+ assert(!!foundUnread1, 'SMS thread should be found (unread)');
273
+ assert(!foundUnread2, 'Email thread should not be found (already read)');
274
+ // Test 9: Combined filters
275
+ console.log("Test 9: Combined filters (type + tags)");
276
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
277
+ mdbFilter: {
278
+ type: { $in: ['Email', 'Phone'] },
279
+ tags: { $in: ['urgent'] }
280
+ }
281
+ })];
282
+ case 18:
283
+ combined = _g.sent();
284
+ foundCombined1 = combined.threads.find(function (t) { return t.id === emailThread.id; });
285
+ foundCombined2 = combined.threads.find(function (t) { return t.id === phoneThread.id; });
286
+ foundCombined3 = combined.threads.find(function (t) { return t.id === chatThread.id; });
287
+ assert(!!foundCombined1, 'Email thread should be found (Email type + urgent tag)');
288
+ assert(!!foundCombined2, 'Phone thread should be found (Phone type + urgent tag)');
289
+ assert(!foundCombined3, 'Chat thread should not be found (Chat type, no urgent)');
290
+ // Test 10: mdbFilter with returnCount
291
+ console.log("Test 10: mdbFilter with returnCount");
292
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
293
+ mdbFilter: { type: 'Email' },
294
+ returnCount: true
295
+ })];
296
+ case 19:
297
+ countResult = _g.sent();
298
+ assert(((_f = countResult.count) !== null && _f !== void 0 ? _f : 0) >= 1, 'Count should be at least 1 for Email threads');
299
+ assert(countResult.threads.length === 0, 'Threads array should be empty when returnCount is true');
300
+ // Test 11: mdbFilter combined with existing params
301
+ console.log("Test 11: mdbFilter combined with enduserIds param");
302
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
303
+ enduserIds: [testEnduser.id],
304
+ mdbFilter: { type: 'Email' }
305
+ })];
306
+ case 20:
307
+ withEnduserFilter = _g.sent();
308
+ foundWithEnduser = withEnduserFilter.threads.find(function (t) { return t.id === emailThread.id; });
309
+ assert(!!foundWithEnduser, 'Email thread should be found with combined filters');
310
+ // Test 12: Empty mdbFilter should return all accessible threads
311
+ console.log("Test 12: Empty mdbFilter");
312
+ return [4 /*yield*/, sdk.api.inbox_threads.load_threads({
313
+ mdbFilter: {}
314
+ })];
315
+ case 21:
316
+ emptyFilter = _g.sent();
317
+ assert(emptyFilter.threads.length > 0, 'Should return threads with empty mdbFilter');
318
+ console.log("All mdbFilter tests passed!");
319
+ return [3 /*break*/, 26];
320
+ case 22:
321
+ _g.trys.push([22, 24, , 25]);
322
+ return [4 /*yield*/, Promise.all(__spreadArray(__spreadArray([], createdThreadIds.map(function (id) { return sdk.api.inbox_threads.deleteOne(id); }), true), [
323
+ sdk.api.users.deleteOne(testUser.id),
324
+ sdk.api.users.deleteOne(testUser2.id),
325
+ sdk.api.endusers.deleteOne(testEnduser.id),
326
+ sdk.api.endusers.deleteOne(testEnduser2.id),
327
+ ], false))];
328
+ case 23:
329
+ _g.sent();
330
+ return [3 /*break*/, 25];
331
+ case 24:
332
+ err_1 = _g.sent();
333
+ console.error("Cleanup error:", err_1);
334
+ return [3 /*break*/, 25];
335
+ case 25: return [7 /*endfinally*/];
336
+ case 26: return [2 /*return*/];
337
+ }
338
+ });
339
+ });
340
+ };
341
+ // Allow running this test file independently
342
+ if (require.main === module) {
343
+ var sdk_1 = new Session({ host: host });
344
+ var sdkNonAdmin_1 = new Session({ host: host });
345
+ var runTests = function () { return __awaiter(void 0, void 0, void 0, function () {
346
+ return __generator(this, function (_a) {
347
+ switch (_a.label) {
348
+ case 0: return [4 /*yield*/, setup_tests(sdk_1, sdkNonAdmin_1)];
349
+ case 1:
350
+ _a.sent();
351
+ return [4 /*yield*/, inbox_thread_mdb_filter_tests({ sdk: sdk_1, sdkNonAdmin: sdkNonAdmin_1 })];
352
+ case 2:
353
+ _a.sent();
354
+ return [2 /*return*/];
355
+ }
356
+ });
357
+ }); };
358
+ runTests()
359
+ .then(function () {
360
+ console.log("✅ InboxThread mdbFilter test suite completed successfully");
361
+ process.exit(0);
362
+ })
363
+ .catch(function (error) {
364
+ console.error("❌ InboxThread mdbFilter test suite failed:", error);
365
+ process.exit(1);
366
+ });
367
+ }
368
+ //# 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":"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"}