@kl1/contracts 1.0.6 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/dist/index.js +734 -349
  2. package/dist/index.js.map +1 -1
  3. package/dist/index.mjs +730 -345
  4. package/dist/index.mjs.map +1 -1
  5. package/dist/src/attribute/index.d.ts +43 -7
  6. package/dist/src/attribute/index.d.ts.map +1 -1
  7. package/dist/src/attribute/schema.d.ts +10 -2
  8. package/dist/src/attribute/schema.d.ts.map +1 -1
  9. package/dist/src/aws/index.d.ts +177 -0
  10. package/dist/src/aws/index.d.ts.map +1 -0
  11. package/dist/src/aws/validation.d.ts +58 -0
  12. package/dist/src/aws/validation.d.ts.map +1 -0
  13. package/dist/src/call-log/schema.d.ts +4 -4
  14. package/dist/src/call-log/validation.d.ts +2 -2
  15. package/dist/src/category/index.d.ts +48 -4
  16. package/dist/src/category/index.d.ts.map +1 -1
  17. package/dist/src/category/validation.d.ts +0 -3
  18. package/dist/src/category/validation.d.ts.map +1 -1
  19. package/dist/src/chat/index.d.ts +13804 -1345
  20. package/dist/src/chat/index.d.ts.map +1 -1
  21. package/dist/src/chat/schema.d.ts +11 -11
  22. package/dist/src/chat/schema.d.ts.map +1 -1
  23. package/dist/src/chat/validation.d.ts +425 -83
  24. package/dist/src/chat/validation.d.ts.map +1 -1
  25. package/dist/src/contract.d.ts +27320 -25820
  26. package/dist/src/contract.d.ts.map +1 -1
  27. package/dist/src/cx-log/index.d.ts +4 -4
  28. package/dist/src/cx-log/schema.d.ts +2 -2
  29. package/dist/src/extension/index.d.ts +1 -4
  30. package/dist/src/extension/index.d.ts.map +1 -1
  31. package/dist/src/extension/validation.d.ts +0 -3
  32. package/dist/src/extension/validation.d.ts.map +1 -1
  33. package/dist/src/line/index.d.ts +2 -2
  34. package/dist/src/line/validation.d.ts +2 -2
  35. package/dist/src/mail/index.d.ts +13 -0
  36. package/dist/src/mail/index.d.ts.map +1 -0
  37. package/dist/src/mail/mail-contract.d.ts +3863 -2962
  38. package/dist/src/mail/mail-contract.d.ts.map +1 -1
  39. package/dist/src/mail/message-contract.d.ts +188 -123
  40. package/dist/src/mail/message-contract.d.ts.map +1 -1
  41. package/dist/src/mail/room-contract.d.ts +3638 -2802
  42. package/dist/src/mail/room-contract.d.ts.map +1 -1
  43. package/dist/src/mail/schemas/message-validation.schema.d.ts +162 -1
  44. package/dist/src/mail/schemas/message-validation.schema.d.ts.map +1 -1
  45. package/dist/src/mail/schemas/message.schema.d.ts +4 -4
  46. package/dist/src/mail/schemas/room-validation.schema.d.ts +3426 -0
  47. package/dist/src/mail/schemas/room-validation.schema.d.ts.map +1 -0
  48. package/dist/src/mail/schemas/room.schema.d.ts +26 -26
  49. package/dist/src/role/index.d.ts +1 -4
  50. package/dist/src/role/index.d.ts.map +1 -1
  51. package/dist/src/role/validation.d.ts +1 -4
  52. package/dist/src/role/validation.d.ts.map +1 -1
  53. package/dist/src/telephony-cdr/schema.d.ts +2 -2
  54. package/dist/src/telephony-cdr/validation.d.ts +2 -2
  55. package/dist/src/telephony-extension/index.d.ts +193 -3
  56. package/dist/src/telephony-extension/index.d.ts.map +1 -1
  57. package/dist/src/telephony-extension/schema.d.ts +193 -3
  58. package/dist/src/telephony-extension/schema.d.ts.map +1 -1
  59. package/dist/src/user/index.d.ts +0 -3
  60. package/dist/src/user/index.d.ts.map +1 -1
  61. package/dist/src/user/validation.d.ts +0 -3
  62. package/dist/src/user/validation.d.ts.map +1 -1
  63. package/dist/src/widget/index.d.ts +2 -5
  64. package/dist/src/widget/index.d.ts.map +1 -1
  65. package/dist/src/widget/validation.d.ts +2 -5
  66. package/dist/src/widget/validation.d.ts.map +1 -1
  67. package/dist/src/wrap-up-form/index.d.ts +478 -0
  68. package/dist/src/wrap-up-form/index.d.ts.map +1 -0
  69. package/dist/src/wrap-up-form/schema.d.ts +63 -0
  70. package/dist/src/wrap-up-form/schema.d.ts.map +1 -0
  71. package/dist/src/wrap-up-form/validation.d.ts +37 -0
  72. package/dist/src/wrap-up-form/validation.d.ts.map +1 -0
  73. package/package.json +4 -3
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  // src/contract.ts
2
- import { initContract as initContract20 } from "@ts-rest/core";
2
+ import { initContract as initContract22 } from "@ts-rest/core";
3
3
 
4
4
  // src/attribute/index.ts
5
5
  import { initContract } from "@ts-rest/core";
@@ -60,13 +60,14 @@ var AttributeGroupSchema = DefaultEntitySchema.extend({
60
60
  });
61
61
  var AttributeSchema = DefaultEntitySchema.extend({
62
62
  systemName: z2.string(),
63
+ displayName: z2.string(),
63
64
  type: AttributeTypeSchema,
64
65
  position: z2.number(),
65
66
  isDefault: z2.boolean(),
66
67
  isArchived: z2.boolean(),
67
68
  isRequired: z2.boolean(),
68
69
  isUnique: z2.boolean(),
69
- options: z2.array(AttributeOptionSchema),
70
+ options: z2.array(AttributeOptionSchema.extend({ id: z2.string() })),
70
71
  group: AttributeGroupSchema
71
72
  });
72
73
 
@@ -162,7 +163,8 @@ var attributeContract = initContract().router(
162
163
  headers: DefaultHeaderSchema
163
164
  },
164
165
  updatePosition: {
165
- method: "PATCH",
166
+ // To avoid conflict with updateAttribute, I used "POST" here.
167
+ method: "POST",
166
168
  path: "/position",
167
169
  body: UpdatePositionSchema,
168
170
  responses: {
@@ -374,7 +376,6 @@ var CreateCategoryLevelSchema = z11.object({
374
376
  level: CategoryLevelSchema
375
377
  });
376
378
  var UpdateCategoryLevelSchema = z11.object({
377
- id: z11.string(),
378
379
  name: z11.string(),
379
380
  level: CategoryLevelSchema
380
381
  });
@@ -398,9 +399,9 @@ var categoryContract = initContract3().router(
398
399
  method: "GET",
399
400
  path: "",
400
401
  query: z12.object({
401
- page: z12.coerce.number().optional(),
402
- pageSize: z12.coerce.number().optional()
403
- }).optional(),
402
+ page: z12.coerce.number(),
403
+ pageSize: z12.coerce.number()
404
+ }).partial().optional(),
404
405
  headers: DefaultHeaderSchema,
405
406
  responses: {
406
407
  200: WithPagination(CategorySchema),
@@ -443,6 +444,16 @@ var categoryContract = initContract3().router(
443
444
  500: DefaultErrorResponseSchema
444
445
  }
445
446
  },
447
+ getCategoryLevels: {
448
+ method: "GET",
449
+ path: "/level",
450
+ responses: {
451
+ 200: DefaultSuccessResponseSchema.extend({
452
+ data: z12.array(CategoryLevelObjectSchema)
453
+ }),
454
+ 500: DefaultErrorResponseSchema
455
+ }
456
+ },
446
457
  updateCategoryLevel: {
447
458
  method: "PATCH",
448
459
  path: "/level/:id",
@@ -466,9 +477,6 @@ var categoryContract = initContract3().router(
466
477
  import { initContract as initContract4 } from "@ts-rest/core";
467
478
  import z19 from "zod";
468
479
 
469
- // src/chat/schema.ts
470
- import z16 from "zod";
471
-
472
480
  // src/contact/schema.ts
473
481
  import z13 from "zod";
474
482
  var ContactSchema = DefaultEntitySchema.extend({
@@ -482,6 +490,9 @@ var ContactSchema = DefaultEntitySchema.extend({
482
490
  socialProfileUrl: z13.string().nullable()
483
491
  });
484
492
 
493
+ // src/chat/schema.ts
494
+ import z16 from "zod";
495
+
485
496
  // src/tag/schema.ts
486
497
  import z14 from "zod";
487
498
  var TagSchema = DefaultEntitySchema.extend({
@@ -502,7 +513,7 @@ var UploadSchema = DefaultEntitySchema.extend({
502
513
  });
503
514
 
504
515
  // src/chat/schema.ts
505
- var ChannelTypeEnumSchema = z16.union([
516
+ var ChannelTypeSchema = z16.union([
506
517
  z16.literal("messenger"),
507
518
  z16.literal("line"),
508
519
  z16.literal("viber"),
@@ -512,17 +523,18 @@ var ChannelTypeEnumSchema = z16.union([
512
523
  z16.literal("telegram"),
513
524
  z16.literal("kakao")
514
525
  ]);
515
- var DirectionEnumSchema = z16.union([
526
+ var MessageDirectionTypeSchema = z16.union([
516
527
  z16.literal("incoming"),
517
- z16.literal("outgoing")
528
+ z16.literal("outgoing"),
529
+ z16.literal("system")
518
530
  ]);
519
- var ChannelStatusEnumSchema = z16.union([
531
+ var ChannelStatusTypeSchema = z16.union([
520
532
  z16.literal(1),
521
533
  // on
522
534
  z16.literal(0)
523
535
  // off
524
536
  ]);
525
- var MessageTypeEnumSchema = z16.union([
537
+ var MessageTypeSchema = z16.union([
526
538
  z16.literal("text"),
527
539
  z16.literal("image"),
528
540
  z16.literal("video"),
@@ -541,7 +553,7 @@ var MessageTypeEnumSchema = z16.union([
541
553
  z16.literal("updated"),
542
554
  z16.literal("started")
543
555
  ]);
544
- var MessageLocaleEnumSchema = z16.union([
556
+ var MessageLocaleTypeSchema = z16.union([
545
557
  z16.literal("mm"),
546
558
  z16.literal("en"),
547
559
  z16.literal("th")
@@ -554,11 +566,11 @@ var ChannelMetadataSchema = z16.object({
554
566
  });
555
567
  var ChannelSchema = DefaultEntitySchema.extend({
556
568
  name: z16.string(),
557
- type: ChannelTypeEnumSchema,
569
+ type: ChannelTypeSchema,
558
570
  metadata: ChannelMetadataSchema,
559
571
  brandName: z16.string(),
560
572
  platformId: z16.string().uuid(),
561
- status: ChannelStatusEnumSchema,
573
+ status: ChannelStatusTypeSchema,
562
574
  isReloginRequired: z16.boolean(),
563
575
  connectedUserName: z16.string(),
564
576
  connectedUserId: z16.string(),
@@ -572,7 +584,7 @@ var PlatformContactMetadataSchema = z16.object({
572
584
  var PlatformContactSchema = DefaultEntitySchema.extend({
573
585
  channelId: z16.string().uuid(),
574
586
  socialPlatformId: z16.string().uuid(),
575
- platform: ChannelTypeEnumSchema,
587
+ platform: ChannelTypeSchema,
576
588
  metadata: PlatformContactMetadataSchema,
577
589
  contact: ContactSchema
578
590
  });
@@ -585,7 +597,7 @@ var RoomSchema = DefaultEntitySchema.extend({
585
597
  unreadCount: z16.number(),
586
598
  firstResponseTime: z16.date(),
587
599
  isLatest: z16.boolean(),
588
- direction: DirectionEnumSchema,
600
+ direction: MessageDirectionTypeSchema,
589
601
  platformContact: PlatformContactSchema,
590
602
  actor: UserSchema,
591
603
  assignee: UserSchema,
@@ -594,8 +606,8 @@ var RoomSchema = DefaultEntitySchema.extend({
594
606
  });
595
607
  var MessageSchema = DefaultEntitySchema.extend({
596
608
  message: z16.string(),
597
- direction: DirectionEnumSchema,
598
- type: MessageTypeEnumSchema,
609
+ direction: MessageDirectionTypeSchema,
610
+ type: MessageTypeSchema,
599
611
  user: UserSchema,
600
612
  readAt: z16.date(),
601
613
  metadata: z16.any(),
@@ -604,7 +616,7 @@ var MessageSchema = DefaultEntitySchema.extend({
604
616
  platformMessageId: z16.string(),
605
617
  upload: UploadSchema,
606
618
  template: z16.any(),
607
- locale: MessageLocaleEnumSchema,
619
+ locale: MessageLocaleTypeSchema,
608
620
  isSent: z16.boolean()
609
621
  });
610
622
  var UnreadCountsByAssigneeSchema = z16.object({
@@ -629,64 +641,255 @@ var CustomFieldSchema = DefaultEntitySchema.extend({
629
641
  // src/chat/validation.ts
630
642
  var ConnectChannelSchema = z18.object({
631
643
  name: z18.string(),
632
- type: ChannelTypeEnumSchema,
644
+ type: ChannelTypeSchema,
633
645
  metadata: ChannelMetadataSchema,
634
646
  brandName: z18.string(),
635
647
  connectedUserName: z18.string(),
636
648
  connectedUserId: z18.string(),
637
649
  actor: UserSchema
638
- }).partial().optional();
639
- var GetRoomsSchema = DefaultQueryParamsSchema.extend({
640
- contactTagIds: z18.string().array().nullable().default([]),
641
- contactIds: z18.string().array().nullable().default([]),
642
- agentIds: z18.string().array().nullable().default([]),
643
- roomStatusTagIds: z18.string().array().nullable().default([]),
644
- keyword: z18.string().nullable(),
645
- company: z18.string().array().nullable().default([]),
646
- name: z18.string().nullable(),
647
- address: z18.string().nullable(),
648
- contactGroups: z18.string().array().nullable().default([]),
649
- selectedDate: z18.string().nullable(),
650
- customFields: CustomFieldSchema,
651
- tags: z18.string().array().nullable().default([]),
652
- phone: z18.string().nullable(),
653
- email: z18.string().nullable(),
654
- notes: z18.string().nullable(),
655
- tab: z18.string().nullable()
656
- }).partial().optional();
650
+ });
651
+ var GetRoomsSchema = z18.object({
652
+ page: z18.coerce.number().positive().default(1),
653
+ pageSize: z18.coerce.number().positive().default(20),
654
+ contactTagIds: z18.string().array().optional(),
655
+ contactIds: z18.string().array().optional(),
656
+ agentIds: z18.string().array().optional(),
657
+ roomTagIds: z18.string().array().optional(),
658
+ keyword: z18.string().optional(),
659
+ company: z18.string().array().optional(),
660
+ channel: z18.string().array().optional(),
661
+ name: z18.string().optional(),
662
+ address: z18.string().optional(),
663
+ contactGroups: z18.string().array().optional(),
664
+ selectedDate: z18.string().optional(),
665
+ customFields: z18.array(CustomFieldSchema).optional(),
666
+ tags: z18.string().array().optional(),
667
+ phone: z18.string().optional(),
668
+ email: z18.string().optional(),
669
+ notes: z18.string().optional(),
670
+ tab: z18.string().optional()
671
+ });
672
+ var UpdateRoomTagsAndNotesSchema = z18.object({
673
+ notes: z18.string().optional(),
674
+ tags: z18.string().array().optional()
675
+ });
676
+ var UpdateRoomAttributesSchema = UpdateRoomTagsAndNotesSchema.extend({
677
+ roomId: z18.string().uuid()
678
+ });
679
+ var MessageAttachmentSchema = z18.object({
680
+ bucketName: z18.string(),
681
+ fileKey: z18.string(),
682
+ fileName: z18.string(),
683
+ fileSize: z18.string(),
684
+ url: z18.string(),
685
+ fileType: MessageTypeSchema,
686
+ thumbnailUrl: z18.string().optional()
687
+ });
688
+ var SendMessageSchema = z18.object({
689
+ platform: ChannelTypeSchema,
690
+ room: z18.string().uuid(),
691
+ messageType: MessageTypeSchema,
692
+ message: z18.string().optional(),
693
+ direction: MessageDirectionTypeSchema,
694
+ messageAttachments: MessageAttachmentSchema,
695
+ user: UserSchema.optional(),
696
+ packageId: z18.number().optional(),
697
+ stickerId: z18.number().optional()
698
+ });
699
+ var SolveRoomSchema = z18.object({
700
+ roomId: z18.string()
701
+ });
702
+ var UpdateAssigneeSchema = SolveRoomSchema.extend({
703
+ assigneeId: z18.string().uuid()
704
+ });
705
+ var SearchRoomsSchema = DefaultQueryParamsSchema.extend({
706
+ query: z18.string()
707
+ });
657
708
 
658
709
  // src/chat/index.ts
659
- var chatContract = initContract4().router({
660
- connectChannel: {
661
- method: "POST",
662
- path: "connect",
663
- headers: DefaultHeaderSchema,
664
- responses: {
665
- 200: DefaultSuccessResponseSchema.extend({
666
- channel: ChannelSchema
667
- })
710
+ var chatContract = initContract4().router(
711
+ {
712
+ getRooms: {
713
+ method: "GET",
714
+ path: "/rooms",
715
+ responses: {
716
+ 200: DefaultSuccessResponseSchema.extend({
717
+ total: z19.number(),
718
+ page: z19.number(),
719
+ pageSize: z19.number(),
720
+ data: z19.array(RoomSchema),
721
+ unreadCountsByAssignee: z19.array(UnreadCountsByAssigneeSchema)
722
+ }),
723
+ 401: DefaultUnauthorizedSchema
724
+ },
725
+ query: GetRoomsSchema,
726
+ summary: "Get rooms"
668
727
  },
669
- body: ConnectChannelSchema,
670
- summary: "Connect message channel"
671
- },
672
- getRooms: {
673
- method: "GET",
674
- path: "/rooms",
675
- responses: {
676
- 200: DefaultSuccessResponseSchema.extend({
677
- total: z19.number(),
678
- page: z19.number(),
679
- pageSize: z19.number(),
680
- data: z19.array(RoomSchema),
681
- unreadCountsByAssignee: z19.array(UnreadCountsByAssigneeSchema)
728
+ getRoomContact: {
729
+ method: "GET",
730
+ path: "/contact/:contactId",
731
+ pathParams: z19.object({
732
+ contactId: z19.string().uuid()
682
733
  }),
683
- 401: DefaultUnauthorizedSchema
734
+ responses: {
735
+ 200: DefaultSuccessResponseSchema.extend({
736
+ data: ContactSchema
737
+ })
738
+ },
739
+ summary: "Get Contacts"
684
740
  },
685
- headers: DefaultHeaderSchema,
686
- query: GetRoomsSchema,
687
- summary: "Get rooms"
741
+ updateRoomAttributes: {
742
+ method: "PUT",
743
+ path: "/room",
744
+ body: UpdateRoomAttributesSchema,
745
+ responses: {
746
+ 200: DefaultSuccessResponseSchema.extend({
747
+ data: RoomSchema
748
+ })
749
+ },
750
+ summary: "Update room attributes"
751
+ },
752
+ updateRoomTagsAndNotes: {
753
+ method: "PATCH",
754
+ path: "/room/:roomId",
755
+ body: UpdateRoomAttributesSchema,
756
+ responses: {
757
+ 200: DefaultSuccessResponseSchema.extend({
758
+ data: RoomSchema
759
+ })
760
+ },
761
+ summary: "Update room tags and notes"
762
+ },
763
+ sendMessage: {
764
+ method: "POST",
765
+ path: "/message",
766
+ body: SendMessageSchema,
767
+ responses: {
768
+ 200: DefaultSuccessResponseSchema.extend({
769
+ data: MessageSchema
770
+ })
771
+ },
772
+ summary: "Send message to room"
773
+ },
774
+ getMessages: {
775
+ method: "GET",
776
+ path: "/message/:roomId",
777
+ pathParams: z19.object({
778
+ roomId: z19.string().uuid()
779
+ }),
780
+ responses: {
781
+ 200: DefaultSuccessResponseSchema.extend({
782
+ data: z19.array(MessageSchema)
783
+ })
784
+ },
785
+ summary: "Get messages"
786
+ },
787
+ solveRoom: {
788
+ method: "POST",
789
+ path: "/room/solve",
790
+ body: SolveRoomSchema,
791
+ responses: {
792
+ 200: DefaultSuccessResponseSchema.extend({
793
+ data: RoomSchema
794
+ }),
795
+ 409: DefaultErrorResponseSchema
796
+ },
797
+ summary: "Solve room"
798
+ },
799
+ updateAssignee: {
800
+ method: "POST",
801
+ path: "/room/assignee/update",
802
+ body: UpdateAssigneeSchema,
803
+ responses: {
804
+ 200: DefaultSuccessResponseSchema.extend({
805
+ data: RoomSchema
806
+ })
807
+ },
808
+ summary: "Update room assignee"
809
+ },
810
+ getRoom: {
811
+ method: "GET",
812
+ path: "/room/:roomId",
813
+ pathParams: z19.object({
814
+ roomId: z19.string().uuid()
815
+ }),
816
+ responses: {
817
+ 200: DefaultSuccessResponseSchema.extend({
818
+ data: RoomSchema
819
+ }),
820
+ 404: DefaultErrorResponseSchema
821
+ },
822
+ summary: "Get Room by id"
823
+ },
824
+ createRoom: {
825
+ method: "POST",
826
+ path: "/room/create/:roomid",
827
+ pathParams: z19.object({
828
+ roomid: z19.string().uuid()
829
+ }),
830
+ responses: {
831
+ 200: DefaultSuccessResponseSchema.extend({
832
+ data: RoomSchema.extend({
833
+ contact: ContactSchema
834
+ })
835
+ })
836
+ },
837
+ body: null,
838
+ summary: "Create new latest room by room id"
839
+ },
840
+ readRoom: {
841
+ method: "POST",
842
+ path: "/room/:roomid/read",
843
+ pathParams: z19.object({
844
+ roomid: z19.string().uuid()
845
+ }),
846
+ responses: {
847
+ 200: DefaultSuccessResponseSchema.extend({
848
+ data: RoomSchema.extend({
849
+ description: z19.string().nullable()
850
+ })
851
+ })
852
+ },
853
+ body: null,
854
+ summary: "Read room messages by room id"
855
+ },
856
+ searchRooms: {
857
+ method: "GET",
858
+ path: "/search",
859
+ responses: {
860
+ 200: DefaultSuccessResponseSchema.extend({
861
+ data: z19.array(RoomSchema)
862
+ })
863
+ },
864
+ query: SearchRoomsSchema,
865
+ summary: "Search Rooms"
866
+ },
867
+ connectChannel: {
868
+ method: "POST",
869
+ path: "connect",
870
+ responses: {
871
+ 200: DefaultSuccessResponseSchema.extend({
872
+ channel: ChannelSchema
873
+ })
874
+ },
875
+ body: ConnectChannelSchema,
876
+ summary: "Connect message channel"
877
+ },
878
+ getChannels: {
879
+ method: "GET",
880
+ path: "/channels",
881
+ responses: {
882
+ 200: DefaultSuccessResponseSchema.extend({
883
+ channels: ChannelSchema
884
+ })
885
+ },
886
+ summary: "Get Channels"
887
+ }
888
+ },
889
+ {
890
+ baseHeaders: DefaultHeaderSchema
688
891
  }
689
- });
892
+ );
690
893
 
691
894
  // src/cx-log/index.ts
692
895
  import { initContract as initContract5 } from "@ts-rest/core";
@@ -1036,10 +1239,12 @@ var roomContract = initContract8().router(
1036
1239
  }),
1037
1240
  responses: {
1038
1241
  200: DefaultSuccessResponseSchema.extend({
1039
- data: z30.array(MailRoomSchema),
1040
- total: z30.number(),
1041
- page: z30.number(),
1042
- pageSize: z30.number()
1242
+ data: z30.object({
1243
+ data: z30.array(MailRoomSchema),
1244
+ total: z30.number(),
1245
+ page: z30.number(),
1246
+ pageSize: z30.number()
1247
+ })
1043
1248
  }),
1044
1249
  ...DefaultResponses
1045
1250
  },
@@ -1132,125 +1337,56 @@ var roomContract = initContract8().router(
1132
1337
  }
1133
1338
  );
1134
1339
 
1135
- // src/mail/message-contract.ts
1136
- import { initContract as initContract9 } from "@ts-rest/core";
1137
- import z31 from "zod";
1138
- var messageContract = initContract9().router(
1139
- {
1140
- create: {
1141
- method: "POST",
1142
- path: "/",
1143
- responses: {
1144
- 200: DefaultSuccessResponseSchema.extend({
1145
- message: z31.string()
1146
- }),
1147
- ...DefaultResponses
1148
- },
1149
- body: null,
1150
- summary: "Add a new message into a room"
1151
- },
1152
- //#region get a message
1153
- getById: {
1154
- method: "GET",
1155
- path: "/:id",
1156
- pathParams: z31.object({
1157
- id: z31.string()
1158
- }),
1159
- responses: {
1160
- 200: DefaultSuccessResponseSchema.extend({
1161
- data: MessageSchema2
1162
- }),
1163
- ...DefaultResponses
1164
- },
1165
- summary: "Get a message by id"
1166
- },
1167
- //#endregion get a message
1168
- update: {
1169
- method: "PATCH",
1170
- path: "/:id",
1171
- pathParams: z31.object({
1172
- id: z31.string()
1173
- }),
1174
- responses: {
1175
- 200: DefaultSuccessResponseSchema.extend({
1176
- message: z31.string()
1177
- }),
1178
- ...DefaultResponses
1179
- },
1180
- body: null,
1181
- summary: "Update a message by id"
1182
- },
1183
- delete: {
1184
- method: "PATCH",
1185
- path: "/:id",
1186
- pathParams: z31.object({
1187
- id: z31.string()
1188
- }),
1189
- responses: {
1190
- 200: DefaultSuccessResponseSchema.extend({
1191
- message: z31.string()
1192
- }),
1193
- ...DefaultResponses
1194
- },
1195
- body: null,
1196
- summary: "Delete a message by id"
1197
- }
1198
- },
1199
- {
1200
- pathPrefix: "mail/message"
1201
- }
1202
- );
1203
-
1204
1340
  // src/mail/account-contract.ts
1205
- import { initContract as initContract10 } from "@ts-rest/core";
1206
- import z33 from "zod";
1341
+ import { initContract as initContract9 } from "@ts-rest/core";
1342
+ import z32 from "zod";
1207
1343
 
1208
1344
  // src/mail/schemas/account-validation.schema.ts
1209
- import z32 from "zod";
1345
+ import z31 from "zod";
1210
1346
  var AccountContractsValidationSchemas = {
1211
1347
  create: {
1212
- input: z32.object({
1213
- address: z32.string().email("Email address must be valid email."),
1214
- name: z32.string().min(1, "Account name cannot be empty."),
1215
- password: z32.string().min(1, "Password cannot be empty."),
1216
- mailServerId: z32.string().uuid("Invalid mail_server_id")
1348
+ input: z31.object({
1349
+ address: z31.string().email("Email address must be valid email."),
1350
+ name: z31.string().min(1, "Account name cannot be empty."),
1351
+ password: z31.string().min(1, "Password cannot be empty."),
1352
+ mailServerId: z31.string().uuid("Invalid mail_server_id")
1217
1353
  })
1218
1354
  },
1219
1355
  getById: {
1220
- input: z32.object({
1221
- id: z32.string().uuid()
1356
+ input: z31.object({
1357
+ id: z31.string().uuid()
1222
1358
  }),
1223
1359
  output: MailAccountSchema
1224
1360
  },
1225
1361
  getAll: {
1226
- output: z32.array(MailAccountSchema)
1362
+ output: z31.array(MailAccountSchema)
1227
1363
  },
1228
1364
  update: {
1229
1365
  input: MailAccountSchema,
1230
1366
  output: MailAccountSchema
1231
1367
  },
1232
1368
  disconnect: {
1233
- input: z32.object({
1234
- id: z32.string().uuid()
1369
+ input: z31.object({
1370
+ id: z31.string().uuid()
1235
1371
  }),
1236
1372
  output: MailAccountSchema
1237
1373
  },
1238
1374
  reconnect: {
1239
- input: z32.object({
1240
- id: z32.string()
1375
+ input: z31.object({
1376
+ id: z31.string()
1241
1377
  }),
1242
1378
  output: MailAccountSchema
1243
1379
  },
1244
1380
  delete: {
1245
- input: z32.object({
1246
- id: z32.string()
1381
+ input: z31.object({
1382
+ id: z31.string()
1247
1383
  }),
1248
1384
  output: MailAccountSchema
1249
1385
  }
1250
1386
  };
1251
1387
 
1252
1388
  // src/mail/account-contract.ts
1253
- var accountContract = initContract10().router(
1389
+ var accountContract = initContract9().router(
1254
1390
  {
1255
1391
  //#region ........register account
1256
1392
  create: {
@@ -1259,16 +1395,16 @@ var accountContract = initContract10().router(
1259
1395
  responses: {
1260
1396
  201: DefaultSuccessResponseSchema.extend({
1261
1397
  // data: AccountContractsValidationSchemas.create.output,
1262
- message: z33.string()
1398
+ message: z32.string()
1263
1399
  }),
1264
- 400: z33.object({
1265
- message: z33.string()
1400
+ 400: z32.object({
1401
+ message: z32.string()
1266
1402
  }),
1267
- 409: z33.object({
1268
- message: z33.string()
1403
+ 409: z32.object({
1404
+ message: z32.string()
1269
1405
  }),
1270
- 500: z33.object({
1271
- message: z33.string()
1406
+ 500: z32.object({
1407
+ message: z32.string()
1272
1408
  }),
1273
1409
  ...DefaultResponses
1274
1410
  },
@@ -1297,7 +1433,7 @@ var accountContract = initContract10().router(
1297
1433
  path: "",
1298
1434
  responses: {
1299
1435
  200: DefaultSuccessResponseSchema.extend({
1300
- data: z33.any()
1436
+ data: z32.any()
1301
1437
  // data: AccountContractsValidationSchemas.getAll.output,
1302
1438
  }),
1303
1439
  ...DefaultResponses
@@ -1309,8 +1445,8 @@ var accountContract = initContract10().router(
1309
1445
  update: {
1310
1446
  method: "PATCH",
1311
1447
  path: "/:id",
1312
- pathParams: z33.object({
1313
- id: z33.string().uuid()
1448
+ pathParams: z32.object({
1449
+ id: z32.string().uuid()
1314
1450
  }),
1315
1451
  responses: {
1316
1452
  201: DefaultSuccessResponseSchema.extend({
@@ -1359,7 +1495,7 @@ var accountContract = initContract10().router(
1359
1495
  pathParams: AccountContractsValidationSchemas.delete.input,
1360
1496
  responses: {
1361
1497
  200: DefaultSuccessResponseSchema.extend({
1362
- message: z33.string()
1498
+ message: z32.string()
1363
1499
  }),
1364
1500
  ...DefaultResponses
1365
1501
  },
@@ -1375,16 +1511,16 @@ var accountContract = initContract10().router(
1375
1511
  );
1376
1512
 
1377
1513
  // src/mail/mail-server-contract.ts
1378
- import { initContract as initContract11 } from "@ts-rest/core";
1379
- import z34 from "zod";
1380
- var serverContract = initContract11().router(
1514
+ import { initContract as initContract10 } from "@ts-rest/core";
1515
+ import z33 from "zod";
1516
+ var serverContract = initContract10().router(
1381
1517
  {
1382
1518
  create: {
1383
1519
  method: "POST",
1384
1520
  path: "/",
1385
1521
  responses: {
1386
1522
  200: DefaultSuccessResponseSchema.extend({
1387
- message: z34.string()
1523
+ message: z33.string()
1388
1524
  }),
1389
1525
  ...DefaultResponses
1390
1526
  },
@@ -1394,12 +1530,12 @@ var serverContract = initContract11().router(
1394
1530
  get: {
1395
1531
  method: "GET",
1396
1532
  path: "/:id",
1397
- pathParams: z34.object({
1398
- id: z34.string()
1533
+ pathParams: z33.object({
1534
+ id: z33.string()
1399
1535
  }),
1400
1536
  responses: {
1401
1537
  200: DefaultSuccessResponseSchema.extend({
1402
- message: z34.string()
1538
+ message: z33.string()
1403
1539
  }),
1404
1540
  ...DefaultResponses
1405
1541
  },
@@ -1408,12 +1544,12 @@ var serverContract = initContract11().router(
1408
1544
  update: {
1409
1545
  method: "PATCH",
1410
1546
  path: "/:id",
1411
- pathParams: z34.object({
1412
- id: z34.string()
1547
+ pathParams: z33.object({
1548
+ id: z33.string()
1413
1549
  }),
1414
1550
  responses: {
1415
1551
  200: DefaultSuccessResponseSchema.extend({
1416
- message: z34.string()
1552
+ message: z33.string()
1417
1553
  }),
1418
1554
  ...DefaultResponses
1419
1555
  },
@@ -1423,12 +1559,12 @@ var serverContract = initContract11().router(
1423
1559
  delete: {
1424
1560
  method: "PATCH",
1425
1561
  path: "/:id",
1426
- pathParams: z34.object({
1427
- id: z34.string()
1562
+ pathParams: z33.object({
1563
+ id: z33.string()
1428
1564
  }),
1429
1565
  responses: {
1430
1566
  200: DefaultSuccessResponseSchema.extend({
1431
- message: z34.string()
1567
+ message: z33.string()
1432
1568
  }),
1433
1569
  ...DefaultResponses
1434
1570
  },
@@ -1441,6 +1577,88 @@ var serverContract = initContract11().router(
1441
1577
  }
1442
1578
  );
1443
1579
 
1580
+ // src/mail/message-contract.ts
1581
+ import { initContract as initContract11 } from "@ts-rest/core";
1582
+ import z35 from "zod";
1583
+
1584
+ // src/mail/schemas/message-validation.schema.ts
1585
+ import z34 from "zod";
1586
+ var MailParticipant = z34.object({
1587
+ name: z34.string().optional(),
1588
+ address: z34.string().email()
1589
+ });
1590
+ var MessageContractsValidationsSchema = {
1591
+ submit: {
1592
+ input: z34.object({
1593
+ subject: z34.string(),
1594
+ text: z34.string(),
1595
+ html: z34.string(),
1596
+ from: MailParticipant,
1597
+ to: z34.array(MailParticipant),
1598
+ cc: z34.array(MailParticipant).optional(),
1599
+ bcc: z34.array(MailParticipant).optional(),
1600
+ reference: z34.object({
1601
+ messageId: z34.string(),
1602
+ action: z34.union([z34.literal("reply"), z34.literal("forward")])
1603
+ }).optional(),
1604
+ attachments: z34.array(
1605
+ z34.object({
1606
+ fileType: z34.string(),
1607
+ fileName: z34.string(),
1608
+ fileKey: z34.string(),
1609
+ fileSize: z34.number(),
1610
+ bucketName: z34.string(),
1611
+ presignedUrl: z34.string()
1612
+ })
1613
+ ).optional()
1614
+ }),
1615
+ output: z34.object({
1616
+ response: z34.string(),
1617
+ messageId: z34.string(),
1618
+ sendAt: z34.string(),
1619
+ queueId: z34.string()
1620
+ })
1621
+ }
1622
+ };
1623
+
1624
+ // src/mail/message-contract.ts
1625
+ var messageContract = initContract11().router(
1626
+ {
1627
+ submit: {
1628
+ method: "POST",
1629
+ path: "/submit",
1630
+ responses: {
1631
+ 200: DefaultSuccessResponseSchema.extend({
1632
+ data: MessageContractsValidationsSchema.submit.output
1633
+ }),
1634
+ ...DefaultResponses,
1635
+ 500: DefaultErrorResponseSchema
1636
+ },
1637
+ body: MessageContractsValidationsSchema.submit.input,
1638
+ summary: "Submit a message such compose, reply or forward"
1639
+ },
1640
+ //#region get a message
1641
+ getById: {
1642
+ method: "GET",
1643
+ path: "/:id",
1644
+ pathParams: z35.object({
1645
+ id: z35.string()
1646
+ }),
1647
+ responses: {
1648
+ 200: DefaultSuccessResponseSchema.extend({
1649
+ data: MessageSchema2
1650
+ }),
1651
+ ...DefaultResponses
1652
+ },
1653
+ summary: "Get a message by id"
1654
+ }
1655
+ //#endregion get a message
1656
+ },
1657
+ {
1658
+ pathPrefix: "mail/message"
1659
+ }
1660
+ );
1661
+
1444
1662
  // src/mail/mail-contract.ts
1445
1663
  var mailContract = initContract12().router({
1446
1664
  room: roomContract,
@@ -1451,19 +1669,19 @@ var mailContract = initContract12().router({
1451
1669
 
1452
1670
  // src/tag/index.ts
1453
1671
  import { initContract as initContract13 } from "@ts-rest/core";
1454
- import z36 from "zod";
1672
+ import z37 from "zod";
1455
1673
 
1456
1674
  // src/tag/validation.ts
1457
- import { z as z35 } from "zod";
1458
- var CreateTagSchema = z35.object({
1459
- name: z35.string(),
1675
+ import { z as z36 } from "zod";
1676
+ var CreateTagSchema = z36.object({
1677
+ name: z36.string(),
1460
1678
  group: TagGroupSchema
1461
1679
  });
1462
- var GetTagsSchema = z35.object({
1680
+ var GetTagsSchema = z36.object({
1463
1681
  group: TagGroupSchema.default("general"),
1464
- keyword: z35.string()
1682
+ keyword: z36.string()
1465
1683
  }).partial().optional();
1466
- var UpdateTagSchema = z35.object({ name: z35.string() });
1684
+ var UpdateTagSchema = z36.object({ name: z36.string() });
1467
1685
 
1468
1686
  // src/tag/index.ts
1469
1687
  var tagContract = initContract13().router(
@@ -1486,7 +1704,7 @@ var tagContract = initContract13().router(
1486
1704
  query: GetTagsSchema,
1487
1705
  responses: {
1488
1706
  200: DefaultSuccessResponseSchema.extend({
1489
- tags: z36.array(TagSchema)
1707
+ tags: z37.array(TagSchema)
1490
1708
  }),
1491
1709
  500: DefaultErrorResponseSchema
1492
1710
  },
@@ -1495,7 +1713,7 @@ var tagContract = initContract13().router(
1495
1713
  updateTag: {
1496
1714
  method: "PATCH",
1497
1715
  path: "/:id",
1498
- pathParams: z36.object({ id: z36.string() }),
1716
+ pathParams: z37.object({ id: z37.string() }),
1499
1717
  body: UpdateTagSchema,
1500
1718
  responses: {
1501
1719
  200: DefaultSuccessResponseSchema.extend({
@@ -1508,11 +1726,11 @@ var tagContract = initContract13().router(
1508
1726
  deleteTag: {
1509
1727
  method: "DELETE",
1510
1728
  path: "/:id",
1511
- pathParams: z36.object({ id: z36.string() }),
1512
- body: z36.any().optional(),
1729
+ pathParams: z37.object({ id: z37.string() }),
1730
+ body: z37.any().optional(),
1513
1731
  // We don't need the body.
1514
1732
  responses: {
1515
- 200: DefaultSuccessResponseSchema.extend({ message: z36.string() }),
1733
+ 200: DefaultSuccessResponseSchema.extend({ message: z37.string() }),
1516
1734
  500: DefaultErrorResponseSchema
1517
1735
  },
1518
1736
  headers: DefaultHeaderSchema
@@ -1525,22 +1743,11 @@ var tagContract = initContract13().router(
1525
1743
 
1526
1744
  // src/extension/index.ts
1527
1745
  import { initContract as initContract14 } from "@ts-rest/core";
1528
- import z39 from "zod";
1746
+ import z40 from "zod";
1529
1747
 
1530
1748
  // src/extension/schema.ts
1531
- import z37 from "zod";
1749
+ import z38 from "zod";
1532
1750
  var ExtensionSchema = DefaultEntitySchema.extend({
1533
- userId: z37.string().nullable(),
1534
- sipServerUrl: z37.string(),
1535
- sipUserName: z37.string(),
1536
- extensionId: z37.coerce.number().nullable(),
1537
- extensionName: z37.string().nullable(),
1538
- telephonySignature: z37.string().nullable()
1539
- });
1540
-
1541
- // src/extension/validation.ts
1542
- import { z as z38 } from "zod";
1543
- var CreateExtensionSchema = z38.object({
1544
1751
  userId: z38.string().nullable(),
1545
1752
  sipServerUrl: z38.string(),
1546
1753
  sipUserName: z38.string(),
@@ -1548,9 +1755,18 @@ var CreateExtensionSchema = z38.object({
1548
1755
  extensionName: z38.string().nullable(),
1549
1756
  telephonySignature: z38.string().nullable()
1550
1757
  });
1551
- var UpdateExtensionSchema = CreateExtensionSchema.extend({
1552
- id: z38.string()
1758
+
1759
+ // src/extension/validation.ts
1760
+ import { z as z39 } from "zod";
1761
+ var CreateExtensionSchema = z39.object({
1762
+ userId: z39.string().nullable(),
1763
+ sipServerUrl: z39.string(),
1764
+ sipUserName: z39.string(),
1765
+ extensionId: z39.coerce.number().nullable(),
1766
+ extensionName: z39.string().nullable(),
1767
+ telephonySignature: z39.string().nullable()
1553
1768
  });
1769
+ var UpdateExtensionSchema = CreateExtensionSchema;
1554
1770
 
1555
1771
  // src/extension/index.ts
1556
1772
  var extensionContract = initContract14().router(
@@ -1564,8 +1780,8 @@ var extensionContract = initContract14().router(
1564
1780
  201: DefaultSuccessResponseSchema.extend({
1565
1781
  extension: ExtensionSchema
1566
1782
  }),
1567
- 400: z39.object({
1568
- message: z39.string()
1783
+ 400: z40.object({
1784
+ message: z40.string()
1569
1785
  }),
1570
1786
  401: DefaultUnauthorizedSchema,
1571
1787
  500: DefaultErrorResponseSchema
@@ -1575,16 +1791,16 @@ var extensionContract = initContract14().router(
1575
1791
  getExtensions: {
1576
1792
  method: "GET",
1577
1793
  path: "",
1578
- query: z39.object({
1579
- page: z39.coerce.number().default(1),
1580
- pageSize: z39.coerce.number().default(10),
1581
- keyword: z39.string().optional()
1794
+ query: z40.object({
1795
+ page: z40.coerce.number().default(1),
1796
+ pageSize: z40.coerce.number().default(10),
1797
+ keyword: z40.string().optional()
1582
1798
  }).optional(),
1583
1799
  headers: DefaultHeaderSchema,
1584
1800
  responses: {
1585
1801
  200: WithPagination(ExtensionSchema),
1586
- 400: z39.object({
1587
- message: z39.string()
1802
+ 400: z40.object({
1803
+ message: z40.string()
1588
1804
  }),
1589
1805
  401: DefaultUnauthorizedSchema,
1590
1806
  500: DefaultErrorResponseSchema
@@ -1593,13 +1809,13 @@ var extensionContract = initContract14().router(
1593
1809
  },
1594
1810
  getExtensionByUserId: {
1595
1811
  method: "GET",
1596
- path: "",
1597
- pathParams: z39.object({ userId: z39.string() }),
1812
+ path: "/user/:userId",
1813
+ pathParams: z40.object({ userId: z40.string() }),
1598
1814
  headers: DefaultHeaderSchema,
1599
1815
  responses: {
1600
1816
  200: ExtensionSchema,
1601
- 400: z39.object({
1602
- message: z39.string()
1817
+ 400: z40.object({
1818
+ message: z40.string()
1603
1819
  }),
1604
1820
  401: DefaultUnauthorizedSchema,
1605
1821
  500: DefaultErrorResponseSchema
@@ -1609,17 +1825,17 @@ var extensionContract = initContract14().router(
1609
1825
  getExtensionByDialpad: {
1610
1826
  method: "GET",
1611
1827
  path: "/dialpad",
1612
- query: z39.object({
1613
- page: z39.coerce.number().default(1),
1614
- pageSize: z39.coerce.number().default(10),
1615
- keyword: z39.string().optional()
1828
+ query: z40.object({
1829
+ page: z40.coerce.number().default(1),
1830
+ pageSize: z40.coerce.number().default(10),
1831
+ keyword: z40.string().optional()
1616
1832
  }).optional(),
1617
1833
  headers: DefaultHeaderSchema,
1618
1834
  responses: {
1619
1835
  200: WithPagination(ExtensionSchema),
1620
1836
  500: DefaultErrorResponseSchema,
1621
- 400: z39.object({
1622
- message: z39.string()
1837
+ 400: z40.object({
1838
+ message: z40.string()
1623
1839
  }),
1624
1840
  401: DefaultUnauthorizedSchema
1625
1841
  },
@@ -1628,7 +1844,7 @@ var extensionContract = initContract14().router(
1628
1844
  updateExtension: {
1629
1845
  method: "PATCH",
1630
1846
  path: "/:id",
1631
- pathParams: z39.object({ id: z39.string() }),
1847
+ pathParams: z40.object({ id: z40.string() }),
1632
1848
  headers: DefaultHeaderSchema,
1633
1849
  body: UpdateExtensionSchema,
1634
1850
  responses: {
@@ -1642,11 +1858,11 @@ var extensionContract = initContract14().router(
1642
1858
  deleteExtension: {
1643
1859
  method: "DELETE",
1644
1860
  path: "/:id",
1645
- pathParams: z39.object({ id: z39.string() }),
1861
+ pathParams: z40.object({ id: z40.string() }),
1646
1862
  headers: DefaultHeaderSchema,
1647
1863
  body: null,
1648
1864
  responses: {
1649
- 200: DefaultSuccessResponseSchema.extend({ message: z39.string() }),
1865
+ 200: DefaultSuccessResponseSchema.extend({ message: z40.string() }),
1650
1866
  500: DefaultErrorResponseSchema
1651
1867
  },
1652
1868
  summary: "Delete a extension."
@@ -1657,7 +1873,7 @@ var extensionContract = initContract14().router(
1657
1873
 
1658
1874
  // src/permission/index.ts
1659
1875
  import { initContract as initContract15 } from "@ts-rest/core";
1660
- import z40 from "zod";
1876
+ import z41 from "zod";
1661
1877
  var permissionContract = initContract15().router(
1662
1878
  {
1663
1879
  getPermissions: {
@@ -1665,9 +1881,9 @@ var permissionContract = initContract15().router(
1665
1881
  path: "",
1666
1882
  headers: DefaultHeaderSchema,
1667
1883
  responses: {
1668
- 200: z40.object({ permissions: PermissionSchema.array() }),
1669
- 400: z40.object({
1670
- message: z40.string()
1884
+ 200: z41.object({ permissions: PermissionSchema.array() }),
1885
+ 400: z41.object({
1886
+ message: z41.string()
1671
1887
  }),
1672
1888
  401: DefaultUnauthorizedSchema,
1673
1889
  500: DefaultErrorResponseSchema
@@ -1680,19 +1896,17 @@ var permissionContract = initContract15().router(
1680
1896
 
1681
1897
  // src/role/index.ts
1682
1898
  import { initContract as initContract16 } from "@ts-rest/core";
1683
- import z42 from "zod";
1899
+ import z43 from "zod";
1684
1900
 
1685
1901
  // src/role/validation.ts
1686
- import { z as z41 } from "zod";
1687
- var CreateRoleSchema = z41.object({
1688
- systemName: z41.string(),
1689
- displayName: z41.string(),
1690
- description: z41.string().nullable(),
1691
- permissions: z41.array(z41.string())
1692
- });
1693
- var UpdateRoleSchema = CreateRoleSchema.extend({
1694
- id: z41.string()
1902
+ import { z as z42 } from "zod";
1903
+ var CreateRoleSchema = z42.object({
1904
+ systemName: z42.string(),
1905
+ displayName: z42.string(),
1906
+ description: z42.string().nullable(),
1907
+ permissions: z42.array(z42.string())
1695
1908
  });
1909
+ var UpdateRoleSchema = CreateRoleSchema;
1696
1910
 
1697
1911
  // src/role/index.ts
1698
1912
  var roleContract = initContract16().router(
@@ -1706,8 +1920,8 @@ var roleContract = initContract16().router(
1706
1920
  201: DefaultSuccessResponseSchema.extend({
1707
1921
  role: RoleSchema
1708
1922
  }),
1709
- 400: z42.object({
1710
- message: z42.string()
1923
+ 400: z43.object({
1924
+ message: z43.string()
1711
1925
  }),
1712
1926
  401: DefaultUnauthorizedSchema,
1713
1927
  500: DefaultErrorResponseSchema
@@ -1717,15 +1931,15 @@ var roleContract = initContract16().router(
1717
1931
  getRoles: {
1718
1932
  method: "GET",
1719
1933
  path: "",
1720
- query: z42.object({
1721
- page: z42.coerce.number().default(1),
1722
- pageSize: z42.coerce.number().default(10)
1934
+ query: z43.object({
1935
+ page: z43.coerce.number().default(1),
1936
+ pageSize: z43.coerce.number().default(10)
1723
1937
  }).optional(),
1724
1938
  headers: DefaultHeaderSchema,
1725
1939
  responses: {
1726
1940
  200: WithPagination(RoleSchema),
1727
- 400: z42.object({
1728
- message: z42.string()
1941
+ 400: z43.object({
1942
+ message: z43.string()
1729
1943
  }),
1730
1944
  401: DefaultUnauthorizedSchema,
1731
1945
  500: DefaultErrorResponseSchema
@@ -1735,15 +1949,15 @@ var roleContract = initContract16().router(
1735
1949
  updateRole: {
1736
1950
  method: "PATCH",
1737
1951
  path: "/:id",
1738
- pathParams: z42.object({ id: z42.string() }),
1952
+ pathParams: z43.object({ id: z43.string() }),
1739
1953
  headers: DefaultHeaderSchema,
1740
1954
  body: UpdateRoleSchema,
1741
1955
  responses: {
1742
1956
  201: DefaultSuccessResponseSchema.extend({
1743
1957
  role: RoleSchema
1744
1958
  }),
1745
- 400: z42.object({
1746
- message: z42.string()
1959
+ 400: z43.object({
1960
+ message: z43.string()
1747
1961
  }),
1748
1962
  401: DefaultUnauthorizedSchema,
1749
1963
  500: DefaultErrorResponseSchema
@@ -1753,11 +1967,11 @@ var roleContract = initContract16().router(
1753
1967
  deleteRole: {
1754
1968
  method: "DELETE",
1755
1969
  path: "/:id",
1756
- pathParams: z42.object({ id: z42.string() }),
1970
+ pathParams: z43.object({ id: z43.string() }),
1757
1971
  headers: DefaultHeaderSchema,
1758
1972
  body: null,
1759
1973
  responses: {
1760
- 200: DefaultSuccessResponseSchema.extend({ message: z42.string() }),
1974
+ 200: DefaultSuccessResponseSchema.extend({ message: z43.string() }),
1761
1975
  500: DefaultErrorResponseSchema
1762
1976
  },
1763
1977
  summary: "Delete a role."
@@ -1768,22 +1982,21 @@ var roleContract = initContract16().router(
1768
1982
 
1769
1983
  // src/user/index.ts
1770
1984
  import { initContract as initContract17 } from "@ts-rest/core";
1771
- import z44 from "zod";
1985
+ import z45 from "zod";
1772
1986
 
1773
1987
  // src/user/validation.ts
1774
- import { z as z43 } from "zod";
1775
- var CreateUserSchema = z43.object({
1776
- name: z43.string(),
1777
- email: z43.string().email(),
1778
- address: z43.string().nullable(),
1779
- phone: z43.string().nullable(),
1780
- password: z43.string(),
1781
- notificationCount: z43.number().nullable().optional(),
1782
- roles: z43.array(z43.string())
1988
+ import { z as z44 } from "zod";
1989
+ var CreateUserSchema = z44.object({
1990
+ name: z44.string(),
1991
+ email: z44.string().email(),
1992
+ address: z44.string().nullable(),
1993
+ phone: z44.string().nullable(),
1994
+ password: z44.string(),
1995
+ notificationCount: z44.number().nullable().optional(),
1996
+ roles: z44.array(z44.string())
1783
1997
  });
1784
1998
  var UpdateUserSchema = CreateUserSchema.extend({
1785
- id: z43.string(),
1786
- newPassword: z43.string()
1999
+ newPassword: z44.string()
1787
2000
  });
1788
2001
 
1789
2002
  // src/user/index.ts
@@ -1798,8 +2011,8 @@ var userContract = initContract17().router(
1798
2011
  201: DefaultSuccessResponseSchema.extend({
1799
2012
  user: UserSchema
1800
2013
  }),
1801
- 400: z44.object({
1802
- message: z44.string()
2014
+ 400: z45.object({
2015
+ message: z45.string()
1803
2016
  }),
1804
2017
  401: DefaultUnauthorizedSchema
1805
2018
  },
@@ -1809,15 +2022,15 @@ var userContract = initContract17().router(
1809
2022
  method: "GET",
1810
2023
  path: "",
1811
2024
  headers: DefaultHeaderSchema,
1812
- query: z44.object({
1813
- page: z44.coerce.number().default(1),
1814
- pageSize: z44.coerce.number().default(10),
1815
- keyword: z44.string().optional()
2025
+ query: z45.object({
2026
+ page: z45.coerce.number().default(1),
2027
+ pageSize: z45.coerce.number().default(10),
2028
+ keyword: z45.string().optional()
1816
2029
  }).optional(),
1817
2030
  responses: {
1818
2031
  200: WithPagination(UserSchema),
1819
- 400: z44.object({
1820
- message: z44.string()
2032
+ 400: z45.object({
2033
+ message: z45.string()
1821
2034
  }),
1822
2035
  401: DefaultUnauthorizedSchema,
1823
2036
  500: DefaultErrorResponseSchema
@@ -1827,12 +2040,12 @@ var userContract = initContract17().router(
1827
2040
  getUserById: {
1828
2041
  method: "GET",
1829
2042
  path: "/:id",
1830
- pathParams: z44.object({ id: z44.string() }),
2043
+ pathParams: z45.object({ id: z45.string() }),
1831
2044
  headers: DefaultHeaderSchema,
1832
2045
  responses: {
1833
2046
  200: UserSchema,
1834
- 400: z44.object({
1835
- message: z44.string()
2047
+ 400: z45.object({
2048
+ message: z45.string()
1836
2049
  }),
1837
2050
  401: DefaultUnauthorizedSchema
1838
2051
  },
@@ -1841,15 +2054,15 @@ var userContract = initContract17().router(
1841
2054
  updateUser: {
1842
2055
  method: "PATCH",
1843
2056
  path: "/:id",
1844
- pathParams: z44.object({ id: z44.string() }),
2057
+ pathParams: z45.object({ id: z45.string() }),
1845
2058
  headers: DefaultHeaderSchema,
1846
2059
  body: UpdateUserSchema,
1847
2060
  responses: {
1848
2061
  201: DefaultSuccessResponseSchema.extend({
1849
2062
  role: UserSchema
1850
2063
  }),
1851
- 400: z44.object({
1852
- message: z44.string()
2064
+ 400: z45.object({
2065
+ message: z45.string()
1853
2066
  }),
1854
2067
  401: DefaultUnauthorizedSchema
1855
2068
  },
@@ -1858,11 +2071,11 @@ var userContract = initContract17().router(
1858
2071
  deleteUser: {
1859
2072
  method: "DELETE",
1860
2073
  path: "/:id",
1861
- pathParams: z44.object({ id: z44.string() }),
2074
+ pathParams: z45.object({ id: z45.string() }),
1862
2075
  headers: DefaultHeaderSchema,
1863
2076
  body: null,
1864
2077
  responses: {
1865
- 200: DefaultSuccessResponseSchema.extend({ message: z44.string() }),
2078
+ 200: DefaultSuccessResponseSchema.extend({ message: z45.string() }),
1866
2079
  500: DefaultErrorResponseSchema
1867
2080
  },
1868
2081
  summary: "Delete a user."
@@ -1873,41 +2086,39 @@ var userContract = initContract17().router(
1873
2086
 
1874
2087
  // src/widget/index.ts
1875
2088
  import { initContract as initContract18 } from "@ts-rest/core";
1876
- import z47 from "zod";
2089
+ import z48 from "zod";
1877
2090
 
1878
2091
  // src/widget/schema.ts
1879
- import z45 from "zod";
1880
- var FieldsSchema = z45.object({ data: z45.array(z45.string()) });
1881
- var WidgetPositionSchema = z45.union([
1882
- z45.literal("menu"),
1883
- z45.literal("ticket_detail"),
1884
- z45.literal("contact_detail")
2092
+ import z46 from "zod";
2093
+ var FieldsSchema = z46.object({ data: z46.array(z46.string()) });
2094
+ var WidgetPositionSchema = z46.union([
2095
+ z46.literal("menu"),
2096
+ z46.literal("ticket_detail"),
2097
+ z46.literal("contact_detail")
1885
2098
  ]);
1886
2099
  var WidgetSchema = DefaultEntitySchema.extend({
1887
- name: z45.string(),
1888
- description: z45.string().nullable(),
2100
+ name: z46.string(),
2101
+ description: z46.string().nullable(),
1889
2102
  position: WidgetPositionSchema.nullable(),
1890
2103
  fields: FieldsSchema,
1891
- url: z45.string().nullable()
2104
+ url: z46.string().nullable()
1892
2105
  });
1893
2106
 
1894
2107
  // src/widget/validation.ts
1895
- import z46 from "zod";
1896
- var CreateWidgetSchema = z46.object({
1897
- name: z46.string(),
1898
- description: z46.string(),
1899
- url: z46.string(),
2108
+ import z47 from "zod";
2109
+ var CreateWidgetSchema = z47.object({
2110
+ name: z47.string(),
2111
+ description: z47.string(),
2112
+ url: z47.string(),
1900
2113
  position: WidgetPositionSchema,
1901
- fields: z46.object({
2114
+ fields: z47.object({
1902
2115
  data: (
1903
2116
  // Array of attribute system names
1904
- z46.array(z46.string())
2117
+ z47.array(z47.string())
1905
2118
  )
1906
2119
  }).optional()
1907
2120
  });
1908
- var UpdateWidgetSchema = CreateWidgetSchema.extend({
1909
- id: z46.string()
1910
- });
2121
+ var UpdateWidgetSchema = CreateWidgetSchema;
1911
2122
 
1912
2123
  // src/widget/index.ts
1913
2124
  var widgetContract = initContract18().router(
@@ -1921,8 +2132,8 @@ var widgetContract = initContract18().router(
1921
2132
  201: DefaultSuccessResponseSchema.extend({
1922
2133
  widget: WidgetSchema
1923
2134
  }),
1924
- 400: z47.object({
1925
- message: z47.string()
2135
+ 400: z48.object({
2136
+ message: z48.string()
1926
2137
  }),
1927
2138
  401: DefaultUnauthorizedSchema,
1928
2139
  500: DefaultErrorResponseSchema
@@ -1932,17 +2143,17 @@ var widgetContract = initContract18().router(
1932
2143
  getWidgets: {
1933
2144
  method: "GET",
1934
2145
  path: "",
1935
- query: z47.object({
1936
- page: z47.coerce.number().default(1),
1937
- pageSize: z47.coerce.number().default(10),
1938
- keyword: z47.coerce.string().optional()
2146
+ query: z48.object({
2147
+ page: z48.coerce.number().default(1),
2148
+ pageSize: z48.coerce.number().default(10),
2149
+ keyword: z48.coerce.string().optional()
1939
2150
  }).optional(),
1940
2151
  headers: DefaultHeaderSchema,
1941
2152
  responses: {
1942
2153
  200: WithPagination(WidgetSchema),
1943
2154
  500: DefaultErrorResponseSchema,
1944
- 400: z47.object({
1945
- message: z47.string()
2155
+ 400: z48.object({
2156
+ message: z48.string()
1946
2157
  }),
1947
2158
  401: DefaultUnauthorizedSchema
1948
2159
  },
@@ -1953,9 +2164,9 @@ var widgetContract = initContract18().router(
1953
2164
  path: "/menu",
1954
2165
  headers: DefaultHeaderSchema,
1955
2166
  responses: {
1956
- 200: z47.array(WidgetSchema),
1957
- 400: z47.object({
1958
- message: z47.string()
2167
+ 200: z48.array(WidgetSchema),
2168
+ 400: z48.object({
2169
+ message: z48.string()
1959
2170
  }),
1960
2171
  401: DefaultUnauthorizedSchema,
1961
2172
  500: DefaultErrorResponseSchema
@@ -1967,9 +2178,9 @@ var widgetContract = initContract18().router(
1967
2178
  path: "/ticket_detail",
1968
2179
  headers: DefaultHeaderSchema,
1969
2180
  responses: {
1970
- 200: z47.array(WidgetSchema),
1971
- 400: z47.object({
1972
- message: z47.string()
2181
+ 200: z48.array(WidgetSchema),
2182
+ 400: z48.object({
2183
+ message: z48.string()
1973
2184
  }),
1974
2185
  401: DefaultUnauthorizedSchema,
1975
2186
  500: DefaultErrorResponseSchema
@@ -1981,9 +2192,9 @@ var widgetContract = initContract18().router(
1981
2192
  path: "/contact_detail",
1982
2193
  headers: DefaultHeaderSchema,
1983
2194
  responses: {
1984
- 200: z47.array(WidgetSchema),
1985
- 400: z47.object({
1986
- message: z47.string()
2195
+ 200: z48.array(WidgetSchema),
2196
+ 400: z48.object({
2197
+ message: z48.string()
1987
2198
  }),
1988
2199
  401: DefaultUnauthorizedSchema,
1989
2200
  500: DefaultErrorResponseSchema
@@ -1993,12 +2204,12 @@ var widgetContract = initContract18().router(
1993
2204
  getWidgetById: {
1994
2205
  method: "GET",
1995
2206
  path: "/:id",
1996
- pathParams: z47.object({ id: z47.string() }),
2207
+ pathParams: z48.object({ id: z48.string() }),
1997
2208
  headers: DefaultHeaderSchema,
1998
2209
  responses: {
1999
2210
  200: WidgetSchema,
2000
- 400: z47.object({
2001
- message: z47.string()
2211
+ 400: z48.object({
2212
+ message: z48.string()
2002
2213
  }),
2003
2214
  401: DefaultUnauthorizedSchema,
2004
2215
  500: DefaultErrorResponseSchema
@@ -2032,14 +2243,14 @@ var widgetContract = initContract18().router(
2032
2243
  updateWidget: {
2033
2244
  method: "PATCH",
2034
2245
  path: "/:id",
2035
- pathParams: z47.object({ id: z47.string() }),
2246
+ pathParams: z48.object({ id: z48.string() }),
2036
2247
  headers: DefaultHeaderSchema,
2037
2248
  responses: {
2038
2249
  201: DefaultSuccessResponseSchema.extend({
2039
2250
  widget: WidgetSchema
2040
2251
  }),
2041
- 400: z47.object({
2042
- message: z47.string()
2252
+ 400: z48.object({
2253
+ message: z48.string()
2043
2254
  }),
2044
2255
  401: DefaultUnauthorizedSchema
2045
2256
  },
@@ -2049,11 +2260,11 @@ var widgetContract = initContract18().router(
2049
2260
  deleteWidget: {
2050
2261
  method: "DELETE",
2051
2262
  path: "/:id",
2052
- pathParams: z47.object({ id: z47.string() }),
2263
+ pathParams: z48.object({ id: z48.string() }),
2053
2264
  headers: DefaultHeaderSchema,
2054
2265
  body: null,
2055
2266
  responses: {
2056
- 200: DefaultSuccessResponseSchema.extend({ message: z47.string() }),
2267
+ 200: DefaultSuccessResponseSchema.extend({ message: z48.string() }),
2057
2268
  500: DefaultErrorResponseSchema
2058
2269
  },
2059
2270
  summary: "Delete a widget."
@@ -2062,21 +2273,129 @@ var widgetContract = initContract18().router(
2062
2273
  { pathPrefix: "widget" }
2063
2274
  );
2064
2275
 
2065
- // src/telephony-extension/index.ts
2276
+ // src/wrap-up-form/index.ts
2066
2277
  import { initContract as initContract19 } from "@ts-rest/core";
2278
+ import z51 from "zod";
2279
+
2280
+ // src/wrap-up-form/schema.ts
2067
2281
  import z49 from "zod";
2282
+ var WrapUpFormSchema = DefaultEntitySchema.extend({
2283
+ note: z49.string().nullable(),
2284
+ disposition: z49.string().nullable(),
2285
+ callFrom: z49.string().nullable(),
2286
+ callTo: z49.string().nullable(),
2287
+ tags: z49.array(TagSchema)
2288
+ });
2289
+
2290
+ // src/wrap-up-form/validation.ts
2291
+ import { z as z50 } from "zod";
2292
+ var CreateWrapUpFormSchema = z50.object({
2293
+ note: z50.string().nullable().optional(),
2294
+ disposition: z50.string().nullable().optional(),
2295
+ callFrom: z50.string().nullable().optional(),
2296
+ callTo: z50.string().nullable().optional()
2297
+ });
2298
+ var UpdateWrapUpFormSchema = CreateWrapUpFormSchema.extend({
2299
+ tags: z50.array(z50.string())
2300
+ });
2301
+
2302
+ // src/wrap-up-form/index.ts
2303
+ var wrapUpFormContract = initContract19().router(
2304
+ {
2305
+ createWrapUpForm: {
2306
+ method: "POST",
2307
+ path: "",
2308
+ headers: DefaultHeaderSchema,
2309
+ body: CreateWrapUpFormSchema,
2310
+ responses: {
2311
+ 201: DefaultSuccessResponseSchema.extend({
2312
+ wrapUpForm: WrapUpFormSchema
2313
+ }),
2314
+ 400: z51.object({
2315
+ message: z51.string()
2316
+ }),
2317
+ 401: DefaultUnauthorizedSchema,
2318
+ 500: DefaultErrorResponseSchema
2319
+ },
2320
+ summary: "Create a wrap up form."
2321
+ },
2322
+ getWrapUpForms: {
2323
+ method: "GET",
2324
+ path: "",
2325
+ query: z51.object({
2326
+ page: z51.coerce.number().default(1),
2327
+ pageSize: z51.coerce.number().default(10)
2328
+ }).optional(),
2329
+ headers: DefaultHeaderSchema,
2330
+ responses: {
2331
+ 200: WithPagination(WrapUpFormSchema),
2332
+ 400: z51.object({
2333
+ message: z51.string()
2334
+ }),
2335
+ 401: DefaultUnauthorizedSchema,
2336
+ 500: DefaultErrorResponseSchema
2337
+ },
2338
+ summary: "Get all wrap up form"
2339
+ },
2340
+ updateWrapUpForm: {
2341
+ method: "PATCH",
2342
+ path: "/:id",
2343
+ pathParams: z51.object({ id: z51.string() }),
2344
+ headers: DefaultHeaderSchema,
2345
+ body: UpdateWrapUpFormSchema,
2346
+ responses: {
2347
+ 201: DefaultSuccessResponseSchema.extend({
2348
+ wrapUpForm: WrapUpFormSchema
2349
+ }),
2350
+ 400: z51.object({
2351
+ message: z51.string()
2352
+ }),
2353
+ 401: DefaultUnauthorizedSchema,
2354
+ 500: DefaultErrorResponseSchema
2355
+ },
2356
+ summary: "Update a wrap up form."
2357
+ }
2358
+ },
2359
+ { pathPrefix: "wrap-up-form" }
2360
+ );
2361
+
2362
+ // src/telephony-extension/index.ts
2363
+ import { initContract as initContract20 } from "@ts-rest/core";
2364
+ import z53 from "zod";
2068
2365
 
2069
2366
  // src/telephony-extension/schema.ts
2070
- import z48 from "zod";
2071
- var TelephonyExtensionSchema = z48.object({
2072
- errcode: z48.coerce.number(),
2073
- errmsg: z48.string(),
2074
- total_number: z48.coerce.number(),
2075
- data: z48.array(z48.object({}))
2367
+ import z52 from "zod";
2368
+ var TelephonyExtensionSchema = z52.object({
2369
+ errcode: z52.coerce.number(),
2370
+ errmsg: z52.string(),
2371
+ total_number: z52.coerce.number(),
2372
+ data: z52.array(
2373
+ z52.object({
2374
+ id: z52.coerce.number(),
2375
+ online_status: z52.object({
2376
+ fx_phone: z52.object({ status: z52.coerce.number() }),
2377
+ sip_phone: z52.object({
2378
+ status: z52.coerce.number(),
2379
+ ext_dev_type: z52.string().optional()
2380
+ }),
2381
+ linkus_desktop: z52.object({ status: z52.coerce.number() }),
2382
+ linkus_mobile: z52.object({ status: z52.coerce.number() }),
2383
+ linkus_web: z52.object({
2384
+ status: z52.coerce.number(),
2385
+ ext_dev_type: z52.string().optional()
2386
+ })
2387
+ }).optional(),
2388
+ presence_status: z52.string().optional(),
2389
+ number: z52.string().optional(),
2390
+ call_id_name: z52.string().optional(),
2391
+ role_name: z52.string().optional(),
2392
+ email_addr: z52.string().optional()
2393
+ })
2394
+ )
2076
2395
  });
2077
2396
 
2078
2397
  // src/telephony-extension/index.ts
2079
- var telephonyExtensionContract = initContract19().router(
2398
+ var telephonyExtensionContract = initContract20().router(
2080
2399
  {
2081
2400
  getTelephonyExtensions: {
2082
2401
  method: "GET",
@@ -2085,8 +2404,8 @@ var telephonyExtensionContract = initContract19().router(
2085
2404
  query: null,
2086
2405
  responses: {
2087
2406
  200: TelephonyExtensionSchema,
2088
- 400: z49.object({
2089
- message: z49.string()
2407
+ 400: z53.object({
2408
+ message: z53.string()
2090
2409
  }),
2091
2410
  401: DefaultUnauthorizedSchema,
2092
2411
  500: DefaultErrorResponseSchema
@@ -2097,24 +2416,90 @@ var telephonyExtensionContract = initContract19().router(
2097
2416
  { pathPrefix: "telephony" }
2098
2417
  );
2099
2418
 
2419
+ // src/aws/index.ts
2420
+ import { initContract as initContract21 } from "@ts-rest/core";
2421
+
2422
+ // src/aws/validation.ts
2423
+ import z54 from "zod";
2424
+ var AwsContractsValidationSchema = {
2425
+ generatePresignedUrl: {
2426
+ input: z54.object({
2427
+ fileName: z54.string(),
2428
+ fileType: z54.string(),
2429
+ moduleName: z54.string()
2430
+ }),
2431
+ output: z54.object({
2432
+ fileName: z54.string(),
2433
+ fileKey: z54.string(),
2434
+ bucketName: z54.string(),
2435
+ url: z54.string(),
2436
+ cfUrl: z54.string().nullable()
2437
+ })
2438
+ },
2439
+ generateSignedUrl: {
2440
+ input: z54.object({
2441
+ fileKey: z54.string()
2442
+ }),
2443
+ output: z54.object({
2444
+ url: z54.string()
2445
+ })
2446
+ }
2447
+ };
2448
+
2449
+ // src/aws/index.ts
2450
+ var awsContract = initContract21().router(
2451
+ {
2452
+ generatePresignedUrl: {
2453
+ method: "POST",
2454
+ path: "/presigned-url",
2455
+ responses: {
2456
+ 200: DefaultSuccessResponseSchema.extend({
2457
+ data: AwsContractsValidationSchema.generatePresignedUrl.output
2458
+ }),
2459
+ ...DefaultResponses,
2460
+ 500: DefaultErrorResponseSchema
2461
+ },
2462
+ body: AwsContractsValidationSchema.generatePresignedUrl.input,
2463
+ summary: "Generate a presigned url"
2464
+ },
2465
+ generateSignedUrl: {
2466
+ method: "POST",
2467
+ path: "/signed-url",
2468
+ responses: {
2469
+ 200: DefaultSuccessResponseSchema.extend({
2470
+ data: AwsContractsValidationSchema.generateSignedUrl.output
2471
+ }),
2472
+ ...DefaultResponses,
2473
+ 500: DefaultErrorResponseSchema
2474
+ },
2475
+ body: AwsContractsValidationSchema.generateSignedUrl.input,
2476
+ summary: "Generate a signed url using file key"
2477
+ }
2478
+ },
2479
+ {
2480
+ pathPrefix: "aws/s3"
2481
+ }
2482
+ );
2483
+
2100
2484
  // src/contract.ts
2101
- var apiContract = initContract20().router({
2485
+ var apiContract = initContract22().router({
2102
2486
  auth: authContract,
2103
2487
  mail: mailContract,
2104
- mailRoom: mailContract,
2105
2488
  cxLog: cxLogContract,
2106
2489
  permission: permissionContract,
2107
2490
  role: roleContract,
2108
2491
  user: userContract,
2109
2492
  extension: extensionContract,
2110
2493
  widget: widgetContract,
2494
+ wrapUpForm: wrapUpFormContract,
2111
2495
  emailEngineWebhooks: emailEngineWebhooksEventsContract,
2112
2496
  category: categoryContract,
2113
2497
  telephonyExtensionContract,
2114
2498
  line: lineContract,
2115
2499
  attribute: attributeContract,
2116
2500
  tag: tagContract,
2117
- chat: chatContract
2501
+ chat: chatContract,
2502
+ aws: awsContract
2118
2503
  });
2119
2504
  export {
2120
2505
  apiContract,