@kl1/contracts 1.0.10 → 1.0.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1474 -1068
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1470 -1067
- package/dist/index.mjs.map +1 -1
- package/dist/src/auth/index.d.ts +34 -24
- package/dist/src/auth/index.d.ts.map +1 -1
- package/dist/src/aws/index.d.ts +4 -4
- package/dist/src/aws/validation.d.ts +2 -2
- package/dist/src/channel/index.d.ts +1357 -0
- package/dist/src/channel/index.d.ts.map +1 -0
- package/dist/src/channel/schema.d.ts +385 -0
- package/dist/src/channel/schema.d.ts.map +1 -0
- package/dist/src/channel/validation.d.ts +337 -0
- package/dist/src/channel/validation.d.ts.map +1 -0
- package/dist/src/chat/index.d.ts +25911 -10496
- package/dist/src/chat/index.d.ts.map +1 -1
- package/dist/src/chat/schema.d.ts +6196 -1168
- package/dist/src/chat/schema.d.ts.map +1 -1
- package/dist/src/chat/validation.d.ts +7755 -479
- package/dist/src/chat/validation.d.ts.map +1 -1
- package/dist/src/company/schema.d.ts +197 -12
- package/dist/src/company/schema.d.ts.map +1 -1
- package/dist/src/contact/index.d.ts +2667 -0
- package/dist/src/contact/index.d.ts.map +1 -0
- package/dist/src/contact/schema.d.ts +1070 -6
- package/dist/src/contact/schema.d.ts.map +1 -1
- package/dist/src/contact/validation.d.ts +1029 -0
- package/dist/src/contact/validation.d.ts.map +1 -0
- package/dist/src/contract.d.ts +51287 -23157
- package/dist/src/contract.d.ts.map +1 -1
- package/dist/src/custom-field-upload/schema.d.ts +2 -2
- package/dist/src/cx-log/index.d.ts +4 -4
- package/dist/src/cx-log/schema.d.ts +2 -2
- package/dist/src/extension/index.d.ts +220 -54
- package/dist/src/extension/index.d.ts.map +1 -1
- package/dist/src/extension/schema.d.ts +6 -6
- package/dist/src/extension/schema.d.ts.map +1 -1
- package/dist/src/extension/validation.d.ts +6 -12
- package/dist/src/extension/validation.d.ts.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/mail/account-contract.d.ts +2 -2
- package/dist/src/mail/mail-contract.d.ts +2865 -3701
- package/dist/src/mail/mail-contract.d.ts.map +1 -1
- package/dist/src/mail/message-contract.d.ts +18 -18
- package/dist/src/mail/room-contract.d.ts +2854 -3690
- package/dist/src/mail/room-contract.d.ts.map +1 -1
- package/dist/src/mail/schemas/account-validation.schema.d.ts +2 -2
- package/dist/src/mail/schemas/message-validation.schema.d.ts +12 -12
- package/dist/src/mail/schemas/message.schema.d.ts +4 -4
- package/dist/src/mail/schemas/room-validation.schema.d.ts +64 -64
- package/dist/src/mail/schemas/room.schema.d.ts +50 -50
- package/dist/src/messenger/index.d.ts +7617 -0
- package/dist/src/messenger/index.d.ts.map +1 -0
- package/dist/src/messenger/schema.d.ts +2 -0
- package/dist/src/messenger/schema.d.ts.map +1 -0
- package/dist/src/messenger/validation.d.ts +2 -0
- package/dist/src/messenger/validation.d.ts.map +1 -0
- package/dist/src/permission/index.d.ts +2 -0
- package/dist/src/permission/index.d.ts.map +1 -1
- package/dist/src/permission/schema.d.ts.map +1 -1
- package/dist/src/role/schema.d.ts.map +1 -1
- package/dist/src/telephony-agent-presence-status/index.d.ts +1376 -0
- package/dist/src/telephony-agent-presence-status/index.d.ts.map +1 -0
- package/dist/src/telephony-agent-presence-status/schema.d.ts +366 -0
- package/dist/src/telephony-agent-presence-status/schema.d.ts.map +1 -0
- package/dist/src/telephony-agent-presence-status/validation.d.ts +18 -0
- package/dist/src/telephony-agent-presence-status/validation.d.ts.map +1 -0
- package/dist/src/telephony-extension/index.d.ts +5 -5
- package/dist/src/telephony-extension/schema.d.ts +5 -5
- package/dist/src/tenant/schema.d.ts +36 -0
- package/dist/src/tenant/schema.d.ts.map +1 -0
- package/dist/src/upload/schema.d.ts +4 -4
- package/dist/src/user/index.d.ts +119 -85
- package/dist/src/user/index.d.ts.map +1 -1
- package/dist/src/user/schema.d.ts +22 -16
- package/dist/src/user/schema.d.ts.map +1 -1
- package/dist/src/user/validation.d.ts +5 -5
- package/dist/src/user-presence-status-log/index.d.ts +342 -0
- package/dist/src/user-presence-status-log/index.d.ts.map +1 -0
- package/dist/src/user-presence-status-log/schema.d.ts +382 -0
- package/dist/src/user-presence-status-log/schema.d.ts.map +1 -0
- package/dist/src/user-presence-status-log/validation.d.ts +15 -0
- package/dist/src/user-presence-status-log/validation.d.ts.map +1 -0
- package/dist/src/widget/index.d.ts +28 -26
- package/dist/src/widget/index.d.ts.map +1 -1
- package/dist/src/widget/schema.d.ts +3 -3
- package/dist/src/wrap-up-form/index.d.ts +3 -3
- package/dist/src/wrap-up-form/validation.d.ts +3 -3
- package/package.json +46 -46
- package/dist/src/app/index.d.ts +0 -17
- package/dist/src/app/index.d.ts.map +0 -1
- package/dist/src/mail/mail-server.d.ts +0 -216
- package/dist/src/mail/mail-server.d.ts.map +0 -1
package/dist/index.mjs
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// src/contract.ts
|
2
|
-
import { initContract as
|
2
|
+
import { initContract as initContract27 } from "@ts-rest/core";
|
3
3
|
|
4
4
|
// src/attribute/index.ts
|
5
5
|
import { initContract } from "@ts-rest/core";
|
@@ -199,45 +199,63 @@ import { z as z9 } from "zod";
|
|
199
199
|
// src/user/schema.ts
|
200
200
|
import z8 from "zod";
|
201
201
|
|
202
|
-
// src/
|
203
|
-
import z6 from "zod";
|
204
|
-
|
205
|
-
// src/permission/schema.ts
|
202
|
+
// src/extension/schema.ts
|
206
203
|
import z5 from "zod";
|
207
|
-
var
|
208
|
-
|
209
|
-
|
210
|
-
|
204
|
+
var ExtensionSchema = z5.object({
|
205
|
+
id: z5.string().uuid(),
|
206
|
+
createdAt: z5.date(),
|
207
|
+
updatedAt: z5.date(),
|
208
|
+
deletedAt: z5.date().nullable(),
|
209
|
+
userId: z5.string().nullable(),
|
210
|
+
sipServerUrl: z5.string(),
|
211
|
+
sipUserName: z5.string(),
|
212
|
+
extensionId: z5.coerce.number(),
|
213
|
+
extensionName: z5.string(),
|
214
|
+
telephonySignature: z5.string().nullable()
|
211
215
|
});
|
212
216
|
|
213
217
|
// src/role/schema.ts
|
214
|
-
|
218
|
+
import z7 from "zod";
|
219
|
+
|
220
|
+
// src/permission/schema.ts
|
221
|
+
import z6 from "zod";
|
222
|
+
var PermissionSchema = z6.object({
|
223
|
+
id: z6.string().uuid(),
|
224
|
+
createdAt: z6.date(),
|
225
|
+
updatedAt: z6.date(),
|
226
|
+
deletedAt: z6.date().nullable(),
|
215
227
|
systemName: z6.string(),
|
216
228
|
displayName: z6.string(),
|
217
|
-
description: z6.string().nullable()
|
218
|
-
permissions: z6.array(PermissionSchema)
|
229
|
+
description: z6.string().nullable()
|
219
230
|
});
|
220
231
|
|
221
|
-
// src/
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
232
|
+
// src/role/schema.ts
|
233
|
+
var RoleSchema = z7.object({
|
234
|
+
id: z7.string().uuid(),
|
235
|
+
createdAt: z7.date(),
|
236
|
+
updatedAt: z7.date(),
|
237
|
+
deletedAt: z7.date().nullable(),
|
238
|
+
systemName: z7.string(),
|
239
|
+
displayName: z7.string(),
|
240
|
+
description: z7.string().nullable(),
|
241
|
+
permissions: z7.array(PermissionSchema)
|
230
242
|
});
|
231
243
|
|
232
244
|
// src/user/schema.ts
|
233
|
-
var UserSchema =
|
245
|
+
var UserSchema = z8.object({
|
246
|
+
id: z8.string().uuid(),
|
247
|
+
createdAt: z8.date(),
|
248
|
+
updatedAt: z8.date(),
|
249
|
+
deletedAt: z8.date().nullable(),
|
234
250
|
name: z8.string(),
|
235
251
|
email: z8.string().email(),
|
252
|
+
emailVerifiedAt: z8.date().nullable(),
|
253
|
+
password: z8.string(),
|
236
254
|
address: z8.string().nullable(),
|
237
255
|
phone: z8.string().nullable(),
|
238
256
|
notificationCount: z8.number().nullable(),
|
239
257
|
roles: z8.array(RoleSchema),
|
240
|
-
extension: ExtensionSchema
|
258
|
+
extension: ExtensionSchema.optional()
|
241
259
|
});
|
242
260
|
|
243
261
|
// src/auth/index.ts
|
@@ -321,79 +339,144 @@ var authContract = initContract2().router(
|
|
321
339
|
{ pathPrefix: "auth" }
|
322
340
|
);
|
323
341
|
|
324
|
-
// src/
|
342
|
+
// src/aws/index.ts
|
325
343
|
import { initContract as initContract3 } from "@ts-rest/core";
|
326
|
-
|
344
|
+
|
345
|
+
// src/aws/validation.ts
|
346
|
+
import z10 from "zod";
|
347
|
+
var AwsContractsValidationSchema = {
|
348
|
+
generatePresignedUrl: {
|
349
|
+
input: z10.object({
|
350
|
+
fileName: z10.string(),
|
351
|
+
fileType: z10.string(),
|
352
|
+
moduleName: z10.string()
|
353
|
+
}),
|
354
|
+
output: z10.object({
|
355
|
+
fileName: z10.string(),
|
356
|
+
fileKey: z10.string(),
|
357
|
+
bucketName: z10.string(),
|
358
|
+
url: z10.string(),
|
359
|
+
cfUrl: z10.string().nullable()
|
360
|
+
})
|
361
|
+
},
|
362
|
+
generateSignedUrl: {
|
363
|
+
input: z10.object({
|
364
|
+
fileKey: z10.string()
|
365
|
+
}),
|
366
|
+
output: z10.object({
|
367
|
+
url: z10.string()
|
368
|
+
})
|
369
|
+
}
|
370
|
+
};
|
371
|
+
|
372
|
+
// src/aws/index.ts
|
373
|
+
var awsContract = initContract3().router(
|
374
|
+
{
|
375
|
+
generatePresignedUrl: {
|
376
|
+
method: "POST",
|
377
|
+
path: "/presigned-url",
|
378
|
+
responses: {
|
379
|
+
200: DefaultSuccessResponseSchema.extend({
|
380
|
+
data: AwsContractsValidationSchema.generatePresignedUrl.output
|
381
|
+
}),
|
382
|
+
...DefaultResponses,
|
383
|
+
500: DefaultErrorResponseSchema
|
384
|
+
},
|
385
|
+
body: AwsContractsValidationSchema.generatePresignedUrl.input,
|
386
|
+
summary: "Generate a presigned url"
|
387
|
+
},
|
388
|
+
generateSignedUrl: {
|
389
|
+
method: "POST",
|
390
|
+
path: "/signed-url",
|
391
|
+
responses: {
|
392
|
+
200: DefaultSuccessResponseSchema.extend({
|
393
|
+
data: AwsContractsValidationSchema.generateSignedUrl.output
|
394
|
+
}),
|
395
|
+
...DefaultResponses,
|
396
|
+
500: DefaultErrorResponseSchema
|
397
|
+
},
|
398
|
+
body: AwsContractsValidationSchema.generateSignedUrl.input,
|
399
|
+
summary: "Generate a signed url using file key"
|
400
|
+
}
|
401
|
+
},
|
402
|
+
{
|
403
|
+
pathPrefix: "aws/s3"
|
404
|
+
}
|
405
|
+
);
|
406
|
+
|
407
|
+
// src/category/index.ts
|
408
|
+
import { initContract as initContract4 } from "@ts-rest/core";
|
409
|
+
import z14 from "zod";
|
327
410
|
|
328
411
|
// utils.ts
|
329
|
-
import { z as
|
330
|
-
var PaginationSchema =
|
331
|
-
page:
|
332
|
-
pageSize:
|
333
|
-
total:
|
334
|
-
lastPage:
|
412
|
+
import { z as z11 } from "zod";
|
413
|
+
var PaginationSchema = z11.object({
|
414
|
+
page: z11.number().default(1),
|
415
|
+
pageSize: z11.number().default(10),
|
416
|
+
total: z11.number(),
|
417
|
+
lastPage: z11.number().optional().nullable()
|
335
418
|
});
|
336
419
|
var WithPagination = (dataSchema) => {
|
337
420
|
return PaginationSchema.extend({
|
338
|
-
data:
|
421
|
+
data: z11.array(dataSchema)
|
339
422
|
});
|
340
423
|
};
|
341
424
|
|
342
425
|
// src/category/schema.ts
|
343
|
-
import { z as
|
344
|
-
var CategoryLevelSchema =
|
345
|
-
|
346
|
-
|
347
|
-
|
426
|
+
import { z as z12 } from "zod";
|
427
|
+
var CategoryLevelSchema = z12.union([
|
428
|
+
z12.literal(1),
|
429
|
+
z12.literal(2),
|
430
|
+
z12.literal(3)
|
348
431
|
]);
|
349
432
|
var CategorySchema = DefaultEntitySchema.extend({
|
350
|
-
value:
|
433
|
+
value: z12.string(),
|
351
434
|
level: CategoryLevelSchema,
|
352
|
-
parentId:
|
353
|
-
childCategoryList:
|
354
|
-
|
355
|
-
id:
|
356
|
-
value:
|
435
|
+
parentId: z12.string().nullable(),
|
436
|
+
childCategoryList: z12.array(
|
437
|
+
z12.object({
|
438
|
+
id: z12.string(),
|
439
|
+
value: z12.string(),
|
357
440
|
level: CategoryLevelSchema,
|
358
|
-
parentId:
|
359
|
-
childCategoryList:
|
360
|
-
|
361
|
-
id:
|
362
|
-
value:
|
441
|
+
parentId: z12.string().nullable(),
|
442
|
+
childCategoryList: z12.array(
|
443
|
+
z12.object({
|
444
|
+
id: z12.string(),
|
445
|
+
value: z12.string(),
|
363
446
|
level: CategoryLevelSchema,
|
364
|
-
parentId:
|
365
|
-
childCategoryList:
|
447
|
+
parentId: z12.string().nullable(),
|
448
|
+
childCategoryList: z12.array(z12.any())
|
366
449
|
// This is an empty array.
|
367
450
|
})
|
368
451
|
)
|
369
452
|
})
|
370
453
|
)
|
371
454
|
});
|
372
|
-
var CategoryLevelObjectSchema =
|
373
|
-
id:
|
374
|
-
name:
|
455
|
+
var CategoryLevelObjectSchema = z12.object({
|
456
|
+
id: z12.string(),
|
457
|
+
name: z12.string(),
|
375
458
|
level: CategoryLevelSchema
|
376
459
|
});
|
377
460
|
|
378
461
|
// src/category/validation.ts
|
379
|
-
import { z as
|
380
|
-
var CreateCategorySchema =
|
381
|
-
value:
|
462
|
+
import { z as z13 } from "zod";
|
463
|
+
var CreateCategorySchema = z13.object({
|
464
|
+
value: z13.string(),
|
382
465
|
level: CategoryLevelSchema,
|
383
|
-
parentId:
|
466
|
+
parentId: z13.string().nullable()
|
384
467
|
});
|
385
|
-
var UpdateCategorySchema =
|
386
|
-
var CreateCategoryLevelSchema =
|
387
|
-
name:
|
468
|
+
var UpdateCategorySchema = z13.object({ value: z13.string() });
|
469
|
+
var CreateCategoryLevelSchema = z13.object({
|
470
|
+
name: z13.string(),
|
388
471
|
level: CategoryLevelSchema
|
389
472
|
});
|
390
|
-
var UpdateCategoryLevelSchema =
|
391
|
-
name:
|
473
|
+
var UpdateCategoryLevelSchema = z13.object({
|
474
|
+
name: z13.string(),
|
392
475
|
level: CategoryLevelSchema
|
393
476
|
});
|
394
477
|
|
395
478
|
// src/category/index.ts
|
396
|
-
var categoryContract =
|
479
|
+
var categoryContract = initContract4().router(
|
397
480
|
{
|
398
481
|
createCategory: {
|
399
482
|
method: "POST",
|
@@ -410,9 +493,9 @@ var categoryContract = initContract3().router(
|
|
410
493
|
getCategories: {
|
411
494
|
method: "GET",
|
412
495
|
path: "",
|
413
|
-
query:
|
414
|
-
page:
|
415
|
-
pageSize:
|
496
|
+
query: z14.object({
|
497
|
+
page: z14.coerce.number(),
|
498
|
+
pageSize: z14.coerce.number()
|
416
499
|
}).partial().optional(),
|
417
500
|
headers: DefaultHeaderSchema,
|
418
501
|
responses: {
|
@@ -423,7 +506,7 @@ var categoryContract = initContract3().router(
|
|
423
506
|
updateCategory: {
|
424
507
|
method: "PATCH",
|
425
508
|
path: "/:id",
|
426
|
-
pathParams:
|
509
|
+
pathParams: z14.object({ id: z14.string() }),
|
427
510
|
headers: DefaultHeaderSchema,
|
428
511
|
body: UpdateCategorySchema,
|
429
512
|
responses: {
|
@@ -434,12 +517,12 @@ var categoryContract = initContract3().router(
|
|
434
517
|
deleteCategory: {
|
435
518
|
method: "DELETE",
|
436
519
|
path: "/:id",
|
437
|
-
pathParams:
|
520
|
+
pathParams: z14.object({ id: z14.string() }),
|
438
521
|
headers: DefaultHeaderSchema,
|
439
|
-
body:
|
522
|
+
body: z14.any().optional(),
|
440
523
|
responses: {
|
441
524
|
200: DefaultSuccessResponseSchema.extend({
|
442
|
-
message:
|
525
|
+
message: z14.string().optional()
|
443
526
|
}),
|
444
527
|
500: DefaultErrorResponseSchema
|
445
528
|
}
|
@@ -461,7 +544,7 @@ var categoryContract = initContract3().router(
|
|
461
544
|
path: "/level",
|
462
545
|
responses: {
|
463
546
|
200: DefaultSuccessResponseSchema.extend({
|
464
|
-
data:
|
547
|
+
data: z14.array(CategoryLevelObjectSchema)
|
465
548
|
}),
|
466
549
|
500: DefaultErrorResponseSchema
|
467
550
|
}
|
@@ -469,7 +552,7 @@ var categoryContract = initContract3().router(
|
|
469
552
|
updateCategoryLevel: {
|
470
553
|
method: "PATCH",
|
471
554
|
path: "/level/:id",
|
472
|
-
pathParams:
|
555
|
+
pathParams: z14.object({ id: z14.string() }),
|
473
556
|
headers: DefaultHeaderSchema,
|
474
557
|
body: UpdateCategoryLevelSchema,
|
475
558
|
responses: {
|
@@ -485,252 +568,351 @@ var categoryContract = initContract3().router(
|
|
485
568
|
}
|
486
569
|
);
|
487
570
|
|
488
|
-
// src/
|
489
|
-
import { initContract as
|
490
|
-
import z20 from "zod";
|
571
|
+
// src/channel/index.ts
|
572
|
+
import { initContract as initContract5 } from "@ts-rest/core";
|
491
573
|
|
492
|
-
// src/
|
493
|
-
import
|
494
|
-
var
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
|
500
|
-
|
501
|
-
|
502
|
-
|
574
|
+
// src/channel/schema.ts
|
575
|
+
import z15 from "zod";
|
576
|
+
var ChannelTypeSchema = z15.enum([
|
577
|
+
"whatsapp",
|
578
|
+
"messenger",
|
579
|
+
"telegram",
|
580
|
+
"line",
|
581
|
+
"viber",
|
582
|
+
"kakao",
|
583
|
+
"shopee",
|
584
|
+
"lazada"
|
585
|
+
]);
|
586
|
+
var ChannelStatusTypeSchema = z15.union([
|
587
|
+
z15.literal(1),
|
588
|
+
// on
|
589
|
+
z15.literal(0)
|
590
|
+
// off
|
591
|
+
]);
|
592
|
+
var ChannelMetadataSchema = z15.object({
|
593
|
+
id: z15.string(),
|
594
|
+
name: z15.string(),
|
595
|
+
accessToken: z15.string(),
|
596
|
+
additionalCredentials: z15.any().optional()
|
503
597
|
});
|
598
|
+
var ChannelSchema = DefaultEntitySchema.extend({
|
599
|
+
name: z15.string(),
|
600
|
+
type: ChannelTypeSchema,
|
601
|
+
metadata: ChannelMetadataSchema,
|
602
|
+
brandName: z15.string(),
|
603
|
+
platformId: z15.string().uuid(),
|
604
|
+
status: ChannelStatusTypeSchema,
|
605
|
+
isReloginRequired: z15.boolean(),
|
606
|
+
connectedUserName: z15.string(),
|
607
|
+
connectedUserId: z15.string(),
|
608
|
+
actor: UserSchema
|
609
|
+
}).partial().optional();
|
504
610
|
|
505
|
-
// src/
|
506
|
-
import
|
611
|
+
// src/channel/validation.ts
|
612
|
+
import z16 from "zod";
|
613
|
+
var ConnectChannelSchema = z16.object({
|
614
|
+
name: z16.string(),
|
615
|
+
type: ChannelTypeSchema,
|
616
|
+
metadata: ChannelMetadataSchema,
|
617
|
+
platformId: z16.string(),
|
618
|
+
brandName: z16.string(),
|
619
|
+
connectedUserName: z16.string(),
|
620
|
+
connectedUserId: z16.string(),
|
621
|
+
actor: UserSchema
|
622
|
+
});
|
623
|
+
|
624
|
+
// src/channel/index.ts
|
625
|
+
var channelContract = initContract5().router(
|
626
|
+
{
|
627
|
+
connectChannel: {
|
628
|
+
method: "POST",
|
629
|
+
path: "/connect",
|
630
|
+
responses: {
|
631
|
+
200: DefaultSuccessResponseSchema.extend({
|
632
|
+
channel: ChannelSchema
|
633
|
+
}),
|
634
|
+
408: DefaultErrorResponseSchema
|
635
|
+
},
|
636
|
+
body: ConnectChannelSchema,
|
637
|
+
summary: "Connect message channel"
|
638
|
+
},
|
639
|
+
getChannels: {
|
640
|
+
method: "GET",
|
641
|
+
path: "/channels",
|
642
|
+
responses: {
|
643
|
+
200: DefaultSuccessResponseSchema.extend({
|
644
|
+
channels: ChannelSchema
|
645
|
+
})
|
646
|
+
},
|
647
|
+
summary: "Get Channels"
|
648
|
+
}
|
649
|
+
},
|
650
|
+
{
|
651
|
+
baseHeaders: DefaultHeaderSchema
|
652
|
+
}
|
653
|
+
);
|
654
|
+
|
655
|
+
// src/chat/index.ts
|
656
|
+
import { initContract as initContract6 } from "@ts-rest/core";
|
657
|
+
import z24 from "zod";
|
658
|
+
|
659
|
+
// src/contact/schema.ts
|
660
|
+
import z20 from "zod";
|
507
661
|
|
508
662
|
// src/tag/schema.ts
|
509
|
-
import
|
663
|
+
import z17 from "zod";
|
510
664
|
var TagSchema = DefaultEntitySchema.extend({
|
511
|
-
name:
|
665
|
+
name: z17.string()
|
512
666
|
});
|
513
|
-
var TagGroupSchema =
|
514
|
-
|
515
|
-
|
667
|
+
var TagGroupSchema = z17.union([
|
668
|
+
z17.literal("general"),
|
669
|
+
z17.literal("contact")
|
516
670
|
]);
|
517
671
|
|
672
|
+
// src/company/schema.ts
|
673
|
+
import z18 from "zod";
|
674
|
+
var CompanyCustomFieldSchema = DefaultEntitySchema.extend({
|
675
|
+
textValue: z18.string().nullable(),
|
676
|
+
booleanValue: z18.boolean().nullable(),
|
677
|
+
numberValue: z18.number().nullable(),
|
678
|
+
dateValue: z18.string().nullable(),
|
679
|
+
attribute: AttributeSchema.omit({ options: true, group: true })
|
680
|
+
});
|
681
|
+
var CompanySchema = DefaultEntitySchema.extend({
|
682
|
+
name: z18.string().optional(),
|
683
|
+
phone: z18.string().nullable().optional(),
|
684
|
+
address: z18.string().nullable().optional(),
|
685
|
+
industry: z18.string().nullable().optional(),
|
686
|
+
customFields: z18.array(CompanyCustomFieldSchema).optional()
|
687
|
+
});
|
688
|
+
|
518
689
|
// src/upload/schema.ts
|
519
|
-
import
|
690
|
+
import z19 from "zod";
|
520
691
|
var UploadSchema = DefaultEntitySchema.extend({
|
521
|
-
bucketName:
|
522
|
-
fileName:
|
523
|
-
fileSize:
|
524
|
-
fileKey:
|
692
|
+
bucketName: z19.string(),
|
693
|
+
fileName: z19.string(),
|
694
|
+
fileSize: z19.number(),
|
695
|
+
fileKey: z19.string()
|
696
|
+
});
|
697
|
+
|
698
|
+
// src/contact/schema.ts
|
699
|
+
var ContactPhonesSchema = DefaultEntitySchema.extend({
|
700
|
+
phone: z20.string(),
|
701
|
+
isPrimary: z20.boolean()
|
702
|
+
});
|
703
|
+
var ContactEmailsSchema = DefaultEntitySchema.extend({
|
704
|
+
email: z20.string(),
|
705
|
+
isPrimary: z20.boolean()
|
706
|
+
});
|
707
|
+
var ContactCustomFieldSchema = DefaultEntitySchema.extend({
|
708
|
+
textValue: z20.string().nullable(),
|
709
|
+
booleanValue: z20.boolean().nullable(),
|
710
|
+
numberValue: z20.number().nullable(),
|
711
|
+
dateValue: z20.date().nullable(),
|
712
|
+
attribute: AttributeSchema.omit({ options: true, group: true }),
|
713
|
+
uploads: z20.array(
|
714
|
+
DefaultEntitySchema.extend({
|
715
|
+
customFieldId: z20.string(),
|
716
|
+
upload: UploadSchema
|
717
|
+
})
|
718
|
+
)
|
719
|
+
});
|
720
|
+
var ContactEntityTypesSchema = DefaultEntitySchema.extend({
|
721
|
+
entity: z20.string(),
|
722
|
+
description: z20.string().nullable()
|
723
|
+
});
|
724
|
+
var ContactActivitySchema = DefaultEntitySchema.extend({
|
725
|
+
entityId: z20.string(),
|
726
|
+
description: z20.string(),
|
727
|
+
entityType: ContactEntityTypesSchema
|
728
|
+
});
|
729
|
+
var ContactSchema = DefaultEntitySchema.extend({
|
730
|
+
name: z20.string(),
|
731
|
+
address: z20.string().nullable(),
|
732
|
+
channel: z20.string().nullable(),
|
733
|
+
notes: z20.string().nullable(),
|
734
|
+
contactProfile: z20.string().nullable(),
|
735
|
+
socialProfileUrl: z20.string().nullable(),
|
736
|
+
tags: z20.array(TagSchema),
|
737
|
+
company: CompanySchema.omit({ customFields: true }).nullable(),
|
738
|
+
// room: z.array(RoomSchema).optional(),
|
739
|
+
customFields: z20.array(ContactCustomFieldSchema),
|
740
|
+
contactEmails: z20.array(ContactEmailsSchema),
|
741
|
+
contactPhones: z20.array(ContactPhonesSchema),
|
742
|
+
activityLogs: z20.array(ContactActivitySchema).optional()
|
525
743
|
});
|
526
744
|
|
527
745
|
// src/chat/schema.ts
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
z17.literal("shopee"),
|
534
|
-
z17.literal("whatsapp"),
|
535
|
-
z17.literal("telegram"),
|
536
|
-
z17.literal("kakao")
|
537
|
-
]);
|
538
|
-
var MessageDirectionTypeSchema = z17.union([
|
539
|
-
z17.literal("incoming"),
|
540
|
-
z17.literal("outgoing"),
|
541
|
-
z17.literal("system")
|
542
|
-
]);
|
543
|
-
var ChannelStatusTypeSchema = z17.union([
|
544
|
-
z17.literal(1),
|
545
|
-
// on
|
546
|
-
z17.literal(0)
|
547
|
-
// off
|
746
|
+
import z21 from "zod";
|
747
|
+
var MessageDirectionTypeSchema = z21.enum([
|
748
|
+
"incoming",
|
749
|
+
"outgoing",
|
750
|
+
"system"
|
548
751
|
]);
|
549
|
-
var MessageTypeSchema =
|
550
|
-
|
551
|
-
|
552
|
-
|
553
|
-
|
554
|
-
|
555
|
-
|
556
|
-
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
|
562
|
-
|
563
|
-
|
564
|
-
|
565
|
-
|
566
|
-
|
752
|
+
var MessageTypeSchema = z21.enum([
|
753
|
+
"text",
|
754
|
+
"image",
|
755
|
+
"video",
|
756
|
+
"audio",
|
757
|
+
"file",
|
758
|
+
"fallback",
|
759
|
+
"location",
|
760
|
+
"attachment",
|
761
|
+
"assign",
|
762
|
+
"solve",
|
763
|
+
"reopen",
|
764
|
+
"open",
|
765
|
+
"sticker",
|
766
|
+
"closed",
|
767
|
+
"handed_over",
|
768
|
+
"updated",
|
769
|
+
"started"
|
567
770
|
]);
|
568
|
-
var MessageLocaleTypeSchema =
|
569
|
-
|
570
|
-
|
571
|
-
|
771
|
+
var MessageLocaleTypeSchema = z21.enum([
|
772
|
+
"mm",
|
773
|
+
"en",
|
774
|
+
"th"
|
572
775
|
]);
|
573
|
-
var
|
574
|
-
id:
|
575
|
-
name:
|
576
|
-
|
577
|
-
additionalCredentials:
|
578
|
-
});
|
579
|
-
var ChannelSchema = DefaultEntitySchema.extend({
|
580
|
-
name: z17.string(),
|
581
|
-
type: ChannelTypeSchema,
|
582
|
-
metadata: ChannelMetadataSchema,
|
583
|
-
brandName: z17.string(),
|
584
|
-
platformId: z17.string().uuid(),
|
585
|
-
status: ChannelStatusTypeSchema,
|
586
|
-
isReloginRequired: z17.boolean(),
|
587
|
-
connectedUserName: z17.string(),
|
588
|
-
connectedUserId: z17.string(),
|
589
|
-
actor: UserSchema
|
590
|
-
}).partial().optional();
|
591
|
-
var PlatformContactMetadataSchema = z17.object({
|
592
|
-
id: z17.string(),
|
593
|
-
name: z17.string(),
|
594
|
-
additionalCredentials: z17.any()
|
776
|
+
var PlatformContactMetadataSchema = z21.object({
|
777
|
+
id: z21.string(),
|
778
|
+
name: z21.string(),
|
779
|
+
picture: z21.string(),
|
780
|
+
additionalCredentials: z21.any()
|
595
781
|
});
|
596
782
|
var PlatformContactSchema = DefaultEntitySchema.extend({
|
597
|
-
channelId:
|
598
|
-
socialPlatformId:
|
783
|
+
channelId: z21.string().uuid(),
|
784
|
+
socialPlatformId: z21.string().uuid(),
|
599
785
|
platform: ChannelTypeSchema,
|
600
786
|
metadata: PlatformContactMetadataSchema,
|
601
787
|
contact: ContactSchema
|
602
788
|
});
|
603
789
|
var RoomSchema = DefaultEntitySchema.extend({
|
604
|
-
lastMessage:
|
605
|
-
handleTime:
|
606
|
-
isSolved:
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
|
611
|
-
isLatest: z17.boolean(),
|
790
|
+
lastMessage: z21.string(),
|
791
|
+
handleTime: z21.number(),
|
792
|
+
isSolved: z21.boolean(),
|
793
|
+
closeAt: z21.date(),
|
794
|
+
unreadCount: z21.number(),
|
795
|
+
firstResponseTime: z21.date(),
|
796
|
+
isLatest: z21.boolean(),
|
612
797
|
direction: MessageDirectionTypeSchema,
|
613
798
|
platformContact: PlatformContactSchema,
|
614
799
|
actor: UserSchema,
|
615
800
|
assignee: UserSchema,
|
616
|
-
channel: ChannelSchema
|
617
|
-
tags: z17.array(TagSchema)
|
801
|
+
channel: ChannelSchema
|
618
802
|
});
|
619
803
|
var MessageSchema = DefaultEntitySchema.extend({
|
620
|
-
message:
|
804
|
+
message: z21.string(),
|
621
805
|
direction: MessageDirectionTypeSchema,
|
622
806
|
type: MessageTypeSchema,
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
replyPlatformMessageId:
|
628
|
-
|
629
|
-
upload: UploadSchema,
|
630
|
-
template: z17.any(),
|
807
|
+
readAt: z21.date(),
|
808
|
+
metadata: z21.any(),
|
809
|
+
platformId: z21.string(),
|
810
|
+
platformMessageId: z21.string(),
|
811
|
+
replyPlatformMessageId: z21.string(),
|
812
|
+
template: z21.any(),
|
631
813
|
locale: MessageLocaleTypeSchema,
|
632
|
-
isSent:
|
814
|
+
isSent: z21.boolean(),
|
815
|
+
room: RoomSchema,
|
816
|
+
upload: UploadSchema,
|
817
|
+
actor: UserSchema,
|
818
|
+
assignee: UserSchema,
|
819
|
+
sender: UserSchema
|
633
820
|
});
|
634
|
-
var UnreadCountsByAssigneeSchema =
|
635
|
-
assigneeId:
|
636
|
-
totalUnreadCount:
|
821
|
+
var UnreadCountsByAssigneeSchema = z21.object({
|
822
|
+
assigneeId: z21.string(),
|
823
|
+
totalUnreadCount: z21.number()
|
637
824
|
});
|
638
825
|
|
639
826
|
// src/chat/validation.ts
|
640
|
-
import
|
827
|
+
import z23 from "zod";
|
641
828
|
|
642
829
|
// src/custom-field/schema.ts
|
643
|
-
import
|
830
|
+
import z22 from "zod";
|
644
831
|
var CustomFieldSchema = DefaultEntitySchema.extend({
|
645
|
-
textValue:
|
646
|
-
booleanValue:
|
647
|
-
numberValue:
|
648
|
-
dateValue:
|
649
|
-
entityId:
|
650
|
-
attributeId:
|
832
|
+
textValue: z22.string().nullable(),
|
833
|
+
booleanValue: z22.boolean().nullable(),
|
834
|
+
numberValue: z22.number().nullable(),
|
835
|
+
dateValue: z22.date().nullable(),
|
836
|
+
entityId: z22.string().uuid(),
|
837
|
+
attributeId: z22.string().uuid()
|
651
838
|
});
|
652
839
|
|
653
840
|
// src/chat/validation.ts
|
654
|
-
var
|
655
|
-
|
656
|
-
|
657
|
-
|
658
|
-
|
659
|
-
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
|
669
|
-
|
670
|
-
|
671
|
-
|
672
|
-
|
673
|
-
|
674
|
-
|
675
|
-
|
676
|
-
|
677
|
-
|
678
|
-
tags: z19.string().array().optional(),
|
679
|
-
phone: z19.string().optional(),
|
680
|
-
email: z19.string().optional(),
|
681
|
-
notes: z19.string().optional(),
|
682
|
-
tab: z19.string().optional()
|
683
|
-
});
|
684
|
-
var UpdateRoomTagsAndNotesSchema = z19.object({
|
685
|
-
notes: z19.string().optional(),
|
686
|
-
tags: z19.string().array().optional()
|
841
|
+
var GetRoomsSchema = z23.object({
|
842
|
+
page: z23.coerce.number().positive().default(1),
|
843
|
+
pageSize: z23.coerce.number().positive().default(20),
|
844
|
+
contactTagIds: z23.string().array().optional(),
|
845
|
+
contactIds: z23.string().array().optional(),
|
846
|
+
agentIds: z23.string().array().optional(),
|
847
|
+
roomTagIds: z23.string().array().optional(),
|
848
|
+
keyword: z23.string().optional(),
|
849
|
+
company: z23.string().array().optional(),
|
850
|
+
channel: z23.string().array().optional(),
|
851
|
+
name: z23.string().optional(),
|
852
|
+
address: z23.string().optional(),
|
853
|
+
contactGroups: z23.string().array().optional(),
|
854
|
+
selectedDate: z23.string().optional(),
|
855
|
+
customFields: z23.array(CustomFieldSchema).optional(),
|
856
|
+
tags: z23.string().array().optional(),
|
857
|
+
phone: z23.string().optional(),
|
858
|
+
email: z23.string().optional(),
|
859
|
+
notes: z23.string().optional(),
|
860
|
+
tab: z23.string().optional()
|
861
|
+
});
|
862
|
+
var UpdateRoomTagsAndNotesSchema = z23.object({
|
863
|
+
notes: z23.string().optional(),
|
864
|
+
tags: z23.string().array().optional()
|
687
865
|
});
|
688
866
|
var UpdateRoomAttributesSchema = UpdateRoomTagsAndNotesSchema.extend({
|
689
|
-
roomId:
|
690
|
-
});
|
691
|
-
var MessageAttachmentSchema =
|
692
|
-
bucketName:
|
693
|
-
fileKey:
|
694
|
-
fileName:
|
695
|
-
fileSize:
|
696
|
-
url:
|
867
|
+
roomId: z23.string().uuid()
|
868
|
+
});
|
869
|
+
var MessageAttachmentSchema = z23.object({
|
870
|
+
bucketName: z23.string(),
|
871
|
+
fileKey: z23.string(),
|
872
|
+
fileName: z23.string(),
|
873
|
+
fileSize: z23.number(),
|
874
|
+
url: z23.string(),
|
697
875
|
fileType: MessageTypeSchema,
|
698
|
-
thumbnailUrl:
|
876
|
+
thumbnailUrl: z23.string().optional()
|
699
877
|
});
|
700
|
-
var SendMessageSchema =
|
701
|
-
|
702
|
-
room: z19.string().uuid(),
|
878
|
+
var SendMessageSchema = z23.object({
|
879
|
+
roomId: z23.string().uuid(),
|
703
880
|
messageType: MessageTypeSchema,
|
704
|
-
message:
|
881
|
+
message: z23.string().optional(),
|
705
882
|
direction: MessageDirectionTypeSchema,
|
706
|
-
messageAttachments: MessageAttachmentSchema,
|
883
|
+
messageAttachments: MessageAttachmentSchema.optional(),
|
707
884
|
user: UserSchema.optional(),
|
708
|
-
packageId:
|
709
|
-
stickerId:
|
885
|
+
packageId: z23.number().optional(),
|
886
|
+
stickerId: z23.number().optional()
|
710
887
|
});
|
711
|
-
var SolveRoomSchema =
|
712
|
-
roomId:
|
888
|
+
var SolveRoomSchema = z23.object({
|
889
|
+
roomId: z23.string()
|
713
890
|
});
|
714
891
|
var UpdateAssigneeSchema = SolveRoomSchema.extend({
|
715
|
-
assigneeId:
|
892
|
+
assigneeId: z23.string().uuid()
|
716
893
|
});
|
717
894
|
var SearchRoomsSchema = DefaultQueryParamsSchema.extend({
|
718
|
-
query:
|
895
|
+
query: z23.string()
|
896
|
+
});
|
897
|
+
var SendMessageToPlatformSchema = z23.object({
|
898
|
+
room: RoomSchema,
|
899
|
+
message: MessageSchema,
|
900
|
+
url: z23.string().optional()
|
719
901
|
});
|
720
902
|
|
721
903
|
// src/chat/index.ts
|
722
|
-
var
|
904
|
+
var mainChatContract = initContract6().router(
|
723
905
|
{
|
724
906
|
getRooms: {
|
725
907
|
method: "GET",
|
726
908
|
path: "/rooms",
|
727
909
|
responses: {
|
728
910
|
200: DefaultSuccessResponseSchema.extend({
|
729
|
-
total:
|
730
|
-
page:
|
731
|
-
pageSize:
|
732
|
-
data:
|
733
|
-
unreadCountsByAssignee:
|
911
|
+
total: z24.number(),
|
912
|
+
page: z24.number(),
|
913
|
+
pageSize: z24.number(),
|
914
|
+
data: z24.array(RoomSchema),
|
915
|
+
unreadCountsByAssignee: z24.array(UnreadCountsByAssigneeSchema)
|
734
916
|
}),
|
735
917
|
401: DefaultUnauthorizedSchema
|
736
918
|
},
|
@@ -740,8 +922,8 @@ var chatContract = initContract4().router(
|
|
740
922
|
getRoomContact: {
|
741
923
|
method: "GET",
|
742
924
|
path: "/contact/:contactId",
|
743
|
-
pathParams:
|
744
|
-
contactId:
|
925
|
+
pathParams: z24.object({
|
926
|
+
contactId: z24.string().uuid()
|
745
927
|
}),
|
746
928
|
responses: {
|
747
929
|
200: DefaultSuccessResponseSchema.extend({
|
@@ -777,21 +959,19 @@ var chatContract = initContract4().router(
|
|
777
959
|
path: "/message",
|
778
960
|
body: SendMessageSchema,
|
779
961
|
responses: {
|
780
|
-
200:
|
781
|
-
data: MessageSchema
|
782
|
-
})
|
962
|
+
200: null
|
783
963
|
},
|
784
964
|
summary: "Send message to room"
|
785
965
|
},
|
786
966
|
getMessages: {
|
787
967
|
method: "GET",
|
788
968
|
path: "/message/:roomId",
|
789
|
-
pathParams:
|
790
|
-
roomId:
|
969
|
+
pathParams: z24.object({
|
970
|
+
roomId: z24.string().uuid()
|
791
971
|
}),
|
792
972
|
responses: {
|
793
973
|
200: DefaultSuccessResponseSchema.extend({
|
794
|
-
data:
|
974
|
+
data: z24.array(MessageSchema)
|
795
975
|
})
|
796
976
|
},
|
797
977
|
summary: "Get messages"
|
@@ -802,7 +982,9 @@ var chatContract = initContract4().router(
|
|
802
982
|
body: SolveRoomSchema,
|
803
983
|
responses: {
|
804
984
|
200: DefaultSuccessResponseSchema.extend({
|
805
|
-
data: RoomSchema
|
985
|
+
data: RoomSchema.extend({
|
986
|
+
solveMessage: z24.string()
|
987
|
+
})
|
806
988
|
}),
|
807
989
|
409: DefaultErrorResponseSchema
|
808
990
|
},
|
@@ -822,8 +1004,8 @@ var chatContract = initContract4().router(
|
|
822
1004
|
getRoom: {
|
823
1005
|
method: "GET",
|
824
1006
|
path: "/room/:roomId",
|
825
|
-
pathParams:
|
826
|
-
roomId:
|
1007
|
+
pathParams: z24.object({
|
1008
|
+
roomId: z24.string().uuid()
|
827
1009
|
}),
|
828
1010
|
responses: {
|
829
1011
|
200: DefaultSuccessResponseSchema.extend({
|
@@ -836,13 +1018,14 @@ var chatContract = initContract4().router(
|
|
836
1018
|
createRoom: {
|
837
1019
|
method: "POST",
|
838
1020
|
path: "/room/create/:roomid",
|
839
|
-
pathParams:
|
840
|
-
|
1021
|
+
pathParams: z24.object({
|
1022
|
+
roomId: z24.string().uuid()
|
841
1023
|
}),
|
842
1024
|
responses: {
|
843
1025
|
200: DefaultSuccessResponseSchema.extend({
|
844
1026
|
data: RoomSchema.extend({
|
845
|
-
contact: ContactSchema
|
1027
|
+
contact: ContactSchema,
|
1028
|
+
openMessage: z24.string()
|
846
1029
|
})
|
847
1030
|
})
|
848
1031
|
},
|
@@ -852,13 +1035,13 @@ var chatContract = initContract4().router(
|
|
852
1035
|
readRoom: {
|
853
1036
|
method: "POST",
|
854
1037
|
path: "/room/:roomid/read",
|
855
|
-
pathParams:
|
856
|
-
|
1038
|
+
pathParams: z24.object({
|
1039
|
+
roomId: z24.string().uuid()
|
857
1040
|
}),
|
858
1041
|
responses: {
|
859
1042
|
200: DefaultSuccessResponseSchema.extend({
|
860
1043
|
data: RoomSchema.extend({
|
861
|
-
description:
|
1044
|
+
description: z24.string().nullable()
|
862
1045
|
})
|
863
1046
|
})
|
864
1047
|
},
|
@@ -870,147 +1053,391 @@ var chatContract = initContract4().router(
|
|
870
1053
|
path: "/search",
|
871
1054
|
responses: {
|
872
1055
|
200: DefaultSuccessResponseSchema.extend({
|
873
|
-
|
1056
|
+
total: z24.number(),
|
1057
|
+
page: z24.number(),
|
1058
|
+
pageSize: z24.number(),
|
1059
|
+
data: z24.array(RoomSchema)
|
874
1060
|
})
|
875
1061
|
},
|
876
1062
|
query: SearchRoomsSchema,
|
877
1063
|
summary: "Search Rooms"
|
878
|
-
},
|
879
|
-
connectChannel: {
|
880
|
-
method: "POST",
|
881
|
-
path: "connect",
|
882
|
-
responses: {
|
883
|
-
200: DefaultSuccessResponseSchema.extend({
|
884
|
-
channel: ChannelSchema
|
885
|
-
})
|
886
|
-
},
|
887
|
-
body: ConnectChannelSchema,
|
888
|
-
summary: "Connect message channel"
|
889
|
-
},
|
890
|
-
getChannels: {
|
891
|
-
method: "GET",
|
892
|
-
path: "/channels",
|
893
|
-
responses: {
|
894
|
-
200: DefaultSuccessResponseSchema.extend({
|
895
|
-
channels: ChannelSchema
|
896
|
-
})
|
897
|
-
},
|
898
|
-
summary: "Get Channels"
|
899
1064
|
}
|
900
1065
|
},
|
901
1066
|
{
|
902
|
-
baseHeaders: DefaultHeaderSchema
|
1067
|
+
baseHeaders: DefaultHeaderSchema,
|
1068
|
+
pathPrefix: "chat"
|
903
1069
|
}
|
904
1070
|
);
|
905
1071
|
|
906
|
-
// src/
|
907
|
-
import { initContract as
|
908
|
-
import z23 from "zod";
|
909
|
-
|
910
|
-
// src/cx-log/schema.ts
|
911
|
-
import z21 from "zod";
|
912
|
-
var CxLogSchema = DefaultEntitySchema.extend({
|
913
|
-
caseId: z21.number(),
|
914
|
-
entityId: z21.string().uuid(),
|
915
|
-
entityName: z21.string(),
|
916
|
-
contactId: z21.string().uuid().nullable(),
|
917
|
-
channel: z21.string().nullable(),
|
918
|
-
queueId: z21.string().uuid().nullable(),
|
919
|
-
agentId: z21.string().uuid().nullable(),
|
920
|
-
direction: z21.string().nullable(),
|
921
|
-
startedDate: z21.date().nullable(),
|
922
|
-
handledTime: z21.number().nullable(),
|
923
|
-
firstResponseTime: z21.number().nullable(),
|
924
|
-
disposition: z21.string().nullable()
|
925
|
-
});
|
926
|
-
|
927
|
-
// src/cx-log/validation.ts
|
928
|
-
import z22 from "zod";
|
929
|
-
var sentimentScoreSchema = z22.union([
|
930
|
-
z22.literal("positive"),
|
931
|
-
z22.literal("negative")
|
932
|
-
]);
|
933
|
-
var CustomFieldQueryParamsSchema = z22.object({
|
934
|
-
attributeId: z22.string(),
|
935
|
-
value: z22.union([z22.string(), z22.array(z22.string())]),
|
936
|
-
type: z22.string().optional()
|
937
|
-
});
|
938
|
-
var GetAllCxLogQueryParamsSchema = DefaultQueryParamsSchema.extend({
|
939
|
-
contactId: z22.string().uuid(),
|
940
|
-
caseId: z22.string(),
|
941
|
-
channelIds: z22.array(z22.string().uuid()),
|
942
|
-
queueId: z22.array(z22.string()),
|
943
|
-
agentIds: z22.array(z22.string()),
|
944
|
-
direction: z22.array(z22.union([z22.literal("inbound"), z22.literal("outbound")])),
|
945
|
-
disposition: z22.array(z22.string()),
|
946
|
-
sentimentScore: z22.array(sentimentScoreSchema),
|
947
|
-
csatScore: z22.string(),
|
948
|
-
sla: z22.array(z22.union([z22.literal("meet"), z22.literal("unmeet")])),
|
949
|
-
tags: z22.array(z22.string()),
|
950
|
-
// General tags
|
951
|
-
// Default contact attributes
|
952
|
-
name: z22.string(),
|
953
|
-
contactLabels: z22.array(z22.string()),
|
954
|
-
email: z22.string(),
|
955
|
-
channel: z22.array(z22.string()),
|
956
|
-
phone: z22.string(),
|
957
|
-
notes: z22.string(),
|
958
|
-
address: z22.string(),
|
959
|
-
company: z22.array(z22.string()),
|
960
|
-
// Custom fields
|
961
|
-
customFields: z22.array(CustomFieldQueryParamsSchema),
|
962
|
-
// Date filter
|
963
|
-
selectedDate: z22.string()
|
964
|
-
}).partial().optional();
|
965
|
-
|
966
|
-
// src/cx-log/index.ts
|
967
|
-
var cxLogContract = initContract5().router({
|
968
|
-
findAll: {
|
969
|
-
method: "GET",
|
970
|
-
path: "/cx-logs",
|
971
|
-
headers: DefaultHeaderSchema,
|
972
|
-
responses: {
|
973
|
-
200: DefaultSuccessResponseSchema.extend({
|
974
|
-
total: z23.number(),
|
975
|
-
page: z23.number(),
|
976
|
-
pageSize: z23.number(),
|
977
|
-
cxLogs: z23.array(CxLogSchema)
|
978
|
-
}),
|
979
|
-
401: DefaultUnauthorizedSchema
|
980
|
-
},
|
981
|
-
query: GetAllCxLogQueryParamsSchema,
|
982
|
-
summary: "Get all cx-logs"
|
983
|
-
}
|
984
|
-
});
|
985
|
-
|
986
|
-
// src/line/index.ts
|
987
|
-
import { initContract as initContract6 } from "@ts-rest/core";
|
1072
|
+
// src/contact/index.ts
|
1073
|
+
import { initContract as initContract7 } from "@ts-rest/core";
|
988
1074
|
import z26 from "zod";
|
989
1075
|
|
990
|
-
// src/
|
991
|
-
import
|
992
|
-
var
|
993
|
-
|
994
|
-
|
1076
|
+
// src/contact/validation.ts
|
1077
|
+
import z25 from "zod";
|
1078
|
+
var BaseSchema = z25.object({
|
1079
|
+
isRequired: z25.boolean(),
|
1080
|
+
attributeId: z25.string()
|
1081
|
+
});
|
1082
|
+
var SingleValue = {
|
1083
|
+
value: z25.string()
|
1084
|
+
};
|
1085
|
+
var ContactContractValidationSchema = {
|
1086
|
+
create: {
|
1087
|
+
request: z25.object({
|
1088
|
+
name: BaseSchema.extend(SingleValue),
|
1089
|
+
email: BaseSchema.extend({
|
1090
|
+
value: z25.array(
|
1091
|
+
z25.object({
|
1092
|
+
email: z25.string(),
|
1093
|
+
isPrimary: z25.boolean()
|
1094
|
+
})
|
1095
|
+
)
|
1096
|
+
}),
|
1097
|
+
channel: BaseSchema.extend(SingleValue),
|
1098
|
+
address: BaseSchema.extend(SingleValue),
|
1099
|
+
phone: BaseSchema.extend({
|
1100
|
+
value: z25.array(
|
1101
|
+
z25.object({
|
1102
|
+
phone: z25.string(),
|
1103
|
+
isPrimary: z25.boolean()
|
1104
|
+
})
|
1105
|
+
)
|
1106
|
+
}).optional(),
|
1107
|
+
notes: BaseSchema.extend(SingleValue),
|
1108
|
+
tags: BaseSchema.extend({
|
1109
|
+
value: z25.array(z25.string())
|
1110
|
+
}),
|
1111
|
+
company: BaseSchema.extend(SingleValue),
|
1112
|
+
customFields: z25.array(
|
1113
|
+
BaseSchema.extend({
|
1114
|
+
value: z25.union([z25.string(), z25.array(z25.string())]),
|
1115
|
+
type: z25.string(),
|
1116
|
+
isDefaultAttribute: z25.boolean()
|
1117
|
+
})
|
1118
|
+
)
|
1119
|
+
}),
|
1120
|
+
response: z25.string()
|
1121
|
+
},
|
1122
|
+
getById: {
|
1123
|
+
request: z25.object({
|
1124
|
+
id: z25.string().uuid()
|
1125
|
+
}),
|
1126
|
+
response: ContactSchema
|
1127
|
+
}
|
1128
|
+
};
|
1129
|
+
|
1130
|
+
// src/contact/index.ts
|
1131
|
+
var contactContract = initContract7().router(
|
1132
|
+
{
|
1133
|
+
create: {
|
1134
|
+
method: "POST",
|
1135
|
+
path: "",
|
1136
|
+
responses: {
|
1137
|
+
201: DefaultSuccessResponseSchema.extend({
|
1138
|
+
message: ContactContractValidationSchema.create.response
|
1139
|
+
}),
|
1140
|
+
400: z26.object({
|
1141
|
+
message: z26.string()
|
1142
|
+
}),
|
1143
|
+
409: z26.object({
|
1144
|
+
message: z26.string()
|
1145
|
+
}),
|
1146
|
+
500: z26.object({
|
1147
|
+
message: z26.string()
|
1148
|
+
}),
|
1149
|
+
401: DefaultUnauthorizedSchema,
|
1150
|
+
404: DefaultNotFoundSchema,
|
1151
|
+
422: DefaultUnprocessibleSchema
|
1152
|
+
},
|
1153
|
+
body: ContactContractValidationSchema.create.request,
|
1154
|
+
summary: "Create a new contact"
|
1155
|
+
},
|
1156
|
+
getById: {
|
1157
|
+
method: "GET",
|
1158
|
+
path: "/:id",
|
1159
|
+
pathParams: ContactContractValidationSchema.getById.request,
|
1160
|
+
responses: {
|
1161
|
+
200: DefaultSuccessResponseSchema.extend({
|
1162
|
+
data: ContactContractValidationSchema.getById.response
|
1163
|
+
}),
|
1164
|
+
400: z26.object({
|
1165
|
+
message: z26.string()
|
1166
|
+
}),
|
1167
|
+
409: z26.object({
|
1168
|
+
message: z26.string()
|
1169
|
+
}),
|
1170
|
+
500: z26.object({
|
1171
|
+
message: z26.string()
|
1172
|
+
}),
|
1173
|
+
401: DefaultUnauthorizedSchema,
|
1174
|
+
404: DefaultNotFoundSchema,
|
1175
|
+
422: DefaultUnprocessibleSchema
|
1176
|
+
},
|
1177
|
+
summary: "Get a contact by id"
|
1178
|
+
},
|
1179
|
+
update: {
|
1180
|
+
method: "PATCH",
|
1181
|
+
path: "/:id",
|
1182
|
+
pathParams: ContactContractValidationSchema.getById.request,
|
1183
|
+
responses: {
|
1184
|
+
200: DefaultSuccessResponseSchema.extend({
|
1185
|
+
data: ContactContractValidationSchema.getById.response
|
1186
|
+
}),
|
1187
|
+
400: z26.object({
|
1188
|
+
message: z26.string()
|
1189
|
+
}),
|
1190
|
+
409: z26.object({
|
1191
|
+
message: z26.string()
|
1192
|
+
}),
|
1193
|
+
500: z26.object({
|
1194
|
+
message: z26.string()
|
1195
|
+
}),
|
1196
|
+
401: DefaultUnauthorizedSchema,
|
1197
|
+
404: DefaultNotFoundSchema,
|
1198
|
+
422: DefaultUnprocessibleSchema
|
1199
|
+
},
|
1200
|
+
body: ContactContractValidationSchema.create.request.partial(),
|
1201
|
+
summary: "Update a contact"
|
1202
|
+
}
|
1203
|
+
},
|
1204
|
+
{
|
1205
|
+
baseHeaders: DefaultHeaderSchema,
|
1206
|
+
pathPrefix: "contact"
|
1207
|
+
}
|
1208
|
+
);
|
1209
|
+
|
1210
|
+
// src/cx-log/index.ts
|
1211
|
+
import { initContract as initContract8 } from "@ts-rest/core";
|
1212
|
+
import z29 from "zod";
|
1213
|
+
|
1214
|
+
// src/cx-log/schema.ts
|
1215
|
+
import z27 from "zod";
|
1216
|
+
var CxLogSchema = DefaultEntitySchema.extend({
|
1217
|
+
caseId: z27.number(),
|
1218
|
+
entityId: z27.string().uuid(),
|
1219
|
+
entityName: z27.string(),
|
1220
|
+
contactId: z27.string().uuid().nullable(),
|
1221
|
+
channel: z27.string().nullable(),
|
1222
|
+
queueId: z27.string().uuid().nullable(),
|
1223
|
+
agentId: z27.string().uuid().nullable(),
|
1224
|
+
direction: z27.string().nullable(),
|
1225
|
+
startedDate: z27.date().nullable(),
|
1226
|
+
handledTime: z27.number().nullable(),
|
1227
|
+
firstResponseTime: z27.number().nullable(),
|
1228
|
+
disposition: z27.string().nullable()
|
1229
|
+
});
|
1230
|
+
|
1231
|
+
// src/cx-log/validation.ts
|
1232
|
+
import z28 from "zod";
|
1233
|
+
var sentimentScoreSchema = z28.union([
|
1234
|
+
z28.literal("positive"),
|
1235
|
+
z28.literal("negative")
|
1236
|
+
]);
|
1237
|
+
var CustomFieldQueryParamsSchema = z28.object({
|
1238
|
+
attributeId: z28.string(),
|
1239
|
+
value: z28.union([z28.string(), z28.array(z28.string())]),
|
1240
|
+
type: z28.string().optional()
|
1241
|
+
});
|
1242
|
+
var GetAllCxLogQueryParamsSchema = DefaultQueryParamsSchema.extend({
|
1243
|
+
contactId: z28.string().uuid(),
|
1244
|
+
caseId: z28.string(),
|
1245
|
+
channelIds: z28.array(z28.string().uuid()),
|
1246
|
+
queueId: z28.array(z28.string()),
|
1247
|
+
agentIds: z28.array(z28.string()),
|
1248
|
+
direction: z28.array(z28.union([z28.literal("inbound"), z28.literal("outbound")])),
|
1249
|
+
disposition: z28.array(z28.string()),
|
1250
|
+
sentimentScore: z28.array(sentimentScoreSchema),
|
1251
|
+
csatScore: z28.string(),
|
1252
|
+
sla: z28.array(z28.union([z28.literal("meet"), z28.literal("unmeet")])),
|
1253
|
+
tags: z28.array(z28.string()),
|
1254
|
+
// General tags
|
1255
|
+
// Default contact attributes
|
1256
|
+
name: z28.string(),
|
1257
|
+
contactLabels: z28.array(z28.string()),
|
1258
|
+
email: z28.string(),
|
1259
|
+
channel: z28.array(z28.string()),
|
1260
|
+
phone: z28.string(),
|
1261
|
+
notes: z28.string(),
|
1262
|
+
address: z28.string(),
|
1263
|
+
company: z28.array(z28.string()),
|
1264
|
+
// Custom fields
|
1265
|
+
customFields: z28.array(CustomFieldQueryParamsSchema),
|
1266
|
+
// Date filter
|
1267
|
+
selectedDate: z28.string()
|
1268
|
+
}).partial().optional();
|
1269
|
+
|
1270
|
+
// src/cx-log/index.ts
|
1271
|
+
var cxLogContract = initContract8().router({
|
1272
|
+
findAll: {
|
1273
|
+
method: "GET",
|
1274
|
+
path: "/cx-logs",
|
1275
|
+
headers: DefaultHeaderSchema,
|
1276
|
+
responses: {
|
1277
|
+
200: DefaultSuccessResponseSchema.extend({
|
1278
|
+
total: z29.number(),
|
1279
|
+
page: z29.number(),
|
1280
|
+
pageSize: z29.number(),
|
1281
|
+
cxLogs: z29.array(CxLogSchema)
|
1282
|
+
}),
|
1283
|
+
401: DefaultUnauthorizedSchema
|
1284
|
+
},
|
1285
|
+
query: GetAllCxLogQueryParamsSchema,
|
1286
|
+
summary: "Get all cx-logs"
|
1287
|
+
}
|
1288
|
+
});
|
1289
|
+
|
1290
|
+
// src/extension/index.ts
|
1291
|
+
import { initContract as initContract9 } from "@ts-rest/core";
|
1292
|
+
import z31 from "zod";
|
1293
|
+
|
1294
|
+
// src/extension/validation.ts
|
1295
|
+
import { z as z30 } from "zod";
|
1296
|
+
var CreateExtensionSchema = z30.object({
|
1297
|
+
userId: z30.string().nullable(),
|
1298
|
+
sipUserName: z30.string(),
|
1299
|
+
extensionId: z30.coerce.number().nullable(),
|
1300
|
+
extensionName: z30.string().nullable(),
|
1301
|
+
telephonySignature: z30.string().nullable().optional()
|
1302
|
+
});
|
1303
|
+
var UpdateExtensionSchema = CreateExtensionSchema;
|
1304
|
+
|
1305
|
+
// src/extension/index.ts
|
1306
|
+
var extensionContract = initContract9().router(
|
1307
|
+
{
|
1308
|
+
createExtension: {
|
1309
|
+
method: "POST",
|
1310
|
+
path: "",
|
1311
|
+
headers: DefaultHeaderSchema,
|
1312
|
+
body: CreateExtensionSchema,
|
1313
|
+
responses: {
|
1314
|
+
201: DefaultSuccessResponseSchema.extend({
|
1315
|
+
extension: ExtensionSchema
|
1316
|
+
}),
|
1317
|
+
400: z31.object({
|
1318
|
+
message: z31.string()
|
1319
|
+
}),
|
1320
|
+
401: DefaultUnauthorizedSchema,
|
1321
|
+
500: DefaultErrorResponseSchema
|
1322
|
+
},
|
1323
|
+
summary: "Create a extension."
|
1324
|
+
},
|
1325
|
+
getExtensions: {
|
1326
|
+
method: "GET",
|
1327
|
+
path: "",
|
1328
|
+
query: z31.object({
|
1329
|
+
page: z31.coerce.number().default(1),
|
1330
|
+
pageSize: z31.coerce.number().default(10),
|
1331
|
+
keyword: z31.string().optional()
|
1332
|
+
}).optional(),
|
1333
|
+
headers: DefaultHeaderSchema,
|
1334
|
+
responses: {
|
1335
|
+
200: WithPagination(
|
1336
|
+
// The response data should contain the user relation.
|
1337
|
+
ExtensionSchema.extend({
|
1338
|
+
user: UserSchema
|
1339
|
+
})
|
1340
|
+
),
|
1341
|
+
400: z31.object({
|
1342
|
+
message: z31.string()
|
1343
|
+
}),
|
1344
|
+
401: DefaultUnauthorizedSchema,
|
1345
|
+
500: DefaultErrorResponseSchema
|
1346
|
+
},
|
1347
|
+
summary: "Get all extensions"
|
1348
|
+
},
|
1349
|
+
getExtensionByUserId: {
|
1350
|
+
method: "GET",
|
1351
|
+
path: "/user/:userId",
|
1352
|
+
pathParams: z31.object({ userId: z31.string() }),
|
1353
|
+
headers: DefaultHeaderSchema,
|
1354
|
+
responses: {
|
1355
|
+
200: ExtensionSchema,
|
1356
|
+
400: z31.object({
|
1357
|
+
message: z31.string()
|
1358
|
+
}),
|
1359
|
+
401: DefaultUnauthorizedSchema,
|
1360
|
+
500: DefaultErrorResponseSchema
|
1361
|
+
},
|
1362
|
+
summary: "Get extension by user id"
|
1363
|
+
},
|
1364
|
+
getExtensionByDialpad: {
|
1365
|
+
method: "GET",
|
1366
|
+
path: "/dialpad",
|
1367
|
+
query: z31.object({
|
1368
|
+
page: z31.coerce.number().default(1),
|
1369
|
+
pageSize: z31.coerce.number().default(10),
|
1370
|
+
keyword: z31.string().optional()
|
1371
|
+
}).optional(),
|
1372
|
+
headers: DefaultHeaderSchema,
|
1373
|
+
responses: {
|
1374
|
+
200: WithPagination(ExtensionSchema),
|
1375
|
+
500: DefaultErrorResponseSchema,
|
1376
|
+
400: z31.object({
|
1377
|
+
message: z31.string()
|
1378
|
+
}),
|
1379
|
+
401: DefaultUnauthorizedSchema
|
1380
|
+
},
|
1381
|
+
summary: "Get by dialpad"
|
1382
|
+
},
|
1383
|
+
updateExtension: {
|
1384
|
+
method: "PATCH",
|
1385
|
+
path: "/:id",
|
1386
|
+
pathParams: z31.object({ id: z31.string() }),
|
1387
|
+
headers: DefaultHeaderSchema,
|
1388
|
+
body: UpdateExtensionSchema,
|
1389
|
+
responses: {
|
1390
|
+
200: DefaultSuccessResponseSchema.extend({
|
1391
|
+
extension: ExtensionSchema
|
1392
|
+
}),
|
1393
|
+
500: DefaultErrorResponseSchema
|
1394
|
+
},
|
1395
|
+
summary: "Update a extension."
|
1396
|
+
},
|
1397
|
+
deleteExtension: {
|
1398
|
+
method: "DELETE",
|
1399
|
+
path: "/:id",
|
1400
|
+
pathParams: z31.object({ id: z31.string() }),
|
1401
|
+
headers: DefaultHeaderSchema,
|
1402
|
+
body: null,
|
1403
|
+
responses: {
|
1404
|
+
200: DefaultSuccessResponseSchema.extend({ message: z31.string() }),
|
1405
|
+
500: DefaultErrorResponseSchema
|
1406
|
+
},
|
1407
|
+
summary: "Delete a extension."
|
1408
|
+
}
|
1409
|
+
},
|
1410
|
+
{ pathPrefix: "extension" }
|
1411
|
+
);
|
1412
|
+
|
1413
|
+
// src/line/index.ts
|
1414
|
+
import { initContract as initContract10 } from "@ts-rest/core";
|
1415
|
+
import z34 from "zod";
|
1416
|
+
|
1417
|
+
// src/line/schema.ts
|
1418
|
+
import z32 from "zod";
|
1419
|
+
var ConnectLineSchema = z32.object({
|
1420
|
+
id: z32.string(),
|
1421
|
+
accessToken: z32.string()
|
995
1422
|
});
|
996
1423
|
|
997
1424
|
// src/line/validation.ts
|
998
|
-
import
|
999
|
-
var SendLineStickerSchema =
|
1000
|
-
userId:
|
1001
|
-
packageId:
|
1002
|
-
stickerId:
|
1003
|
-
accessToken:
|
1425
|
+
import z33 from "zod";
|
1426
|
+
var SendLineStickerSchema = z33.object({
|
1427
|
+
userId: z33.string().uuid(),
|
1428
|
+
packageId: z33.string(),
|
1429
|
+
stickerId: z33.string(),
|
1430
|
+
accessToken: z33.string()
|
1004
1431
|
});
|
1005
1432
|
|
1006
1433
|
// src/line/index.ts
|
1007
|
-
var lineContract =
|
1434
|
+
var lineContract = initContract10().router({
|
1008
1435
|
sendSticker: {
|
1009
1436
|
method: "POST",
|
1010
1437
|
path: "sticker",
|
1011
1438
|
responses: {
|
1012
1439
|
200: DefaultSuccessResponseSchema.extend({
|
1013
|
-
data:
|
1440
|
+
data: z34.any()
|
1014
1441
|
}),
|
1015
1442
|
500: DefaultErrorResponseSchema
|
1016
1443
|
},
|
@@ -1022,7 +1449,7 @@ var lineContract = initContract6().router({
|
|
1022
1449
|
path: "connect",
|
1023
1450
|
responses: {
|
1024
1451
|
200: DefaultSuccessResponseSchema.extend({
|
1025
|
-
data:
|
1452
|
+
data: z34.any()
|
1026
1453
|
}),
|
1027
1454
|
500: DefaultErrorResponseSchema
|
1028
1455
|
},
|
@@ -1032,16 +1459,16 @@ var lineContract = initContract6().router({
|
|
1032
1459
|
});
|
1033
1460
|
|
1034
1461
|
// src/mail/email-engine-webhooks-events.contract.ts
|
1035
|
-
import { initContract as
|
1036
|
-
import
|
1037
|
-
var emailEngineWebhooksEventsContract =
|
1462
|
+
import { initContract as initContract11 } from "@ts-rest/core";
|
1463
|
+
import z35 from "zod";
|
1464
|
+
var emailEngineWebhooksEventsContract = initContract11().router({
|
1038
1465
|
handleWebhooksEvents: {
|
1039
1466
|
method: "POST",
|
1040
1467
|
path: "/email_engine/webhooks",
|
1041
1468
|
// we don't need to respone anything but added responses just for solving type error
|
1042
1469
|
responses: {
|
1043
1470
|
200: DefaultSuccessResponseSchema.extend({
|
1044
|
-
message:
|
1471
|
+
message: z35.string()
|
1045
1472
|
})
|
1046
1473
|
},
|
1047
1474
|
body: null,
|
@@ -1050,189 +1477,189 @@ var emailEngineWebhooksEventsContract = initContract7().router({
|
|
1050
1477
|
});
|
1051
1478
|
|
1052
1479
|
// src/mail/mail-contract.ts
|
1053
|
-
import { initContract as
|
1480
|
+
import { initContract as initContract16 } from "@ts-rest/core";
|
1054
1481
|
|
1055
1482
|
// src/mail/room-contract.ts
|
1056
|
-
import { initContract as
|
1057
|
-
import
|
1483
|
+
import { initContract as initContract12 } from "@ts-rest/core";
|
1484
|
+
import z39 from "zod";
|
1058
1485
|
|
1059
1486
|
// src/mail/schemas/room.schema.ts
|
1060
|
-
import
|
1487
|
+
import z38 from "zod";
|
1061
1488
|
|
1062
1489
|
// src/mail/schemas/account.schema.ts
|
1063
|
-
import
|
1064
|
-
var MailServerSchema =
|
1065
|
-
id:
|
1066
|
-
createdAt:
|
1067
|
-
updatedAt:
|
1068
|
-
deletedAt:
|
1069
|
-
name:
|
1070
|
-
smtpHost:
|
1071
|
-
smtpPort:
|
1072
|
-
smtpTlsPort:
|
1073
|
-
useTlsForSmtp:
|
1074
|
-
imapHost:
|
1075
|
-
imapPort:
|
1076
|
-
imapTlsPort:
|
1077
|
-
useTlsForImap:
|
1078
|
-
});
|
1079
|
-
var MailAccountSchema =
|
1080
|
-
id:
|
1081
|
-
createdAt:
|
1082
|
-
updatedAt:
|
1083
|
-
deletedAt:
|
1084
|
-
name:
|
1085
|
-
address:
|
1086
|
-
accountId:
|
1087
|
-
mailServerId:
|
1490
|
+
import z36 from "zod";
|
1491
|
+
var MailServerSchema = z36.object({
|
1492
|
+
id: z36.string(),
|
1493
|
+
createdAt: z36.date(),
|
1494
|
+
updatedAt: z36.date(),
|
1495
|
+
deletedAt: z36.date().nullable(),
|
1496
|
+
name: z36.string(),
|
1497
|
+
smtpHost: z36.string(),
|
1498
|
+
smtpPort: z36.string(),
|
1499
|
+
smtpTlsPort: z36.string(),
|
1500
|
+
useTlsForSmtp: z36.boolean(),
|
1501
|
+
imapHost: z36.string(),
|
1502
|
+
imapPort: z36.string(),
|
1503
|
+
imapTlsPort: z36.string(),
|
1504
|
+
useTlsForImap: z36.boolean()
|
1505
|
+
});
|
1506
|
+
var MailAccountSchema = z36.object({
|
1507
|
+
id: z36.string(),
|
1508
|
+
createdAt: z36.date(),
|
1509
|
+
updatedAt: z36.date(),
|
1510
|
+
deletedAt: z36.date().nullable(),
|
1511
|
+
name: z36.string(),
|
1512
|
+
address: z36.string(),
|
1513
|
+
accountId: z36.string(),
|
1514
|
+
mailServerId: z36.string(),
|
1088
1515
|
mailServer: MailServerSchema,
|
1089
|
-
state:
|
1090
|
-
|
1091
|
-
|
1092
|
-
|
1093
|
-
|
1094
|
-
|
1095
|
-
|
1096
|
-
|
1097
|
-
|
1516
|
+
state: z36.union([
|
1517
|
+
z36.literal("init"),
|
1518
|
+
z36.literal("syncing"),
|
1519
|
+
z36.literal("connecting"),
|
1520
|
+
z36.literal("connected"),
|
1521
|
+
z36.literal("disconnected"),
|
1522
|
+
z36.literal("authenticationError"),
|
1523
|
+
z36.literal("connectError"),
|
1524
|
+
z36.literal("unset")
|
1098
1525
|
])
|
1099
1526
|
});
|
1100
1527
|
|
1101
1528
|
// src/mail/schemas/message.schema.ts
|
1102
|
-
import
|
1103
|
-
var AttachmentSchema =
|
1104
|
-
id:
|
1105
|
-
createdAt:
|
1106
|
-
updatedAt:
|
1107
|
-
deletedAt:
|
1108
|
-
roomId:
|
1109
|
-
messageId:
|
1110
|
-
fileName:
|
1111
|
-
fileType:
|
1112
|
-
emailEngineAttachmentId:
|
1113
|
-
uploadId:
|
1114
|
-
upload:
|
1115
|
-
id:
|
1116
|
-
createdAt:
|
1117
|
-
updatedAt:
|
1118
|
-
deletedAt:
|
1119
|
-
bucket_name:
|
1120
|
-
file_name:
|
1121
|
-
file_key:
|
1122
|
-
file_size:
|
1123
|
-
file_url:
|
1124
|
-
extension_name:
|
1529
|
+
import z37 from "zod";
|
1530
|
+
var AttachmentSchema = z37.object({
|
1531
|
+
id: z37.string(),
|
1532
|
+
createdAt: z37.date(),
|
1533
|
+
updatedAt: z37.date(),
|
1534
|
+
deletedAt: z37.nullable(z37.date()),
|
1535
|
+
roomId: z37.string(),
|
1536
|
+
messageId: z37.string(),
|
1537
|
+
fileName: z37.string(),
|
1538
|
+
fileType: z37.string(),
|
1539
|
+
emailEngineAttachmentId: z37.string(),
|
1540
|
+
uploadId: z37.string(),
|
1541
|
+
upload: z37.object({
|
1542
|
+
id: z37.string(),
|
1543
|
+
createdAt: z37.date(),
|
1544
|
+
updatedAt: z37.date(),
|
1545
|
+
deletedAt: z37.nullable(z37.date()),
|
1546
|
+
bucket_name: z37.string(),
|
1547
|
+
file_name: z37.string(),
|
1548
|
+
file_key: z37.string(),
|
1549
|
+
file_size: z37.number(),
|
1550
|
+
file_url: z37.string(),
|
1551
|
+
extension_name: z37.string()
|
1125
1552
|
})
|
1126
1553
|
});
|
1127
|
-
var MessageSchema2 =
|
1128
|
-
id:
|
1129
|
-
createdAt:
|
1130
|
-
updatedAt:
|
1131
|
-
deletedAt:
|
1132
|
-
roomId:
|
1133
|
-
subject:
|
1134
|
-
textPlain:
|
1135
|
-
textHtml:
|
1136
|
-
textId:
|
1137
|
-
emailEngineEmailId:
|
1138
|
-
emailEngineMessageId:
|
1139
|
-
emailEngineReplyTo:
|
1140
|
-
direction:
|
1141
|
-
date:
|
1142
|
-
action:
|
1143
|
-
unseen:
|
1144
|
-
seemsLikeNew:
|
1145
|
-
from:
|
1146
|
-
to:
|
1147
|
-
cc:
|
1148
|
-
bcc:
|
1149
|
-
attachments:
|
1554
|
+
var MessageSchema2 = z37.object({
|
1555
|
+
id: z37.string(),
|
1556
|
+
createdAt: z37.date(),
|
1557
|
+
updatedAt: z37.date(),
|
1558
|
+
deletedAt: z37.nullable(z37.date()),
|
1559
|
+
roomId: z37.string(),
|
1560
|
+
subject: z37.string(),
|
1561
|
+
textPlain: z37.string(),
|
1562
|
+
textHtml: z37.string(),
|
1563
|
+
textId: z37.string(),
|
1564
|
+
emailEngineEmailId: z37.string(),
|
1565
|
+
emailEngineMessageId: z37.string(),
|
1566
|
+
emailEngineReplyTo: z37.nullable(z37.string()),
|
1567
|
+
direction: z37.string(),
|
1568
|
+
date: z37.date(),
|
1569
|
+
action: z37.string(),
|
1570
|
+
unseen: z37.boolean(),
|
1571
|
+
seemsLikeNew: z37.boolean(),
|
1572
|
+
from: z37.array(MailUserSchema),
|
1573
|
+
to: z37.array(MailUserSchema),
|
1574
|
+
cc: z37.array(MailUserSchema),
|
1575
|
+
bcc: z37.array(MailUserSchema),
|
1576
|
+
attachments: z37.array(AttachmentSchema)
|
1150
1577
|
});
|
1151
1578
|
|
1152
1579
|
// src/mail/schemas/room.schema.ts
|
1153
|
-
var MailUserSchema =
|
1154
|
-
id:
|
1155
|
-
createdAt:
|
1156
|
-
updatedAt:
|
1157
|
-
deletedAt:
|
1158
|
-
name:
|
1159
|
-
address:
|
1160
|
-
});
|
1161
|
-
var TagSchema2 =
|
1162
|
-
color:
|
1163
|
-
id:
|
1164
|
-
createdAt:
|
1165
|
-
updatedAt:
|
1166
|
-
deletedAt:
|
1167
|
-
name:
|
1168
|
-
});
|
1169
|
-
var UserModel =
|
1170
|
-
id:
|
1171
|
-
createdAt:
|
1172
|
-
updatedAt:
|
1173
|
-
deletedAt:
|
1174
|
-
name:
|
1175
|
-
email:
|
1176
|
-
address:
|
1177
|
-
phone:
|
1178
|
-
notification_count:
|
1179
|
-
});
|
1180
|
-
var ActivityLogModel =
|
1181
|
-
id:
|
1182
|
-
createdAt:
|
1183
|
-
updatedAt:
|
1184
|
-
deletedAt:
|
1185
|
-
description:
|
1186
|
-
actorId:
|
1187
|
-
roomId:
|
1580
|
+
var MailUserSchema = z38.object({
|
1581
|
+
id: z38.string(),
|
1582
|
+
createdAt: z38.date(),
|
1583
|
+
updatedAt: z38.date(),
|
1584
|
+
deletedAt: z38.date().nullable(),
|
1585
|
+
name: z38.string(),
|
1586
|
+
address: z38.string()
|
1587
|
+
});
|
1588
|
+
var TagSchema2 = z38.object({
|
1589
|
+
color: z38.string(),
|
1590
|
+
id: z38.string(),
|
1591
|
+
createdAt: z38.date(),
|
1592
|
+
updatedAt: z38.date(),
|
1593
|
+
deletedAt: z38.date().nullable(),
|
1594
|
+
name: z38.string()
|
1595
|
+
});
|
1596
|
+
var UserModel = z38.object({
|
1597
|
+
id: z38.string().uuid(),
|
1598
|
+
createdAt: z38.date(),
|
1599
|
+
updatedAt: z38.date(),
|
1600
|
+
deletedAt: z38.date().nullable(),
|
1601
|
+
name: z38.string(),
|
1602
|
+
email: z38.string(),
|
1603
|
+
address: z38.string().nullable(),
|
1604
|
+
phone: z38.string().nullable(),
|
1605
|
+
notification_count: z38.number().nullable()
|
1606
|
+
});
|
1607
|
+
var ActivityLogModel = z38.object({
|
1608
|
+
id: z38.string(),
|
1609
|
+
createdAt: z38.string(),
|
1610
|
+
updatedAt: z38.string(),
|
1611
|
+
deletedAt: z38.nullable(z38.string()),
|
1612
|
+
description: z38.string(),
|
1613
|
+
actorId: z38.string(),
|
1614
|
+
roomId: z38.string(),
|
1188
1615
|
actor: UserModel
|
1189
1616
|
});
|
1190
|
-
var MessagesAndLogs =
|
1191
|
-
var MailRoomSchema =
|
1192
|
-
id:
|
1193
|
-
createdAt:
|
1194
|
-
updatedAt:
|
1195
|
-
deletedAt:
|
1196
|
-
subject:
|
1197
|
-
resolved:
|
1198
|
-
assigneeId:
|
1199
|
-
note:
|
1200
|
-
mailId:
|
1201
|
-
direction:
|
1202
|
-
lastMessageId:
|
1203
|
-
firstMessageId:
|
1204
|
-
from:
|
1205
|
-
to:
|
1206
|
-
cc:
|
1207
|
-
bcc:
|
1617
|
+
var MessagesAndLogs = z38.array(z38.union([MessageSchema2, ActivityLogModel]));
|
1618
|
+
var MailRoomSchema = z38.object({
|
1619
|
+
id: z38.string(),
|
1620
|
+
createdAt: z38.date(),
|
1621
|
+
updatedAt: z38.date(),
|
1622
|
+
deletedAt: z38.date().nullable(),
|
1623
|
+
subject: z38.string(),
|
1624
|
+
resolved: z38.boolean(),
|
1625
|
+
assigneeId: z38.string().nullable(),
|
1626
|
+
note: z38.string(),
|
1627
|
+
mailId: z38.string(),
|
1628
|
+
direction: z38.string(),
|
1629
|
+
lastMessageId: z38.string(),
|
1630
|
+
firstMessageId: z38.string(),
|
1631
|
+
from: z38.array(MailUserSchema),
|
1632
|
+
to: z38.array(MailUserSchema),
|
1633
|
+
cc: z38.array(MailUserSchema),
|
1634
|
+
bcc: z38.array(MailUserSchema),
|
1208
1635
|
firstMessage: MessageSchema2,
|
1209
1636
|
lastMessage: MessageSchema2,
|
1210
|
-
tags:
|
1637
|
+
tags: z38.array(TagSchema2),
|
1211
1638
|
assignee: UserModel,
|
1212
|
-
messages:
|
1639
|
+
messages: z38.array(MessageSchema2),
|
1213
1640
|
messagesAndLogs: MessagesAndLogs,
|
1214
1641
|
mail: MailAccountSchema,
|
1215
|
-
unReadMessageCount:
|
1216
|
-
});
|
1217
|
-
var AttachmentSchema2 =
|
1218
|
-
fileName:
|
1219
|
-
fileType:
|
1220
|
-
emailEngineAttachmentId:
|
1221
|
-
uploadId:
|
1222
|
-
messageId:
|
1223
|
-
roomId:
|
1642
|
+
unReadMessageCount: z38.number()
|
1643
|
+
});
|
1644
|
+
var AttachmentSchema2 = z38.object({
|
1645
|
+
fileName: z38.string(),
|
1646
|
+
fileType: z38.string(),
|
1647
|
+
emailEngineAttachmentId: z38.string(),
|
1648
|
+
uploadId: z38.string(),
|
1649
|
+
messageId: z38.string(),
|
1650
|
+
roomId: z38.string(),
|
1224
1651
|
upload: UploadSchema
|
1225
1652
|
});
|
1226
1653
|
|
1227
1654
|
// src/mail/room-contract.ts
|
1228
|
-
var roomContract =
|
1655
|
+
var roomContract = initContract12().router(
|
1229
1656
|
{
|
1230
1657
|
create: {
|
1231
1658
|
method: "POST",
|
1232
1659
|
path: "/",
|
1233
1660
|
responses: {
|
1234
1661
|
200: DefaultSuccessResponseSchema.extend({
|
1235
|
-
message:
|
1662
|
+
message: z39.string()
|
1236
1663
|
}),
|
1237
1664
|
...DefaultResponses
|
1238
1665
|
},
|
@@ -1242,21 +1669,19 @@ var roomContract = initContract8().router(
|
|
1242
1669
|
getAll: {
|
1243
1670
|
method: "GET",
|
1244
1671
|
path: "",
|
1245
|
-
query:
|
1246
|
-
page:
|
1247
|
-
pageSize:
|
1248
|
-
keyword:
|
1249
|
-
assigneeId:
|
1250
|
-
resolved:
|
1672
|
+
query: z39.object({
|
1673
|
+
page: z39.coerce.number().default(1),
|
1674
|
+
pageSize: z39.coerce.number().default(10),
|
1675
|
+
keyword: z39.string().optional(),
|
1676
|
+
assigneeId: z39.string().uuid().optional().nullable(),
|
1677
|
+
resolved: z39.boolean().or(z39.string().transform((value) => value.toLowerCase() === "true")).optional().nullable()
|
1251
1678
|
}),
|
1252
1679
|
responses: {
|
1253
1680
|
200: DefaultSuccessResponseSchema.extend({
|
1254
|
-
data:
|
1255
|
-
|
1256
|
-
|
1257
|
-
|
1258
|
-
pageSize: z31.number()
|
1259
|
-
})
|
1681
|
+
data: z39.array(MailRoomSchema),
|
1682
|
+
total: z39.number(),
|
1683
|
+
page: z39.number(),
|
1684
|
+
pageSize: z39.number()
|
1260
1685
|
}),
|
1261
1686
|
...DefaultResponses
|
1262
1687
|
},
|
@@ -1265,8 +1690,8 @@ var roomContract = initContract8().router(
|
|
1265
1690
|
getById: {
|
1266
1691
|
method: "GET",
|
1267
1692
|
path: "/:id",
|
1268
|
-
pathParams:
|
1269
|
-
id:
|
1693
|
+
pathParams: z39.object({
|
1694
|
+
id: z39.string().uuid()
|
1270
1695
|
}),
|
1271
1696
|
responses: {
|
1272
1697
|
200: DefaultSuccessResponseSchema.extend({
|
@@ -1279,12 +1704,12 @@ var roomContract = initContract8().router(
|
|
1279
1704
|
getAttachments: {
|
1280
1705
|
method: "GET",
|
1281
1706
|
path: "/:id/attachments",
|
1282
|
-
pathParams:
|
1283
|
-
id:
|
1707
|
+
pathParams: z39.object({
|
1708
|
+
id: z39.string().uuid()
|
1284
1709
|
}),
|
1285
1710
|
responses: {
|
1286
1711
|
200: DefaultSuccessResponseSchema.extend({
|
1287
|
-
data:
|
1712
|
+
data: z39.array(AttachmentSchema2)
|
1288
1713
|
}),
|
1289
1714
|
...DefaultResponses
|
1290
1715
|
},
|
@@ -1293,12 +1718,12 @@ var roomContract = initContract8().router(
|
|
1293
1718
|
getParticipants: {
|
1294
1719
|
method: "GET",
|
1295
1720
|
path: "/:id/participants",
|
1296
|
-
pathParams:
|
1297
|
-
id:
|
1721
|
+
pathParams: z39.object({
|
1722
|
+
id: z39.string().uuid()
|
1298
1723
|
}),
|
1299
1724
|
responses: {
|
1300
1725
|
200: DefaultSuccessResponseSchema.extend({
|
1301
|
-
data:
|
1726
|
+
data: z39.array(MailUserSchema)
|
1302
1727
|
}),
|
1303
1728
|
...DefaultResponses
|
1304
1729
|
},
|
@@ -1307,8 +1732,8 @@ var roomContract = initContract8().router(
|
|
1307
1732
|
update: {
|
1308
1733
|
method: "PATCH",
|
1309
1734
|
path: "/:id",
|
1310
|
-
pathParams:
|
1311
|
-
id:
|
1735
|
+
pathParams: z39.object({
|
1736
|
+
id: z39.string()
|
1312
1737
|
}),
|
1313
1738
|
responses: {
|
1314
1739
|
200: DefaultSuccessResponseSchema.extend({
|
@@ -1316,15 +1741,15 @@ var roomContract = initContract8().router(
|
|
1316
1741
|
}),
|
1317
1742
|
...DefaultResponses
|
1318
1743
|
},
|
1319
|
-
body:
|
1320
|
-
resolved:
|
1321
|
-
|
1744
|
+
body: z39.object({
|
1745
|
+
resolved: z39.boolean().or(
|
1746
|
+
z39.union([z39.literal("true"), z39.literal("false")]).transform((value) => value.toLowerCase() === "true")
|
1322
1747
|
).optional().nullable(),
|
1323
|
-
assigneeId:
|
1324
|
-
note:
|
1325
|
-
tags:
|
1326
|
-
handover:
|
1327
|
-
|
1748
|
+
assigneeId: z39.string().uuid().optional().nullable(),
|
1749
|
+
note: z39.string().optional(),
|
1750
|
+
tags: z39.array(z39.string().uuid()).optional(),
|
1751
|
+
handover: z39.boolean().or(
|
1752
|
+
z39.union([z39.literal("true"), z39.literal("false")]).transform((value) => value.toLowerCase() === "true")
|
1328
1753
|
).optional().nullable()
|
1329
1754
|
}),
|
1330
1755
|
summary: "Update a mail room by id"
|
@@ -1332,12 +1757,12 @@ var roomContract = initContract8().router(
|
|
1332
1757
|
markAsRead: {
|
1333
1758
|
method: "GET",
|
1334
1759
|
path: "/:id",
|
1335
|
-
pathParams:
|
1336
|
-
id:
|
1760
|
+
pathParams: z39.object({
|
1761
|
+
id: z39.string().uuid()
|
1337
1762
|
}),
|
1338
1763
|
responses: {
|
1339
1764
|
200: DefaultSuccessResponseSchema.extend({
|
1340
|
-
message:
|
1765
|
+
message: z39.string()
|
1341
1766
|
}),
|
1342
1767
|
...DefaultResponses
|
1343
1768
|
},
|
@@ -1350,55 +1775,55 @@ var roomContract = initContract8().router(
|
|
1350
1775
|
);
|
1351
1776
|
|
1352
1777
|
// src/mail/account-contract.ts
|
1353
|
-
import { initContract as
|
1354
|
-
import
|
1778
|
+
import { initContract as initContract13 } from "@ts-rest/core";
|
1779
|
+
import z41 from "zod";
|
1355
1780
|
|
1356
1781
|
// src/mail/schemas/account-validation.schema.ts
|
1357
|
-
import
|
1782
|
+
import z40 from "zod";
|
1358
1783
|
var AccountContractsValidationSchemas = {
|
1359
1784
|
create: {
|
1360
|
-
input:
|
1361
|
-
address:
|
1362
|
-
name:
|
1363
|
-
password:
|
1364
|
-
mailServerId:
|
1785
|
+
input: z40.object({
|
1786
|
+
address: z40.string().email("Email address must be valid email."),
|
1787
|
+
name: z40.string().min(1, "Account name cannot be empty."),
|
1788
|
+
password: z40.string().min(1, "Password cannot be empty."),
|
1789
|
+
mailServerId: z40.string().uuid("Invalid mail_server_id")
|
1365
1790
|
})
|
1366
1791
|
},
|
1367
1792
|
getById: {
|
1368
|
-
input:
|
1369
|
-
id:
|
1793
|
+
input: z40.object({
|
1794
|
+
id: z40.string().uuid()
|
1370
1795
|
}),
|
1371
1796
|
output: MailAccountSchema
|
1372
1797
|
},
|
1373
1798
|
getAll: {
|
1374
|
-
output:
|
1799
|
+
output: z40.array(MailAccountSchema)
|
1375
1800
|
},
|
1376
1801
|
update: {
|
1377
1802
|
input: MailAccountSchema,
|
1378
1803
|
output: MailAccountSchema
|
1379
1804
|
},
|
1380
1805
|
disconnect: {
|
1381
|
-
input:
|
1382
|
-
id:
|
1806
|
+
input: z40.object({
|
1807
|
+
id: z40.string().uuid()
|
1383
1808
|
}),
|
1384
1809
|
output: MailAccountSchema
|
1385
1810
|
},
|
1386
1811
|
reconnect: {
|
1387
|
-
input:
|
1388
|
-
id:
|
1812
|
+
input: z40.object({
|
1813
|
+
id: z40.string()
|
1389
1814
|
}),
|
1390
1815
|
output: MailAccountSchema
|
1391
1816
|
},
|
1392
1817
|
delete: {
|
1393
|
-
input:
|
1394
|
-
id:
|
1818
|
+
input: z40.object({
|
1819
|
+
id: z40.string()
|
1395
1820
|
}),
|
1396
1821
|
output: MailAccountSchema
|
1397
1822
|
}
|
1398
1823
|
};
|
1399
1824
|
|
1400
1825
|
// src/mail/account-contract.ts
|
1401
|
-
var accountContract =
|
1826
|
+
var accountContract = initContract13().router(
|
1402
1827
|
{
|
1403
1828
|
//#region ........register account
|
1404
1829
|
create: {
|
@@ -1407,16 +1832,16 @@ var accountContract = initContract9().router(
|
|
1407
1832
|
responses: {
|
1408
1833
|
201: DefaultSuccessResponseSchema.extend({
|
1409
1834
|
// data: AccountContractsValidationSchemas.create.output,
|
1410
|
-
message:
|
1835
|
+
message: z41.string()
|
1411
1836
|
}),
|
1412
|
-
400:
|
1413
|
-
message:
|
1837
|
+
400: z41.object({
|
1838
|
+
message: z41.string()
|
1414
1839
|
}),
|
1415
|
-
409:
|
1416
|
-
message:
|
1840
|
+
409: z41.object({
|
1841
|
+
message: z41.string()
|
1417
1842
|
}),
|
1418
|
-
500:
|
1419
|
-
message:
|
1843
|
+
500: z41.object({
|
1844
|
+
message: z41.string()
|
1420
1845
|
}),
|
1421
1846
|
...DefaultResponses
|
1422
1847
|
},
|
@@ -1445,7 +1870,7 @@ var accountContract = initContract9().router(
|
|
1445
1870
|
path: "",
|
1446
1871
|
responses: {
|
1447
1872
|
200: DefaultSuccessResponseSchema.extend({
|
1448
|
-
data:
|
1873
|
+
data: z41.any()
|
1449
1874
|
// data: AccountContractsValidationSchemas.getAll.output,
|
1450
1875
|
}),
|
1451
1876
|
...DefaultResponses
|
@@ -1457,8 +1882,8 @@ var accountContract = initContract9().router(
|
|
1457
1882
|
update: {
|
1458
1883
|
method: "PATCH",
|
1459
1884
|
path: "/:id",
|
1460
|
-
pathParams:
|
1461
|
-
id:
|
1885
|
+
pathParams: z41.object({
|
1886
|
+
id: z41.string().uuid()
|
1462
1887
|
}),
|
1463
1888
|
responses: {
|
1464
1889
|
201: DefaultSuccessResponseSchema.extend({
|
@@ -1507,7 +1932,7 @@ var accountContract = initContract9().router(
|
|
1507
1932
|
pathParams: AccountContractsValidationSchemas.delete.input,
|
1508
1933
|
responses: {
|
1509
1934
|
200: DefaultSuccessResponseSchema.extend({
|
1510
|
-
message:
|
1935
|
+
message: z41.string()
|
1511
1936
|
}),
|
1512
1937
|
...DefaultResponses
|
1513
1938
|
},
|
@@ -1523,16 +1948,16 @@ var accountContract = initContract9().router(
|
|
1523
1948
|
);
|
1524
1949
|
|
1525
1950
|
// src/mail/mail-server-contract.ts
|
1526
|
-
import { initContract as
|
1527
|
-
import
|
1528
|
-
var serverContract =
|
1951
|
+
import { initContract as initContract14 } from "@ts-rest/core";
|
1952
|
+
import z42 from "zod";
|
1953
|
+
var serverContract = initContract14().router(
|
1529
1954
|
{
|
1530
1955
|
create: {
|
1531
1956
|
method: "POST",
|
1532
1957
|
path: "/",
|
1533
1958
|
responses: {
|
1534
1959
|
200: DefaultSuccessResponseSchema.extend({
|
1535
|
-
message:
|
1960
|
+
message: z42.string()
|
1536
1961
|
}),
|
1537
1962
|
...DefaultResponses
|
1538
1963
|
},
|
@@ -1542,12 +1967,12 @@ var serverContract = initContract10().router(
|
|
1542
1967
|
get: {
|
1543
1968
|
method: "GET",
|
1544
1969
|
path: "/:id",
|
1545
|
-
pathParams:
|
1546
|
-
id:
|
1970
|
+
pathParams: z42.object({
|
1971
|
+
id: z42.string()
|
1547
1972
|
}),
|
1548
1973
|
responses: {
|
1549
1974
|
200: DefaultSuccessResponseSchema.extend({
|
1550
|
-
message:
|
1975
|
+
message: z42.string()
|
1551
1976
|
}),
|
1552
1977
|
...DefaultResponses
|
1553
1978
|
},
|
@@ -1556,12 +1981,12 @@ var serverContract = initContract10().router(
|
|
1556
1981
|
update: {
|
1557
1982
|
method: "PATCH",
|
1558
1983
|
path: "/:id",
|
1559
|
-
pathParams:
|
1560
|
-
id:
|
1984
|
+
pathParams: z42.object({
|
1985
|
+
id: z42.string()
|
1561
1986
|
}),
|
1562
1987
|
responses: {
|
1563
1988
|
200: DefaultSuccessResponseSchema.extend({
|
1564
|
-
message:
|
1989
|
+
message: z42.string()
|
1565
1990
|
}),
|
1566
1991
|
...DefaultResponses
|
1567
1992
|
},
|
@@ -1571,12 +1996,12 @@ var serverContract = initContract10().router(
|
|
1571
1996
|
delete: {
|
1572
1997
|
method: "PATCH",
|
1573
1998
|
path: "/:id",
|
1574
|
-
pathParams:
|
1575
|
-
id:
|
1999
|
+
pathParams: z42.object({
|
2000
|
+
id: z42.string()
|
1576
2001
|
}),
|
1577
2002
|
responses: {
|
1578
2003
|
200: DefaultSuccessResponseSchema.extend({
|
1579
|
-
message:
|
2004
|
+
message: z42.string()
|
1580
2005
|
}),
|
1581
2006
|
...DefaultResponses
|
1582
2007
|
},
|
@@ -1590,51 +2015,51 @@ var serverContract = initContract10().router(
|
|
1590
2015
|
);
|
1591
2016
|
|
1592
2017
|
// src/mail/message-contract.ts
|
1593
|
-
import { initContract as
|
1594
|
-
import
|
2018
|
+
import { initContract as initContract15 } from "@ts-rest/core";
|
2019
|
+
import z44 from "zod";
|
1595
2020
|
|
1596
2021
|
// src/mail/schemas/message-validation.schema.ts
|
1597
|
-
import
|
1598
|
-
var MailParticipant =
|
1599
|
-
name:
|
1600
|
-
address:
|
2022
|
+
import z43 from "zod";
|
2023
|
+
var MailParticipant = z43.object({
|
2024
|
+
name: z43.string().optional(),
|
2025
|
+
address: z43.string().email()
|
1601
2026
|
});
|
1602
2027
|
var MessageContractsValidationsSchema = {
|
1603
2028
|
submit: {
|
1604
|
-
input:
|
1605
|
-
subject:
|
1606
|
-
text:
|
1607
|
-
html:
|
2029
|
+
input: z43.object({
|
2030
|
+
subject: z43.string(),
|
2031
|
+
text: z43.string(),
|
2032
|
+
html: z43.string(),
|
1608
2033
|
from: MailParticipant,
|
1609
|
-
to:
|
1610
|
-
cc:
|
1611
|
-
bcc:
|
1612
|
-
reference:
|
1613
|
-
messageId:
|
1614
|
-
action:
|
2034
|
+
to: z43.array(MailParticipant),
|
2035
|
+
cc: z43.array(MailParticipant).optional(),
|
2036
|
+
bcc: z43.array(MailParticipant).optional(),
|
2037
|
+
reference: z43.object({
|
2038
|
+
messageId: z43.string(),
|
2039
|
+
action: z43.union([z43.literal("reply"), z43.literal("forward")])
|
1615
2040
|
}).optional(),
|
1616
|
-
attachments:
|
1617
|
-
|
1618
|
-
fileType:
|
1619
|
-
fileName:
|
1620
|
-
fileKey:
|
1621
|
-
fileSize:
|
1622
|
-
bucketName:
|
1623
|
-
presignedUrl:
|
2041
|
+
attachments: z43.array(
|
2042
|
+
z43.object({
|
2043
|
+
fileType: z43.string(),
|
2044
|
+
fileName: z43.string(),
|
2045
|
+
fileKey: z43.string(),
|
2046
|
+
fileSize: z43.number(),
|
2047
|
+
bucketName: z43.string(),
|
2048
|
+
presignedUrl: z43.string()
|
1624
2049
|
})
|
1625
2050
|
).optional()
|
1626
2051
|
}),
|
1627
|
-
output:
|
1628
|
-
response:
|
1629
|
-
messageId:
|
1630
|
-
sendAt:
|
1631
|
-
queueId:
|
2052
|
+
output: z43.object({
|
2053
|
+
response: z43.string(),
|
2054
|
+
messageId: z43.string(),
|
2055
|
+
sendAt: z43.string(),
|
2056
|
+
queueId: z43.string()
|
1632
2057
|
})
|
1633
2058
|
}
|
1634
2059
|
};
|
1635
2060
|
|
1636
2061
|
// src/mail/message-contract.ts
|
1637
|
-
var messageContract =
|
2062
|
+
var messageContract = initContract15().router(
|
1638
2063
|
{
|
1639
2064
|
submit: {
|
1640
2065
|
method: "POST",
|
@@ -1653,8 +2078,8 @@ var messageContract = initContract11().router(
|
|
1653
2078
|
getById: {
|
1654
2079
|
method: "GET",
|
1655
2080
|
path: "/:id",
|
1656
|
-
pathParams:
|
1657
|
-
id:
|
2081
|
+
pathParams: z44.object({
|
2082
|
+
id: z44.string()
|
1658
2083
|
}),
|
1659
2084
|
responses: {
|
1660
2085
|
200: DefaultSuccessResponseSchema.extend({
|
@@ -1672,31 +2097,155 @@ var messageContract = initContract11().router(
|
|
1672
2097
|
);
|
1673
2098
|
|
1674
2099
|
// src/mail/mail-contract.ts
|
1675
|
-
var mailContract =
|
2100
|
+
var mailContract = initContract16().router({
|
1676
2101
|
room: roomContract,
|
1677
2102
|
message: messageContract,
|
1678
2103
|
account: accountContract,
|
1679
2104
|
server: serverContract
|
1680
2105
|
});
|
1681
2106
|
|
1682
|
-
// src/
|
1683
|
-
import { initContract as
|
1684
|
-
|
2107
|
+
// src/messenger/index.ts
|
2108
|
+
import { initContract as initContract17 } from "@ts-rest/core";
|
2109
|
+
var messengerContract = initContract17().router({
|
2110
|
+
sendMessage: {
|
2111
|
+
method: "POST",
|
2112
|
+
path: "/message",
|
2113
|
+
body: SendMessageToPlatformSchema,
|
2114
|
+
responses: {
|
2115
|
+
200: DefaultSuccessResponseSchema
|
2116
|
+
}
|
2117
|
+
}
|
2118
|
+
}, {
|
2119
|
+
baseHeaders: DefaultHeaderSchema
|
2120
|
+
});
|
2121
|
+
|
2122
|
+
// src/permission/index.ts
|
2123
|
+
import { initContract as initContract18 } from "@ts-rest/core";
|
2124
|
+
import z45 from "zod";
|
2125
|
+
var permissionContract = initContract18().router(
|
2126
|
+
{
|
2127
|
+
getPermissions: {
|
2128
|
+
method: "GET",
|
2129
|
+
path: "",
|
2130
|
+
headers: DefaultHeaderSchema,
|
2131
|
+
responses: {
|
2132
|
+
200: z45.object({ permissions: PermissionSchema.array() }),
|
2133
|
+
400: z45.object({
|
2134
|
+
message: z45.string()
|
2135
|
+
}),
|
2136
|
+
401: DefaultUnauthorizedSchema,
|
2137
|
+
500: DefaultErrorResponseSchema
|
2138
|
+
},
|
2139
|
+
summary: "Get all permissions"
|
2140
|
+
}
|
2141
|
+
},
|
2142
|
+
{ pathPrefix: "permission" }
|
2143
|
+
);
|
2144
|
+
|
2145
|
+
// src/role/index.ts
|
2146
|
+
import { initContract as initContract19 } from "@ts-rest/core";
|
2147
|
+
import z47 from "zod";
|
2148
|
+
|
2149
|
+
// src/role/validation.ts
|
2150
|
+
import { z as z46 } from "zod";
|
2151
|
+
var CreateRoleSchema = z46.object({
|
2152
|
+
systemName: z46.string(),
|
2153
|
+
displayName: z46.string(),
|
2154
|
+
description: z46.string().nullable(),
|
2155
|
+
permissions: z46.array(z46.string())
|
2156
|
+
});
|
2157
|
+
var UpdateRoleSchema = CreateRoleSchema;
|
2158
|
+
|
2159
|
+
// src/role/index.ts
|
2160
|
+
var roleContract = initContract19().router(
|
2161
|
+
{
|
2162
|
+
createRole: {
|
2163
|
+
method: "POST",
|
2164
|
+
path: "",
|
2165
|
+
headers: DefaultHeaderSchema,
|
2166
|
+
body: CreateRoleSchema,
|
2167
|
+
responses: {
|
2168
|
+
201: DefaultSuccessResponseSchema.extend({
|
2169
|
+
role: RoleSchema
|
2170
|
+
}),
|
2171
|
+
400: z47.object({
|
2172
|
+
message: z47.string()
|
2173
|
+
}),
|
2174
|
+
401: DefaultUnauthorizedSchema,
|
2175
|
+
500: DefaultErrorResponseSchema
|
2176
|
+
},
|
2177
|
+
summary: "Create a role."
|
2178
|
+
},
|
2179
|
+
getRoles: {
|
2180
|
+
method: "GET",
|
2181
|
+
path: "",
|
2182
|
+
query: z47.object({
|
2183
|
+
page: z47.coerce.number().default(1),
|
2184
|
+
pageSize: z47.coerce.number().default(10)
|
2185
|
+
}).optional(),
|
2186
|
+
headers: DefaultHeaderSchema,
|
2187
|
+
responses: {
|
2188
|
+
200: WithPagination(RoleSchema),
|
2189
|
+
400: z47.object({
|
2190
|
+
message: z47.string()
|
2191
|
+
}),
|
2192
|
+
401: DefaultUnauthorizedSchema,
|
2193
|
+
500: DefaultErrorResponseSchema
|
2194
|
+
},
|
2195
|
+
summary: "Get all roles"
|
2196
|
+
},
|
2197
|
+
updateRole: {
|
2198
|
+
method: "PATCH",
|
2199
|
+
path: "/:id",
|
2200
|
+
pathParams: z47.object({ id: z47.string() }),
|
2201
|
+
headers: DefaultHeaderSchema,
|
2202
|
+
body: UpdateRoleSchema,
|
2203
|
+
responses: {
|
2204
|
+
201: DefaultSuccessResponseSchema.extend({
|
2205
|
+
role: RoleSchema
|
2206
|
+
}),
|
2207
|
+
400: z47.object({
|
2208
|
+
message: z47.string()
|
2209
|
+
}),
|
2210
|
+
401: DefaultUnauthorizedSchema,
|
2211
|
+
500: DefaultErrorResponseSchema
|
2212
|
+
},
|
2213
|
+
summary: "Update a role."
|
2214
|
+
},
|
2215
|
+
deleteRole: {
|
2216
|
+
method: "DELETE",
|
2217
|
+
path: "/:id",
|
2218
|
+
pathParams: z47.object({ id: z47.string() }),
|
2219
|
+
headers: DefaultHeaderSchema,
|
2220
|
+
body: null,
|
2221
|
+
responses: {
|
2222
|
+
200: DefaultSuccessResponseSchema.extend({ message: z47.string() }),
|
2223
|
+
500: DefaultErrorResponseSchema
|
2224
|
+
},
|
2225
|
+
summary: "Delete a role."
|
2226
|
+
}
|
2227
|
+
},
|
2228
|
+
{ pathPrefix: "role" }
|
2229
|
+
);
|
2230
|
+
|
2231
|
+
// src/tag/index.ts
|
2232
|
+
import { initContract as initContract20 } from "@ts-rest/core";
|
2233
|
+
import z49 from "zod";
|
1685
2234
|
|
1686
2235
|
// src/tag/validation.ts
|
1687
|
-
import { z as
|
1688
|
-
var CreateTagSchema =
|
1689
|
-
name:
|
2236
|
+
import { z as z48 } from "zod";
|
2237
|
+
var CreateTagSchema = z48.object({
|
2238
|
+
name: z48.string(),
|
1690
2239
|
group: TagGroupSchema
|
1691
2240
|
});
|
1692
|
-
var GetTagsSchema =
|
2241
|
+
var GetTagsSchema = z48.object({
|
1693
2242
|
group: TagGroupSchema.default("general"),
|
1694
|
-
keyword:
|
2243
|
+
keyword: z48.string()
|
1695
2244
|
}).partial().optional();
|
1696
|
-
var UpdateTagSchema =
|
2245
|
+
var UpdateTagSchema = z48.object({ name: z48.string() });
|
1697
2246
|
|
1698
2247
|
// src/tag/index.ts
|
1699
|
-
var tagContract =
|
2248
|
+
var tagContract = initContract20().router(
|
1700
2249
|
{
|
1701
2250
|
createTag: {
|
1702
2251
|
method: "POST",
|
@@ -1716,7 +2265,7 @@ var tagContract = initContract13().router(
|
|
1716
2265
|
query: GetTagsSchema,
|
1717
2266
|
responses: {
|
1718
2267
|
200: DefaultSuccessResponseSchema.extend({
|
1719
|
-
tags:
|
2268
|
+
tags: z49.array(TagSchema)
|
1720
2269
|
}),
|
1721
2270
|
500: DefaultErrorResponseSchema
|
1722
2271
|
},
|
@@ -1725,7 +2274,7 @@ var tagContract = initContract13().router(
|
|
1725
2274
|
updateTag: {
|
1726
2275
|
method: "PATCH",
|
1727
2276
|
path: "/:id",
|
1728
|
-
pathParams:
|
2277
|
+
pathParams: z49.object({ id: z49.string() }),
|
1729
2278
|
body: UpdateTagSchema,
|
1730
2279
|
responses: {
|
1731
2280
|
200: DefaultSuccessResponseSchema.extend({
|
@@ -1738,11 +2287,11 @@ var tagContract = initContract13().router(
|
|
1738
2287
|
deleteTag: {
|
1739
2288
|
method: "DELETE",
|
1740
2289
|
path: "/:id",
|
1741
|
-
pathParams:
|
1742
|
-
body:
|
2290
|
+
pathParams: z49.object({ id: z49.string() }),
|
2291
|
+
body: z49.any().optional(),
|
1743
2292
|
// We don't need the body.
|
1744
2293
|
responses: {
|
1745
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2294
|
+
200: DefaultSuccessResponseSchema.extend({ message: z49.string() }),
|
1746
2295
|
500: DefaultErrorResponseSchema
|
1747
2296
|
},
|
1748
2297
|
headers: DefaultHeaderSchema
|
@@ -1753,255 +2302,176 @@ var tagContract = initContract13().router(
|
|
1753
2302
|
}
|
1754
2303
|
);
|
1755
2304
|
|
1756
|
-
// src/
|
1757
|
-
import { initContract as
|
1758
|
-
import
|
2305
|
+
// src/telephony-agent-presence-status/index.ts
|
2306
|
+
import { initContract as initContract21 } from "@ts-rest/core";
|
2307
|
+
import z52 from "zod";
|
1759
2308
|
|
1760
|
-
// src/
|
1761
|
-
import
|
1762
|
-
var
|
1763
|
-
|
1764
|
-
|
1765
|
-
|
1766
|
-
|
1767
|
-
|
1768
|
-
|
2309
|
+
// src/telephony-agent-presence-status/schema.ts
|
2310
|
+
import z50 from "zod";
|
2311
|
+
var PresenceStatusSchema = DefaultEntitySchema.extend({
|
2312
|
+
status: z50.string(),
|
2313
|
+
description: z50.string()
|
2314
|
+
});
|
2315
|
+
var UserPresenceStatusSchema = DefaultEntitySchema.extend({
|
2316
|
+
user: UserSchema,
|
2317
|
+
presenceStatus: PresenceStatusSchema,
|
2318
|
+
customPresenceStatus: z50.string().nullable().optional()
|
1769
2319
|
});
|
1770
|
-
var UpdateExtensionSchema = CreateExtensionSchema;
|
1771
2320
|
|
1772
|
-
// src/
|
1773
|
-
|
2321
|
+
// src/telephony-agent-presence-status/validation.ts
|
2322
|
+
import { z as z51 } from "zod";
|
2323
|
+
var UpdateUserStatusSchema = z51.object({
|
2324
|
+
userId: z51.string(),
|
2325
|
+
presenceStatusId: z51.string().nullable().optional(),
|
2326
|
+
customPreseneStatus: z51.string().nullable().optional(),
|
2327
|
+
reason: z51.string()
|
2328
|
+
});
|
2329
|
+
|
2330
|
+
// src/telephony-agent-presence-status/index.ts
|
2331
|
+
var telephonyAgentPresenceStatusContract = initContract21().router(
|
1774
2332
|
{
|
1775
|
-
|
1776
|
-
method: "
|
1777
|
-
path: "",
|
2333
|
+
getAllStatus: {
|
2334
|
+
method: "GET",
|
2335
|
+
path: "/presence_status",
|
1778
2336
|
headers: DefaultHeaderSchema,
|
1779
|
-
body: CreateExtensionSchema,
|
1780
2337
|
responses: {
|
1781
|
-
|
1782
|
-
|
1783
|
-
|
1784
|
-
400: z40.object({
|
1785
|
-
message: z40.string()
|
2338
|
+
200: z52.array(PresenceStatusSchema),
|
2339
|
+
400: z52.object({
|
2340
|
+
message: z52.string()
|
1786
2341
|
}),
|
1787
2342
|
401: DefaultUnauthorizedSchema,
|
1788
2343
|
500: DefaultErrorResponseSchema
|
1789
2344
|
},
|
1790
|
-
summary: "
|
2345
|
+
summary: "Get all telephony presence status list."
|
1791
2346
|
},
|
1792
|
-
|
2347
|
+
getAllAgentStatus: {
|
1793
2348
|
method: "GET",
|
1794
|
-
path: "",
|
1795
|
-
query: z40.object({
|
1796
|
-
page: z40.coerce.number().default(1),
|
1797
|
-
pageSize: z40.coerce.number().default(10),
|
1798
|
-
keyword: z40.string().optional()
|
1799
|
-
}).optional(),
|
2349
|
+
path: "/agents/presence_status",
|
1800
2350
|
headers: DefaultHeaderSchema,
|
1801
2351
|
responses: {
|
1802
|
-
200:
|
1803
|
-
400:
|
1804
|
-
message:
|
2352
|
+
200: z52.array(UserPresenceStatusSchema),
|
2353
|
+
400: z52.object({
|
2354
|
+
message: z52.string()
|
1805
2355
|
}),
|
1806
2356
|
401: DefaultUnauthorizedSchema,
|
1807
2357
|
500: DefaultErrorResponseSchema
|
1808
2358
|
},
|
1809
|
-
summary: "Get all
|
2359
|
+
summary: "Get all user presence status list."
|
1810
2360
|
},
|
1811
|
-
|
2361
|
+
getAgentStatus: {
|
1812
2362
|
method: "GET",
|
1813
|
-
path: "/
|
1814
|
-
pathParams:
|
2363
|
+
path: "/presence_status/check_update/:userId",
|
2364
|
+
pathParams: z52.object({ userId: z52.string() }),
|
1815
2365
|
headers: DefaultHeaderSchema,
|
1816
2366
|
responses: {
|
1817
|
-
200:
|
1818
|
-
400:
|
1819
|
-
message:
|
2367
|
+
200: UserPresenceStatusSchema,
|
2368
|
+
400: z52.object({
|
2369
|
+
message: z52.string()
|
1820
2370
|
}),
|
1821
2371
|
401: DefaultUnauthorizedSchema,
|
1822
2372
|
500: DefaultErrorResponseSchema
|
1823
2373
|
},
|
1824
|
-
summary: "
|
2374
|
+
summary: "Check and update user agent status before getting from telephony server."
|
1825
2375
|
},
|
1826
|
-
|
1827
|
-
method: "
|
1828
|
-
path: "/
|
1829
|
-
query: z40.object({
|
1830
|
-
page: z40.coerce.number().default(1),
|
1831
|
-
pageSize: z40.coerce.number().default(10),
|
1832
|
-
keyword: z40.string().optional()
|
1833
|
-
}).optional(),
|
1834
|
-
headers: DefaultHeaderSchema,
|
1835
|
-
responses: {
|
1836
|
-
200: WithPagination(ExtensionSchema),
|
1837
|
-
500: DefaultErrorResponseSchema,
|
1838
|
-
400: z40.object({
|
1839
|
-
message: z40.string()
|
1840
|
-
}),
|
1841
|
-
401: DefaultUnauthorizedSchema
|
1842
|
-
},
|
1843
|
-
summary: "Get by dialpad"
|
1844
|
-
},
|
1845
|
-
updateExtension: {
|
1846
|
-
method: "PATCH",
|
1847
|
-
path: "/:id",
|
1848
|
-
pathParams: z40.object({ id: z40.string() }),
|
2376
|
+
updateUserStatus: {
|
2377
|
+
method: "POST",
|
2378
|
+
path: "/presence_status/user",
|
1849
2379
|
headers: DefaultHeaderSchema,
|
1850
|
-
body:
|
2380
|
+
body: UpdateUserStatusSchema,
|
1851
2381
|
responses: {
|
1852
2382
|
200: DefaultSuccessResponseSchema.extend({
|
1853
|
-
|
2383
|
+
userPresenceStatu: UserPresenceStatusSchema
|
1854
2384
|
}),
|
1855
|
-
|
1856
|
-
|
1857
|
-
summary: "Update a extension."
|
1858
|
-
},
|
1859
|
-
deleteExtension: {
|
1860
|
-
method: "DELETE",
|
1861
|
-
path: "/:id",
|
1862
|
-
pathParams: z40.object({ id: z40.string() }),
|
1863
|
-
headers: DefaultHeaderSchema,
|
1864
|
-
body: null,
|
1865
|
-
responses: {
|
1866
|
-
200: DefaultSuccessResponseSchema.extend({ message: z40.string() }),
|
1867
|
-
500: DefaultErrorResponseSchema
|
1868
|
-
},
|
1869
|
-
summary: "Delete a extension."
|
1870
|
-
}
|
1871
|
-
},
|
1872
|
-
{ pathPrefix: "extension" }
|
1873
|
-
);
|
1874
|
-
|
1875
|
-
// src/permission/index.ts
|
1876
|
-
import { initContract as initContract15 } from "@ts-rest/core";
|
1877
|
-
import z41 from "zod";
|
1878
|
-
var permissionContract = initContract15().router(
|
1879
|
-
{
|
1880
|
-
getPermissions: {
|
1881
|
-
method: "GET",
|
1882
|
-
path: "",
|
1883
|
-
headers: DefaultHeaderSchema,
|
1884
|
-
responses: {
|
1885
|
-
200: z41.object({ permissions: PermissionSchema.array() }),
|
1886
|
-
400: z41.object({
|
1887
|
-
message: z41.string()
|
2385
|
+
400: z52.object({
|
2386
|
+
message: z52.string()
|
1888
2387
|
}),
|
1889
2388
|
401: DefaultUnauthorizedSchema,
|
1890
2389
|
500: DefaultErrorResponseSchema
|
1891
2390
|
},
|
1892
|
-
summary: "
|
2391
|
+
summary: "Update presence status"
|
1893
2392
|
}
|
1894
2393
|
},
|
1895
|
-
{ pathPrefix: "
|
2394
|
+
{ pathPrefix: "telephony" }
|
1896
2395
|
);
|
1897
2396
|
|
1898
|
-
// src/
|
1899
|
-
import { initContract as
|
1900
|
-
import
|
2397
|
+
// src/telephony-extension/index.ts
|
2398
|
+
import { initContract as initContract22 } from "@ts-rest/core";
|
2399
|
+
import z54 from "zod";
|
1901
2400
|
|
1902
|
-
// src/
|
1903
|
-
import
|
1904
|
-
var
|
1905
|
-
|
1906
|
-
|
1907
|
-
|
1908
|
-
|
2401
|
+
// src/telephony-extension/schema.ts
|
2402
|
+
import z53 from "zod";
|
2403
|
+
var TelephonyExtensionSchema = z53.object({
|
2404
|
+
errcode: z53.coerce.number(),
|
2405
|
+
errmsg: z53.string(),
|
2406
|
+
total_number: z53.coerce.number(),
|
2407
|
+
data: z53.array(
|
2408
|
+
z53.object({
|
2409
|
+
id: z53.coerce.number(),
|
2410
|
+
online_status: z53.object({
|
2411
|
+
fx_phone: z53.object({ status: z53.coerce.number() }),
|
2412
|
+
sip_phone: z53.object({
|
2413
|
+
status: z53.coerce.number(),
|
2414
|
+
ext_dev_type: z53.string().optional()
|
2415
|
+
}),
|
2416
|
+
linkus_desktop: z53.object({ status: z53.coerce.number() }),
|
2417
|
+
linkus_mobile: z53.object({ status: z53.coerce.number() }),
|
2418
|
+
linkus_web: z53.object({
|
2419
|
+
status: z53.coerce.number(),
|
2420
|
+
ext_dev_type: z53.string().optional()
|
2421
|
+
})
|
2422
|
+
}).optional(),
|
2423
|
+
presence_status: z53.string().optional(),
|
2424
|
+
number: z53.string().optional(),
|
2425
|
+
caller_id_name: z53.string().optional(),
|
2426
|
+
role_name: z53.string().optional(),
|
2427
|
+
email_addr: z53.string().optional()
|
2428
|
+
})
|
2429
|
+
)
|
1909
2430
|
});
|
1910
|
-
var UpdateRoleSchema = CreateRoleSchema;
|
1911
2431
|
|
1912
|
-
// src/
|
1913
|
-
var
|
2432
|
+
// src/telephony-extension/index.ts
|
2433
|
+
var telephonyExtensionContract = initContract22().router(
|
1914
2434
|
{
|
1915
|
-
|
1916
|
-
method: "POST",
|
1917
|
-
path: "",
|
1918
|
-
headers: DefaultHeaderSchema,
|
1919
|
-
body: CreateRoleSchema,
|
1920
|
-
responses: {
|
1921
|
-
201: DefaultSuccessResponseSchema.extend({
|
1922
|
-
role: RoleSchema
|
1923
|
-
}),
|
1924
|
-
400: z43.object({
|
1925
|
-
message: z43.string()
|
1926
|
-
}),
|
1927
|
-
401: DefaultUnauthorizedSchema,
|
1928
|
-
500: DefaultErrorResponseSchema
|
1929
|
-
},
|
1930
|
-
summary: "Create a role."
|
1931
|
-
},
|
1932
|
-
getRoles: {
|
2435
|
+
getTelephonyExtensions: {
|
1933
2436
|
method: "GET",
|
1934
|
-
path: "",
|
1935
|
-
query: z43.object({
|
1936
|
-
page: z43.coerce.number().default(1),
|
1937
|
-
pageSize: z43.coerce.number().default(10)
|
1938
|
-
}).optional(),
|
1939
|
-
headers: DefaultHeaderSchema,
|
1940
|
-
responses: {
|
1941
|
-
200: WithPagination(RoleSchema),
|
1942
|
-
400: z43.object({
|
1943
|
-
message: z43.string()
|
1944
|
-
}),
|
1945
|
-
401: DefaultUnauthorizedSchema,
|
1946
|
-
500: DefaultErrorResponseSchema
|
1947
|
-
},
|
1948
|
-
summary: "Get all roles"
|
1949
|
-
},
|
1950
|
-
updateRole: {
|
1951
|
-
method: "PATCH",
|
1952
|
-
path: "/:id",
|
1953
|
-
pathParams: z43.object({ id: z43.string() }),
|
2437
|
+
path: "/extension_list",
|
1954
2438
|
headers: DefaultHeaderSchema,
|
1955
|
-
|
2439
|
+
query: null,
|
1956
2440
|
responses: {
|
1957
|
-
|
1958
|
-
|
1959
|
-
|
1960
|
-
400: z43.object({
|
1961
|
-
message: z43.string()
|
2441
|
+
200: TelephonyExtensionSchema,
|
2442
|
+
400: z54.object({
|
2443
|
+
message: z54.string()
|
1962
2444
|
}),
|
1963
2445
|
401: DefaultUnauthorizedSchema,
|
1964
2446
|
500: DefaultErrorResponseSchema
|
1965
2447
|
},
|
1966
|
-
summary: "
|
1967
|
-
},
|
1968
|
-
deleteRole: {
|
1969
|
-
method: "DELETE",
|
1970
|
-
path: "/:id",
|
1971
|
-
pathParams: z43.object({ id: z43.string() }),
|
1972
|
-
headers: DefaultHeaderSchema,
|
1973
|
-
body: null,
|
1974
|
-
responses: {
|
1975
|
-
200: DefaultSuccessResponseSchema.extend({ message: z43.string() }),
|
1976
|
-
500: DefaultErrorResponseSchema
|
1977
|
-
},
|
1978
|
-
summary: "Delete a role."
|
2448
|
+
summary: "Get all extension list by yeastar"
|
1979
2449
|
}
|
1980
2450
|
},
|
1981
|
-
{ pathPrefix: "
|
2451
|
+
{ pathPrefix: "telephony" }
|
1982
2452
|
);
|
1983
2453
|
|
1984
2454
|
// src/user/index.ts
|
1985
|
-
import { initContract as
|
1986
|
-
import
|
2455
|
+
import { initContract as initContract23 } from "@ts-rest/core";
|
2456
|
+
import z56 from "zod";
|
1987
2457
|
|
1988
2458
|
// src/user/validation.ts
|
1989
|
-
import { z as
|
1990
|
-
var CreateUserSchema =
|
1991
|
-
name:
|
1992
|
-
email:
|
1993
|
-
address:
|
1994
|
-
phone:
|
1995
|
-
password:
|
1996
|
-
notificationCount:
|
1997
|
-
roles:
|
2459
|
+
import { z as z55 } from "zod";
|
2460
|
+
var CreateUserSchema = z55.object({
|
2461
|
+
name: z55.string(),
|
2462
|
+
email: z55.string().email(),
|
2463
|
+
address: z55.string().nullable(),
|
2464
|
+
phone: z55.string().nullable(),
|
2465
|
+
password: z55.string(),
|
2466
|
+
notificationCount: z55.number().nullable().optional(),
|
2467
|
+
roles: z55.array(z55.string())
|
1998
2468
|
});
|
1999
2469
|
var UpdateUserSchema = CreateUserSchema.extend({
|
2000
|
-
newPassword:
|
2470
|
+
newPassword: z55.string()
|
2001
2471
|
});
|
2002
2472
|
|
2003
2473
|
// src/user/index.ts
|
2004
|
-
var userContract =
|
2474
|
+
var userContract = initContract23().router(
|
2005
2475
|
{
|
2006
2476
|
createUser: {
|
2007
2477
|
method: "POST",
|
@@ -2012,8 +2482,8 @@ var userContract = initContract17().router(
|
|
2012
2482
|
201: DefaultSuccessResponseSchema.extend({
|
2013
2483
|
user: UserSchema
|
2014
2484
|
}),
|
2015
|
-
400:
|
2016
|
-
message:
|
2485
|
+
400: z56.object({
|
2486
|
+
message: z56.string()
|
2017
2487
|
}),
|
2018
2488
|
401: DefaultUnauthorizedSchema
|
2019
2489
|
},
|
@@ -2023,15 +2493,15 @@ var userContract = initContract17().router(
|
|
2023
2493
|
method: "GET",
|
2024
2494
|
path: "",
|
2025
2495
|
headers: DefaultHeaderSchema,
|
2026
|
-
query:
|
2027
|
-
page:
|
2028
|
-
pageSize:
|
2029
|
-
keyword:
|
2496
|
+
query: z56.object({
|
2497
|
+
page: z56.coerce.number().default(1),
|
2498
|
+
pageSize: z56.coerce.number().default(10),
|
2499
|
+
keyword: z56.string().optional()
|
2030
2500
|
}).optional(),
|
2031
2501
|
responses: {
|
2032
2502
|
200: WithPagination(UserSchema),
|
2033
|
-
400:
|
2034
|
-
message:
|
2503
|
+
400: z56.object({
|
2504
|
+
message: z56.string()
|
2035
2505
|
}),
|
2036
2506
|
401: DefaultUnauthorizedSchema,
|
2037
2507
|
500: DefaultErrorResponseSchema
|
@@ -2041,12 +2511,12 @@ var userContract = initContract17().router(
|
|
2041
2511
|
getUserById: {
|
2042
2512
|
method: "GET",
|
2043
2513
|
path: "/:id",
|
2044
|
-
pathParams:
|
2514
|
+
pathParams: z56.object({ id: z56.string() }),
|
2045
2515
|
headers: DefaultHeaderSchema,
|
2046
2516
|
responses: {
|
2047
2517
|
200: UserSchema,
|
2048
|
-
400:
|
2049
|
-
message:
|
2518
|
+
400: z56.object({
|
2519
|
+
message: z56.string()
|
2050
2520
|
}),
|
2051
2521
|
401: DefaultUnauthorizedSchema
|
2052
2522
|
},
|
@@ -2055,15 +2525,15 @@ var userContract = initContract17().router(
|
|
2055
2525
|
updateUser: {
|
2056
2526
|
method: "PATCH",
|
2057
2527
|
path: "/:id",
|
2058
|
-
pathParams:
|
2528
|
+
pathParams: z56.object({ id: z56.string() }),
|
2059
2529
|
headers: DefaultHeaderSchema,
|
2060
2530
|
body: UpdateUserSchema,
|
2061
2531
|
responses: {
|
2062
2532
|
201: DefaultSuccessResponseSchema.extend({
|
2063
2533
|
role: UserSchema
|
2064
2534
|
}),
|
2065
|
-
400:
|
2066
|
-
message:
|
2535
|
+
400: z56.object({
|
2536
|
+
message: z56.string()
|
2067
2537
|
}),
|
2068
2538
|
401: DefaultUnauthorizedSchema
|
2069
2539
|
},
|
@@ -2072,11 +2542,11 @@ var userContract = initContract17().router(
|
|
2072
2542
|
deleteUser: {
|
2073
2543
|
method: "DELETE",
|
2074
2544
|
path: "/:id",
|
2075
|
-
pathParams:
|
2545
|
+
pathParams: z56.object({ id: z56.string() }),
|
2076
2546
|
headers: DefaultHeaderSchema,
|
2077
2547
|
body: null,
|
2078
2548
|
responses: {
|
2079
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2549
|
+
200: DefaultSuccessResponseSchema.extend({ message: z56.string() }),
|
2080
2550
|
500: DefaultErrorResponseSchema
|
2081
2551
|
},
|
2082
2552
|
summary: "Delete a user."
|
@@ -2085,44 +2555,87 @@ var userContract = initContract17().router(
|
|
2085
2555
|
{ pathPrefix: "user" }
|
2086
2556
|
);
|
2087
2557
|
|
2558
|
+
// src/user-presence-status-log/index.ts
|
2559
|
+
import { initContract as initContract24 } from "@ts-rest/core";
|
2560
|
+
import z59 from "zod";
|
2561
|
+
|
2562
|
+
// src/user-presence-status-log/schema.ts
|
2563
|
+
import z57 from "zod";
|
2564
|
+
var UserPresenceStatusLogSchema = DefaultEntitySchema.extend({
|
2565
|
+
user: UserSchema,
|
2566
|
+
previousPresenceStatus: PresenceStatusSchema,
|
2567
|
+
newPresenceStatus: PresenceStatusSchema,
|
2568
|
+
reason: z57.string()
|
2569
|
+
});
|
2570
|
+
|
2571
|
+
// src/user-presence-status-log/validation.ts
|
2572
|
+
import z58 from "zod";
|
2573
|
+
var UserPresenceStatusLogParamsSchema = z58.object({
|
2574
|
+
page: z58.coerce.number().default(1),
|
2575
|
+
pageSize: z58.coerce.number().default(10),
|
2576
|
+
selectedDate: z58.string().optional()
|
2577
|
+
}).optional();
|
2578
|
+
|
2579
|
+
// src/user-presence-status-log/index.ts
|
2580
|
+
var userPresenceStatusLogContract = initContract24().router(
|
2581
|
+
{
|
2582
|
+
getUserPresenceStatusLog: {
|
2583
|
+
method: "GET",
|
2584
|
+
path: "",
|
2585
|
+
query: UserPresenceStatusLogParamsSchema,
|
2586
|
+
headers: DefaultHeaderSchema,
|
2587
|
+
responses: {
|
2588
|
+
200: WithPagination(UserPresenceStatusLogSchema),
|
2589
|
+
400: z59.object({
|
2590
|
+
message: z59.string()
|
2591
|
+
}),
|
2592
|
+
401: DefaultUnauthorizedSchema,
|
2593
|
+
500: DefaultErrorResponseSchema
|
2594
|
+
},
|
2595
|
+
summary: "Get all user presence status log."
|
2596
|
+
}
|
2597
|
+
},
|
2598
|
+
{ pathPrefix: "user-presence-status-log" }
|
2599
|
+
);
|
2600
|
+
|
2088
2601
|
// src/widget/index.ts
|
2089
|
-
import { initContract as
|
2090
|
-
import
|
2602
|
+
import { initContract as initContract25 } from "@ts-rest/core";
|
2603
|
+
import z62 from "zod";
|
2091
2604
|
|
2092
2605
|
// src/widget/schema.ts
|
2093
|
-
import
|
2094
|
-
var FieldsSchema =
|
2095
|
-
var WidgetPositionSchema =
|
2096
|
-
|
2097
|
-
|
2098
|
-
|
2606
|
+
import z60 from "zod";
|
2607
|
+
var FieldsSchema = z60.object({ data: z60.array(z60.string()) });
|
2608
|
+
var WidgetPositionSchema = z60.union([
|
2609
|
+
z60.literal("menu"),
|
2610
|
+
z60.literal("ticket_detail"),
|
2611
|
+
z60.literal("contact_detail")
|
2099
2612
|
]);
|
2100
2613
|
var WidgetSchema = DefaultEntitySchema.extend({
|
2101
|
-
name:
|
2102
|
-
description:
|
2614
|
+
name: z60.string(),
|
2615
|
+
description: z60.string().nullable(),
|
2103
2616
|
position: WidgetPositionSchema.nullable(),
|
2104
2617
|
fields: FieldsSchema,
|
2105
|
-
url:
|
2618
|
+
url: z60.string()
|
2106
2619
|
});
|
2107
2620
|
|
2108
2621
|
// src/widget/validation.ts
|
2109
|
-
import
|
2110
|
-
var CreateWidgetSchema =
|
2111
|
-
name:
|
2112
|
-
description:
|
2113
|
-
url:
|
2622
|
+
import z61 from "zod";
|
2623
|
+
var CreateWidgetSchema = z61.object({
|
2624
|
+
name: z61.string(),
|
2625
|
+
description: z61.string(),
|
2626
|
+
url: z61.string(),
|
2114
2627
|
position: WidgetPositionSchema,
|
2115
|
-
fields:
|
2628
|
+
fields: z61.object({
|
2116
2629
|
data: (
|
2117
2630
|
// Array of attribute system names
|
2118
|
-
|
2631
|
+
z61.array(z61.string())
|
2119
2632
|
)
|
2120
2633
|
}).optional()
|
2121
2634
|
});
|
2122
2635
|
var UpdateWidgetSchema = CreateWidgetSchema;
|
2123
2636
|
|
2124
2637
|
// src/widget/index.ts
|
2125
|
-
var widgetContract =
|
2638
|
+
var widgetContract = initContract25().router(
|
2126
2639
|
{
|
2127
2640
|
createWidget: {
|
2128
2641
|
method: "POST",
|
@@ -2133,8 +2646,8 @@ var widgetContract = initContract18().router(
|
|
2133
2646
|
201: DefaultSuccessResponseSchema.extend({
|
2134
2647
|
widget: WidgetSchema
|
2135
2648
|
}),
|
2136
|
-
400:
|
2137
|
-
message:
|
2649
|
+
400: z62.object({
|
2650
|
+
message: z62.string()
|
2138
2651
|
}),
|
2139
2652
|
401: DefaultUnauthorizedSchema,
|
2140
2653
|
500: DefaultErrorResponseSchema
|
@@ -2144,17 +2657,17 @@ var widgetContract = initContract18().router(
|
|
2144
2657
|
getWidgets: {
|
2145
2658
|
method: "GET",
|
2146
2659
|
path: "",
|
2147
|
-
query:
|
2148
|
-
page:
|
2149
|
-
pageSize:
|
2150
|
-
keyword:
|
2660
|
+
query: z62.object({
|
2661
|
+
page: z62.coerce.number().default(1),
|
2662
|
+
pageSize: z62.coerce.number().default(10),
|
2663
|
+
keyword: z62.coerce.string().optional()
|
2151
2664
|
}).optional(),
|
2152
2665
|
headers: DefaultHeaderSchema,
|
2153
2666
|
responses: {
|
2154
2667
|
200: WithPagination(WidgetSchema),
|
2155
2668
|
500: DefaultErrorResponseSchema,
|
2156
|
-
400:
|
2157
|
-
message:
|
2669
|
+
400: z62.object({
|
2670
|
+
message: z62.string()
|
2158
2671
|
}),
|
2159
2672
|
401: DefaultUnauthorizedSchema
|
2160
2673
|
},
|
@@ -2165,9 +2678,9 @@ var widgetContract = initContract18().router(
|
|
2165
2678
|
path: "/menu",
|
2166
2679
|
headers: DefaultHeaderSchema,
|
2167
2680
|
responses: {
|
2168
|
-
200:
|
2169
|
-
400:
|
2170
|
-
message:
|
2681
|
+
200: z62.array(WidgetSchema),
|
2682
|
+
400: z62.object({
|
2683
|
+
message: z62.string()
|
2171
2684
|
}),
|
2172
2685
|
401: DefaultUnauthorizedSchema,
|
2173
2686
|
500: DefaultErrorResponseSchema
|
@@ -2179,9 +2692,9 @@ var widgetContract = initContract18().router(
|
|
2179
2692
|
path: "/ticket_detail",
|
2180
2693
|
headers: DefaultHeaderSchema,
|
2181
2694
|
responses: {
|
2182
|
-
200:
|
2183
|
-
400:
|
2184
|
-
message:
|
2695
|
+
200: z62.array(WidgetSchema),
|
2696
|
+
400: z62.object({
|
2697
|
+
message: z62.string()
|
2185
2698
|
}),
|
2186
2699
|
401: DefaultUnauthorizedSchema,
|
2187
2700
|
500: DefaultErrorResponseSchema
|
@@ -2193,9 +2706,9 @@ var widgetContract = initContract18().router(
|
|
2193
2706
|
path: "/contact_detail",
|
2194
2707
|
headers: DefaultHeaderSchema,
|
2195
2708
|
responses: {
|
2196
|
-
200:
|
2197
|
-
400:
|
2198
|
-
message:
|
2709
|
+
200: z62.array(WidgetSchema),
|
2710
|
+
400: z62.object({
|
2711
|
+
message: z62.string()
|
2199
2712
|
}),
|
2200
2713
|
401: DefaultUnauthorizedSchema,
|
2201
2714
|
500: DefaultErrorResponseSchema
|
@@ -2205,12 +2718,12 @@ var widgetContract = initContract18().router(
|
|
2205
2718
|
getWidgetById: {
|
2206
2719
|
method: "GET",
|
2207
2720
|
path: "/:id",
|
2208
|
-
pathParams:
|
2721
|
+
pathParams: z62.object({ id: z62.string() }),
|
2209
2722
|
headers: DefaultHeaderSchema,
|
2210
2723
|
responses: {
|
2211
2724
|
200: WidgetSchema,
|
2212
|
-
400:
|
2213
|
-
message:
|
2725
|
+
400: z62.object({
|
2726
|
+
message: z62.string()
|
2214
2727
|
}),
|
2215
2728
|
401: DefaultUnauthorizedSchema,
|
2216
2729
|
500: DefaultErrorResponseSchema
|
@@ -2244,14 +2757,14 @@ var widgetContract = initContract18().router(
|
|
2244
2757
|
updateWidget: {
|
2245
2758
|
method: "PATCH",
|
2246
2759
|
path: "/:id",
|
2247
|
-
pathParams:
|
2760
|
+
pathParams: z62.object({ id: z62.string() }),
|
2248
2761
|
headers: DefaultHeaderSchema,
|
2249
2762
|
responses: {
|
2250
2763
|
201: DefaultSuccessResponseSchema.extend({
|
2251
2764
|
widget: WidgetSchema
|
2252
2765
|
}),
|
2253
|
-
400:
|
2254
|
-
message:
|
2766
|
+
400: z62.object({
|
2767
|
+
message: z62.string()
|
2255
2768
|
}),
|
2256
2769
|
401: DefaultUnauthorizedSchema
|
2257
2770
|
},
|
@@ -2261,11 +2774,11 @@ var widgetContract = initContract18().router(
|
|
2261
2774
|
deleteWidget: {
|
2262
2775
|
method: "DELETE",
|
2263
2776
|
path: "/:id",
|
2264
|
-
pathParams:
|
2777
|
+
pathParams: z62.object({ id: z62.string() }),
|
2265
2778
|
headers: DefaultHeaderSchema,
|
2266
2779
|
body: null,
|
2267
2780
|
responses: {
|
2268
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2781
|
+
200: DefaultSuccessResponseSchema.extend({ message: z62.string() }),
|
2269
2782
|
500: DefaultErrorResponseSchema
|
2270
2783
|
},
|
2271
2784
|
summary: "Delete a widget."
|
@@ -2275,33 +2788,33 @@ var widgetContract = initContract18().router(
|
|
2275
2788
|
);
|
2276
2789
|
|
2277
2790
|
// src/wrap-up-form/index.ts
|
2278
|
-
import { initContract as
|
2279
|
-
import
|
2791
|
+
import { initContract as initContract26 } from "@ts-rest/core";
|
2792
|
+
import z65 from "zod";
|
2280
2793
|
|
2281
2794
|
// src/wrap-up-form/schema.ts
|
2282
|
-
import
|
2795
|
+
import z63 from "zod";
|
2283
2796
|
var WrapUpFormSchema = DefaultEntitySchema.extend({
|
2284
|
-
note:
|
2285
|
-
disposition:
|
2286
|
-
callFrom:
|
2287
|
-
callTo:
|
2288
|
-
tags:
|
2797
|
+
note: z63.string().nullable(),
|
2798
|
+
disposition: z63.string().nullable(),
|
2799
|
+
callFrom: z63.string().nullable(),
|
2800
|
+
callTo: z63.string().nullable(),
|
2801
|
+
tags: z63.array(TagSchema)
|
2289
2802
|
});
|
2290
2803
|
|
2291
2804
|
// src/wrap-up-form/validation.ts
|
2292
|
-
import { z as
|
2293
|
-
var CreateWrapUpFormSchema =
|
2294
|
-
note:
|
2295
|
-
disposition:
|
2296
|
-
callFrom:
|
2297
|
-
callTo:
|
2805
|
+
import { z as z64 } from "zod";
|
2806
|
+
var CreateWrapUpFormSchema = z64.object({
|
2807
|
+
note: z64.string().nullable().optional(),
|
2808
|
+
disposition: z64.string().nullable().optional(),
|
2809
|
+
callFrom: z64.string().nullable().optional(),
|
2810
|
+
callTo: z64.string().nullable().optional()
|
2298
2811
|
});
|
2299
2812
|
var UpdateWrapUpFormSchema = CreateWrapUpFormSchema.extend({
|
2300
|
-
tags:
|
2813
|
+
tags: z64.array(z64.string()).optional()
|
2301
2814
|
});
|
2302
2815
|
|
2303
2816
|
// src/wrap-up-form/index.ts
|
2304
|
-
var wrapUpFormContract =
|
2817
|
+
var wrapUpFormContract = initContract26().router(
|
2305
2818
|
{
|
2306
2819
|
createWrapUpForm: {
|
2307
2820
|
method: "POST",
|
@@ -2312,8 +2825,8 @@ var wrapUpFormContract = initContract19().router(
|
|
2312
2825
|
201: DefaultSuccessResponseSchema.extend({
|
2313
2826
|
wrapUpForm: WrapUpFormSchema
|
2314
2827
|
}),
|
2315
|
-
400:
|
2316
|
-
message:
|
2828
|
+
400: z65.object({
|
2829
|
+
message: z65.string()
|
2317
2830
|
}),
|
2318
2831
|
401: DefaultUnauthorizedSchema,
|
2319
2832
|
500: DefaultErrorResponseSchema
|
@@ -2323,15 +2836,15 @@ var wrapUpFormContract = initContract19().router(
|
|
2323
2836
|
getWrapUpForms: {
|
2324
2837
|
method: "GET",
|
2325
2838
|
path: "",
|
2326
|
-
query:
|
2327
|
-
page:
|
2328
|
-
pageSize:
|
2839
|
+
query: z65.object({
|
2840
|
+
page: z65.coerce.number().default(1),
|
2841
|
+
pageSize: z65.coerce.number().default(10)
|
2329
2842
|
}).optional(),
|
2330
2843
|
headers: DefaultHeaderSchema,
|
2331
2844
|
responses: {
|
2332
2845
|
200: WithPagination(WrapUpFormSchema),
|
2333
|
-
400:
|
2334
|
-
message:
|
2846
|
+
400: z65.object({
|
2847
|
+
message: z65.string()
|
2335
2848
|
}),
|
2336
2849
|
401: DefaultUnauthorizedSchema,
|
2337
2850
|
500: DefaultErrorResponseSchema
|
@@ -2341,15 +2854,15 @@ var wrapUpFormContract = initContract19().router(
|
|
2341
2854
|
updateWrapUpForm: {
|
2342
2855
|
method: "PATCH",
|
2343
2856
|
path: "/:id",
|
2344
|
-
pathParams:
|
2857
|
+
pathParams: z65.object({ id: z65.string() }),
|
2345
2858
|
headers: DefaultHeaderSchema,
|
2346
2859
|
body: UpdateWrapUpFormSchema,
|
2347
2860
|
responses: {
|
2348
2861
|
201: DefaultSuccessResponseSchema.extend({
|
2349
2862
|
wrapUpForm: WrapUpFormSchema
|
2350
2863
|
}),
|
2351
|
-
400:
|
2352
|
-
message:
|
2864
|
+
400: z65.object({
|
2865
|
+
message: z65.string()
|
2353
2866
|
}),
|
2354
2867
|
401: DefaultUnauthorizedSchema,
|
2355
2868
|
500: DefaultErrorResponseSchema
|
@@ -2360,130 +2873,8 @@ var wrapUpFormContract = initContract19().router(
|
|
2360
2873
|
{ pathPrefix: "wrap-up-form" }
|
2361
2874
|
);
|
2362
2875
|
|
2363
|
-
// src/telephony-extension/index.ts
|
2364
|
-
import { initContract as initContract20 } from "@ts-rest/core";
|
2365
|
-
import z53 from "zod";
|
2366
|
-
|
2367
|
-
// src/telephony-extension/schema.ts
|
2368
|
-
import z52 from "zod";
|
2369
|
-
var TelephonyExtensionSchema = z52.object({
|
2370
|
-
errcode: z52.coerce.number(),
|
2371
|
-
errmsg: z52.string(),
|
2372
|
-
total_number: z52.coerce.number(),
|
2373
|
-
data: z52.array(
|
2374
|
-
z52.object({
|
2375
|
-
id: z52.coerce.number(),
|
2376
|
-
online_status: z52.object({
|
2377
|
-
fx_phone: z52.object({ status: z52.coerce.number() }),
|
2378
|
-
sip_phone: z52.object({
|
2379
|
-
status: z52.coerce.number(),
|
2380
|
-
ext_dev_type: z52.string().optional()
|
2381
|
-
}),
|
2382
|
-
linkus_desktop: z52.object({ status: z52.coerce.number() }),
|
2383
|
-
linkus_mobile: z52.object({ status: z52.coerce.number() }),
|
2384
|
-
linkus_web: z52.object({
|
2385
|
-
status: z52.coerce.number(),
|
2386
|
-
ext_dev_type: z52.string().optional()
|
2387
|
-
})
|
2388
|
-
}).optional(),
|
2389
|
-
presence_status: z52.string().optional(),
|
2390
|
-
number: z52.string().optional(),
|
2391
|
-
call_id_name: z52.string().optional(),
|
2392
|
-
role_name: z52.string().optional(),
|
2393
|
-
email_addr: z52.string().optional()
|
2394
|
-
})
|
2395
|
-
)
|
2396
|
-
});
|
2397
|
-
|
2398
|
-
// src/telephony-extension/index.ts
|
2399
|
-
var telephonyExtensionContract = initContract20().router(
|
2400
|
-
{
|
2401
|
-
getTelephonyExtensions: {
|
2402
|
-
method: "GET",
|
2403
|
-
path: "/extension_list",
|
2404
|
-
headers: DefaultHeaderSchema,
|
2405
|
-
query: null,
|
2406
|
-
responses: {
|
2407
|
-
200: TelephonyExtensionSchema,
|
2408
|
-
400: z53.object({
|
2409
|
-
message: z53.string()
|
2410
|
-
}),
|
2411
|
-
401: DefaultUnauthorizedSchema,
|
2412
|
-
500: DefaultErrorResponseSchema
|
2413
|
-
},
|
2414
|
-
summary: "Get all extension list by yeastar"
|
2415
|
-
}
|
2416
|
-
},
|
2417
|
-
{ pathPrefix: "telephony" }
|
2418
|
-
);
|
2419
|
-
|
2420
|
-
// src/aws/index.ts
|
2421
|
-
import { initContract as initContract21 } from "@ts-rest/core";
|
2422
|
-
|
2423
|
-
// src/aws/validation.ts
|
2424
|
-
import z54 from "zod";
|
2425
|
-
var AwsContractsValidationSchema = {
|
2426
|
-
generatePresignedUrl: {
|
2427
|
-
input: z54.object({
|
2428
|
-
fileName: z54.string(),
|
2429
|
-
fileType: z54.string(),
|
2430
|
-
moduleName: z54.string()
|
2431
|
-
}),
|
2432
|
-
output: z54.object({
|
2433
|
-
fileName: z54.string(),
|
2434
|
-
fileKey: z54.string(),
|
2435
|
-
bucketName: z54.string(),
|
2436
|
-
url: z54.string(),
|
2437
|
-
cfUrl: z54.string().nullable()
|
2438
|
-
})
|
2439
|
-
},
|
2440
|
-
generateSignedUrl: {
|
2441
|
-
input: z54.object({
|
2442
|
-
fileKey: z54.string()
|
2443
|
-
}),
|
2444
|
-
output: z54.object({
|
2445
|
-
url: z54.string()
|
2446
|
-
})
|
2447
|
-
}
|
2448
|
-
};
|
2449
|
-
|
2450
|
-
// src/aws/index.ts
|
2451
|
-
var awsContract = initContract21().router(
|
2452
|
-
{
|
2453
|
-
generatePresignedUrl: {
|
2454
|
-
method: "POST",
|
2455
|
-
path: "/presigned-url",
|
2456
|
-
responses: {
|
2457
|
-
200: DefaultSuccessResponseSchema.extend({
|
2458
|
-
data: AwsContractsValidationSchema.generatePresignedUrl.output
|
2459
|
-
}),
|
2460
|
-
...DefaultResponses,
|
2461
|
-
500: DefaultErrorResponseSchema
|
2462
|
-
},
|
2463
|
-
body: AwsContractsValidationSchema.generatePresignedUrl.input,
|
2464
|
-
summary: "Generate a presigned url"
|
2465
|
-
},
|
2466
|
-
generateSignedUrl: {
|
2467
|
-
method: "POST",
|
2468
|
-
path: "/signed-url",
|
2469
|
-
responses: {
|
2470
|
-
200: DefaultSuccessResponseSchema.extend({
|
2471
|
-
data: AwsContractsValidationSchema.generateSignedUrl.output
|
2472
|
-
}),
|
2473
|
-
...DefaultResponses,
|
2474
|
-
500: DefaultErrorResponseSchema
|
2475
|
-
},
|
2476
|
-
body: AwsContractsValidationSchema.generateSignedUrl.input,
|
2477
|
-
summary: "Generate a signed url using file key"
|
2478
|
-
}
|
2479
|
-
},
|
2480
|
-
{
|
2481
|
-
pathPrefix: "aws/s3"
|
2482
|
-
}
|
2483
|
-
);
|
2484
|
-
|
2485
2876
|
// src/contract.ts
|
2486
|
-
var apiContract =
|
2877
|
+
var apiContract = initContract27().router({
|
2487
2878
|
auth: authContract,
|
2488
2879
|
mail: mailContract,
|
2489
2880
|
cxLog: cxLogContract,
|
@@ -2496,16 +2887,28 @@ var apiContract = initContract22().router({
|
|
2496
2887
|
emailEngineWebhooks: emailEngineWebhooksEventsContract,
|
2497
2888
|
category: categoryContract,
|
2498
2889
|
telephonyExtensionContract,
|
2499
|
-
line: lineContract,
|
2500
2890
|
attribute: attributeContract,
|
2501
2891
|
tag: tagContract,
|
2502
|
-
|
2503
|
-
aws: awsContract
|
2892
|
+
channel: channelContract,
|
2893
|
+
aws: awsContract,
|
2894
|
+
agentPresenceStatus: telephonyAgentPresenceStatusContract,
|
2895
|
+
userPresenceStatusLog: userPresenceStatusLogContract,
|
2896
|
+
contact: contactContract
|
2897
|
+
});
|
2898
|
+
var platformContract = initContract27().router({
|
2899
|
+
line: lineContract,
|
2900
|
+
messenger: messengerContract
|
2901
|
+
});
|
2902
|
+
var chatContract = initContract27().router({
|
2903
|
+
main: mainChatContract
|
2504
2904
|
});
|
2505
2905
|
export {
|
2506
2906
|
apiContract,
|
2507
2907
|
attributeContract,
|
2508
2908
|
categoryContract,
|
2509
|
-
|
2909
|
+
chatContract,
|
2910
|
+
platformContract,
|
2911
|
+
tagContract,
|
2912
|
+
wrapUpFormContract
|
2510
2913
|
};
|
2511
2914
|
//# sourceMappingURL=index.mjs.map
|