@kl1/contracts 1.0.15 → 1.0.17

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 (39) hide show
  1. package/dist/index.js +1551 -851
  2. package/dist/index.js.map +1 -1
  3. package/dist/index.mjs +1551 -851
  4. package/dist/index.mjs.map +1 -1
  5. package/dist/src/app/index.d.ts +17 -0
  6. package/dist/src/app/index.d.ts.map +1 -0
  7. package/dist/src/call-log/schema.d.ts +2 -2
  8. package/dist/src/chat/index.d.ts +1437 -3140
  9. package/dist/src/chat/index.d.ts.map +1 -1
  10. package/dist/src/chat/schema.d.ts +256 -47
  11. package/dist/src/chat/schema.d.ts.map +1 -1
  12. package/dist/src/chat/validation.d.ts +5327 -92
  13. package/dist/src/chat/validation.d.ts.map +1 -1
  14. package/dist/src/contact/index.d.ts +4079 -581
  15. package/dist/src/contact/index.d.ts.map +1 -1
  16. package/dist/src/contact/validation.d.ts +3148 -0
  17. package/dist/src/contact/validation.d.ts.map +1 -1
  18. package/dist/src/contract.d.ts +25332 -13715
  19. package/dist/src/contract.d.ts.map +1 -1
  20. package/dist/src/cx-log/index.d.ts +8 -8
  21. package/dist/src/cx-log/schema.d.ts +4 -4
  22. package/dist/src/mail/mail-contract.d.ts +1316 -1316
  23. package/dist/src/mail/mail-server.d.ts +216 -0
  24. package/dist/src/mail/mail-server.d.ts.map +1 -0
  25. package/dist/src/mail/message-contract.d.ts +56 -56
  26. package/dist/src/mail/room-contract.d.ts +1254 -1254
  27. package/dist/src/mail/schemas/message.schema.d.ts +33 -33
  28. package/dist/src/mail/schemas/room-validation.schema.d.ts +408 -408
  29. package/dist/src/mail/schemas/room.schema.d.ts +270 -270
  30. package/dist/src/messenger/index.d.ts +5232 -54
  31. package/dist/src/messenger/index.d.ts.map +1 -1
  32. package/dist/src/platform-contact/schema.d.ts +2 -2
  33. package/dist/src/ticket/index.d.ts +4662 -0
  34. package/dist/src/ticket/index.d.ts.map +1 -0
  35. package/dist/src/ticket/schema.d.ts +677 -5
  36. package/dist/src/ticket/schema.d.ts.map +1 -1
  37. package/dist/src/ticket/validation.d.ts +637 -0
  38. package/dist/src/ticket/validation.d.ts.map +1 -0
  39. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -41,7 +41,7 @@ __export(src_exports, {
41
41
  module.exports = __toCommonJS(src_exports);
42
42
 
43
43
  // src/contract.ts
44
- var import_core27 = require("@ts-rest/core");
44
+ var import_core28 = require("@ts-rest/core");
45
45
 
46
46
  // src/attribute/index.ts
47
47
  var import_core = require("@ts-rest/core");
@@ -696,7 +696,7 @@ var channelContract = (0, import_core5.initContract)().router(
696
696
 
697
697
  // src/chat/index.ts
698
698
  var import_core6 = require("@ts-rest/core");
699
- var import_zod24 = __toESM(require("zod"));
699
+ var import_zod25 = __toESM(require("zod"));
700
700
 
701
701
  // src/contact/schema.ts
702
702
  var import_zod20 = __toESM(require("zod"));
@@ -809,18 +809,38 @@ var ContactSchema = import_zod20.default.object({
809
809
  });
810
810
 
811
811
  // src/chat/schema.ts
812
+ var import_zod22 = __toESM(require("zod"));
813
+
814
+ // src/cx-log/schema.ts
812
815
  var import_zod21 = __toESM(require("zod"));
813
- var MessageDirectionTypeSchema = import_zod21.default.enum([
816
+ var CxLogSchema = DefaultEntitySchema.extend({
817
+ caseId: import_zod21.default.number(),
818
+ entityId: import_zod21.default.string().uuid(),
819
+ entityName: import_zod21.default.string(),
820
+ contactId: import_zod21.default.string().uuid().nullable(),
821
+ channel: import_zod21.default.string().nullable(),
822
+ queueId: import_zod21.default.string().uuid().nullable(),
823
+ agentId: import_zod21.default.string().uuid().nullable(),
824
+ direction: import_zod21.default.string().nullable(),
825
+ startedDate: import_zod21.default.date().nullable(),
826
+ handledTime: import_zod21.default.number().nullable(),
827
+ firstResponseTime: import_zod21.default.number().nullable(),
828
+ disposition: import_zod21.default.string().nullable()
829
+ });
830
+
831
+ // src/chat/schema.ts
832
+ var MessageDirectionTypeSchema = import_zod22.default.enum([
814
833
  "incoming",
815
834
  "outgoing",
816
835
  "system"
817
836
  ]);
818
- var MessageTypeSchema = import_zod21.default.enum([
837
+ var MessageTypeSchema = import_zod22.default.enum([
819
838
  "text",
820
839
  "image",
821
840
  "video",
822
841
  "audio",
823
842
  "file",
843
+ "imagemap",
824
844
  "fallback",
825
845
  "location",
826
846
  "attachment",
@@ -834,136 +854,138 @@ var MessageTypeSchema = import_zod21.default.enum([
834
854
  "updated",
835
855
  "started"
836
856
  ]);
837
- var MessageLocaleTypeSchema = import_zod21.default.enum([
838
- "mm",
839
- "en",
840
- "th"
841
- ]);
842
- var PlatformContactMetadataSchema = import_zod21.default.object({
843
- id: import_zod21.default.string(),
844
- name: import_zod21.default.string(),
845
- picture: import_zod21.default.string(),
846
- additionalCredentials: import_zod21.default.any()
857
+ var MessageLocaleTypeSchema = import_zod22.default.enum(["mm", "en", "th"]);
858
+ var PlatformContactMetadataSchema = import_zod22.default.object({
859
+ id: import_zod22.default.string(),
860
+ name: import_zod22.default.string(),
861
+ picture: import_zod22.default.string(),
862
+ additionalCredentials: import_zod22.default.any()
847
863
  });
848
864
  var PlatformContactSchema = DefaultEntitySchema.extend({
849
- channelId: import_zod21.default.string().uuid(),
850
- socialPlatformId: import_zod21.default.string().uuid(),
851
- platform: ChannelTypeSchema,
865
+ channelId: import_zod22.default.string().uuid(),
866
+ socialPlatformId: import_zod22.default.string().uuid(),
867
+ type: ChannelTypeSchema,
852
868
  metadata: PlatformContactMetadataSchema,
853
869
  contact: ContactSchema
854
870
  });
855
871
  var RoomSchema = DefaultEntitySchema.extend({
856
- lastMessage: import_zod21.default.string(),
857
- handleTime: import_zod21.default.number(),
858
- isSolved: import_zod21.default.boolean(),
859
- closeAt: import_zod21.default.date(),
860
- unreadCount: import_zod21.default.number(),
861
- firstResponseTime: import_zod21.default.date(),
862
- isLatest: import_zod21.default.boolean(),
872
+ lastMessage: import_zod22.default.string(),
873
+ handleTime: import_zod22.default.number(),
874
+ closeAt: import_zod22.default.date(),
875
+ unreadCount: import_zod22.default.number(),
876
+ firstResponseAt: import_zod22.default.date(),
877
+ firstResponseTime: import_zod22.default.number(),
878
+ isLatest: import_zod22.default.boolean(),
863
879
  direction: MessageDirectionTypeSchema,
864
880
  platformContact: PlatformContactSchema,
865
881
  actor: UserSchema,
866
882
  assignee: UserSchema,
867
- channel: ChannelSchema
883
+ channel: ChannelSchema,
884
+ cxLog: CxLogSchema
868
885
  });
869
886
  var MessageSchema = DefaultEntitySchema.extend({
870
- message: import_zod21.default.string(),
887
+ message: import_zod22.default.string(),
871
888
  direction: MessageDirectionTypeSchema,
872
889
  type: MessageTypeSchema,
873
- readAt: import_zod21.default.date(),
874
- metadata: import_zod21.default.any(),
875
- platformId: import_zod21.default.string(),
876
- platformMessageId: import_zod21.default.string(),
877
- replyPlatformMessageId: import_zod21.default.string(),
878
- template: import_zod21.default.any(),
890
+ readAt: import_zod22.default.date(),
891
+ metadata: import_zod22.default.any(),
892
+ platformId: import_zod22.default.string(),
893
+ platformMessageId: import_zod22.default.string(),
894
+ replyPlatformMessageId: import_zod22.default.string(),
895
+ template: import_zod22.default.any(),
879
896
  locale: MessageLocaleTypeSchema,
880
- isSent: import_zod21.default.boolean(),
897
+ url: import_zod22.default.string(),
898
+ previewUrl: import_zod22.default.string(),
899
+ imageSetId: import_zod22.default.string(),
881
900
  room: RoomSchema,
882
901
  upload: UploadSchema,
883
902
  actor: UserSchema,
884
903
  assignee: UserSchema,
885
904
  sender: UserSchema
886
905
  });
887
- var UnreadCountsByAssigneeSchema = import_zod21.default.object({
888
- assigneeId: import_zod21.default.string(),
889
- totalUnreadCount: import_zod21.default.number()
906
+ var UnreadCountsByAssigneeSchema = import_zod22.default.object({
907
+ assigneeId: import_zod22.default.string(),
908
+ totalUnreadCount: import_zod22.default.number()
890
909
  });
891
910
 
892
911
  // src/chat/validation.ts
893
- var import_zod23 = __toESM(require("zod"));
912
+ var import_zod24 = __toESM(require("zod"));
894
913
 
895
914
  // src/custom-field/schema.ts
896
- var import_zod22 = __toESM(require("zod"));
915
+ var import_zod23 = __toESM(require("zod"));
897
916
  var CustomFieldSchema = DefaultEntitySchema.extend({
898
- textValue: import_zod22.default.string().nullable(),
899
- booleanValue: import_zod22.default.boolean().nullable(),
900
- numberValue: import_zod22.default.number().nullable(),
901
- dateValue: import_zod22.default.date().nullable(),
902
- entityId: import_zod22.default.string().uuid(),
903
- attributeId: import_zod22.default.string().uuid()
917
+ textValue: import_zod23.default.string().nullable(),
918
+ booleanValue: import_zod23.default.boolean().nullable(),
919
+ numberValue: import_zod23.default.number().nullable(),
920
+ dateValue: import_zod23.default.date().nullable(),
921
+ entityId: import_zod23.default.string().uuid(),
922
+ attributeId: import_zod23.default.string().uuid()
904
923
  });
905
924
 
906
925
  // src/chat/validation.ts
907
- var GetRoomsSchema = import_zod23.default.object({
908
- page: import_zod23.default.coerce.number().positive().default(1),
909
- pageSize: import_zod23.default.coerce.number().positive().default(20),
910
- contactTagIds: import_zod23.default.string().array().optional(),
911
- contactIds: import_zod23.default.string().array().optional(),
912
- agentIds: import_zod23.default.string().array().optional(),
913
- roomTagIds: import_zod23.default.string().array().optional(),
914
- keyword: import_zod23.default.string().optional(),
915
- company: import_zod23.default.string().array().optional(),
916
- channel: import_zod23.default.string().array().optional(),
917
- name: import_zod23.default.string().optional(),
918
- address: import_zod23.default.string().optional(),
919
- contactGroups: import_zod23.default.string().array().optional(),
920
- selectedDate: import_zod23.default.string().optional(),
921
- customFields: import_zod23.default.array(CustomFieldSchema).optional(),
922
- tags: import_zod23.default.string().array().optional(),
923
- phone: import_zod23.default.string().optional(),
924
- email: import_zod23.default.string().optional(),
925
- notes: import_zod23.default.string().optional(),
926
- tab: import_zod23.default.string().optional()
927
- });
928
- var UpdateRoomTagsAndNotesSchema = import_zod23.default.object({
929
- notes: import_zod23.default.string().optional(),
930
- tags: import_zod23.default.string().array().optional()
926
+ var GetRoomsSchema = import_zod24.default.object({
927
+ page: import_zod24.default.coerce.number().positive().default(1),
928
+ pageSize: import_zod24.default.coerce.number().positive().default(20),
929
+ contactTagIds: import_zod24.default.string().array().optional(),
930
+ contactIds: import_zod24.default.string().array().optional(),
931
+ agentIds: import_zod24.default.string().array().optional(),
932
+ roomTagIds: import_zod24.default.string().array().optional(),
933
+ keyword: import_zod24.default.string().optional(),
934
+ company: import_zod24.default.string().array().optional(),
935
+ channel: import_zod24.default.string().array().optional(),
936
+ name: import_zod24.default.string().optional(),
937
+ address: import_zod24.default.string().optional(),
938
+ contactGroups: import_zod24.default.string().array().optional(),
939
+ selectedDate: import_zod24.default.string().optional(),
940
+ customFields: import_zod24.default.array(CustomFieldSchema).optional(),
941
+ tags: import_zod24.default.string().array().optional(),
942
+ phone: import_zod24.default.string().optional(),
943
+ email: import_zod24.default.string().optional(),
944
+ notes: import_zod24.default.string().optional(),
945
+ tab: import_zod24.default.string().optional()
946
+ });
947
+ var UpdateRoomTagsAndNotesSchema = import_zod24.default.object({
948
+ note: import_zod24.default.string().optional(),
949
+ tags: TagSchema.array().optional()
931
950
  });
932
951
  var UpdateRoomAttributesSchema = UpdateRoomTagsAndNotesSchema.extend({
933
- roomId: import_zod23.default.string().uuid()
934
- });
935
- var MessageAttachmentSchema = import_zod23.default.object({
936
- bucketName: import_zod23.default.string(),
937
- fileKey: import_zod23.default.string(),
938
- fileName: import_zod23.default.string(),
939
- fileSize: import_zod23.default.number(),
940
- url: import_zod23.default.string(),
952
+ roomId: import_zod24.default.string().uuid()
953
+ });
954
+ var MessageAttachmentSchema = import_zod24.default.object({
955
+ bucketName: import_zod24.default.string(),
956
+ fileKey: import_zod24.default.string(),
957
+ fileName: import_zod24.default.string(),
958
+ fileSize: import_zod24.default.number(),
959
+ url: import_zod24.default.string(),
941
960
  fileType: MessageTypeSchema,
942
- thumbnailUrl: import_zod23.default.string().optional()
961
+ thumbnailUrl: import_zod24.default.string().optional()
943
962
  });
944
- var SendMessageSchema = import_zod23.default.object({
945
- roomId: import_zod23.default.string().uuid(),
963
+ var SendMessageSchema = import_zod24.default.object({
964
+ roomId: import_zod24.default.string().uuid(),
946
965
  messageType: MessageTypeSchema,
947
- message: import_zod23.default.string().optional(),
966
+ message: import_zod24.default.string().optional(),
948
967
  direction: MessageDirectionTypeSchema,
949
968
  messageAttachments: MessageAttachmentSchema.optional(),
950
- user: UserSchema.optional(),
951
- packageId: import_zod23.default.number().optional(),
952
- stickerId: import_zod23.default.number().optional()
969
+ user: UserSchema,
970
+ packageId: import_zod24.default.number().optional(),
971
+ stickerId: import_zod24.default.number().optional()
953
972
  });
954
- var SolveRoomSchema = import_zod23.default.object({
955
- roomId: import_zod23.default.string()
973
+ var SolveRoomSchema = import_zod24.default.object({
974
+ roomId: import_zod24.default.string()
956
975
  });
957
976
  var UpdateAssigneeSchema = SolveRoomSchema.extend({
958
- assigneeId: import_zod23.default.string().uuid()
977
+ assigneeId: import_zod24.default.string().uuid()
959
978
  });
960
979
  var SearchRoomsSchema = DefaultQueryParamsSchema.extend({
961
- query: import_zod23.default.string()
980
+ query: import_zod24.default.string()
962
981
  });
963
- var SendMessageToPlatformSchema = import_zod23.default.object({
982
+ var SendMessageToPlatformSchema = import_zod24.default.object({
964
983
  room: RoomSchema,
965
984
  message: MessageSchema,
966
- url: import_zod23.default.string().optional()
985
+ url: import_zod24.default.string().optional()
986
+ });
987
+ var SendMessageResponseSchema = DefaultSuccessResponseSchema.extend({
988
+ data: MessageSchema
967
989
  });
968
990
 
969
991
  // src/chat/index.ts
@@ -974,11 +996,11 @@ var mainChatContract = (0, import_core6.initContract)().router(
974
996
  path: "/rooms",
975
997
  responses: {
976
998
  200: DefaultSuccessResponseSchema.extend({
977
- total: import_zod24.default.number(),
978
- page: import_zod24.default.number(),
979
- pageSize: import_zod24.default.number(),
980
- data: import_zod24.default.array(RoomSchema),
981
- unreadCountsByAssignee: import_zod24.default.array(UnreadCountsByAssigneeSchema)
999
+ total: import_zod25.default.number(),
1000
+ page: import_zod25.default.number(),
1001
+ pageSize: import_zod25.default.number(),
1002
+ data: import_zod25.default.array(RoomSchema),
1003
+ unreadCountsByAssignee: import_zod25.default.array(UnreadCountsByAssigneeSchema)
982
1004
  }),
983
1005
  401: DefaultUnauthorizedSchema
984
1006
  },
@@ -988,8 +1010,8 @@ var mainChatContract = (0, import_core6.initContract)().router(
988
1010
  getRoomContact: {
989
1011
  method: "GET",
990
1012
  path: "/contact/:contactId",
991
- pathParams: import_zod24.default.object({
992
- contactId: import_zod24.default.string().uuid()
1013
+ pathParams: import_zod25.default.object({
1014
+ contactId: import_zod25.default.string().uuid()
993
1015
  }),
994
1016
  responses: {
995
1017
  200: DefaultSuccessResponseSchema.extend({
@@ -1009,17 +1031,6 @@ var mainChatContract = (0, import_core6.initContract)().router(
1009
1031
  },
1010
1032
  summary: "Update room attributes"
1011
1033
  },
1012
- updateRoomTagsAndNotes: {
1013
- method: "PATCH",
1014
- path: "/room/:roomId",
1015
- body: UpdateRoomAttributesSchema,
1016
- responses: {
1017
- 200: DefaultSuccessResponseSchema.extend({
1018
- data: RoomSchema
1019
- })
1020
- },
1021
- summary: "Update room tags and notes"
1022
- },
1023
1034
  sendMessage: {
1024
1035
  method: "POST",
1025
1036
  path: "/message",
@@ -1032,14 +1043,18 @@ var mainChatContract = (0, import_core6.initContract)().router(
1032
1043
  getMessages: {
1033
1044
  method: "GET",
1034
1045
  path: "/message/:roomId",
1035
- pathParams: import_zod24.default.object({
1036
- roomId: import_zod24.default.string().uuid()
1046
+ pathParams: import_zod25.default.object({
1047
+ roomId: import_zod25.default.string().uuid()
1037
1048
  }),
1038
1049
  responses: {
1039
1050
  200: DefaultSuccessResponseSchema.extend({
1040
- data: import_zod24.default.array(MessageSchema)
1051
+ total: import_zod25.default.number(),
1052
+ page: import_zod25.default.number(),
1053
+ pageSize: import_zod25.default.number(),
1054
+ data: import_zod25.default.array(MessageSchema)
1041
1055
  })
1042
1056
  },
1057
+ query: DefaultQueryParamsSchema,
1043
1058
  summary: "Get messages"
1044
1059
  },
1045
1060
  solveRoom: {
@@ -1049,7 +1064,7 @@ var mainChatContract = (0, import_core6.initContract)().router(
1049
1064
  responses: {
1050
1065
  200: DefaultSuccessResponseSchema.extend({
1051
1066
  data: RoomSchema.extend({
1052
- solveMessage: import_zod24.default.string()
1067
+ solveMessage: import_zod25.default.string()
1053
1068
  })
1054
1069
  }),
1055
1070
  409: DefaultErrorResponseSchema
@@ -1070,8 +1085,8 @@ var mainChatContract = (0, import_core6.initContract)().router(
1070
1085
  getRoom: {
1071
1086
  method: "GET",
1072
1087
  path: "/room/:roomId",
1073
- pathParams: import_zod24.default.object({
1074
- roomId: import_zod24.default.string().uuid()
1088
+ pathParams: import_zod25.default.object({
1089
+ roomId: import_zod25.default.string().uuid()
1075
1090
  }),
1076
1091
  responses: {
1077
1092
  200: DefaultSuccessResponseSchema.extend({
@@ -1083,15 +1098,15 @@ var mainChatContract = (0, import_core6.initContract)().router(
1083
1098
  },
1084
1099
  createRoom: {
1085
1100
  method: "POST",
1086
- path: "/room/create/:roomid",
1087
- pathParams: import_zod24.default.object({
1088
- roomId: import_zod24.default.string().uuid()
1101
+ path: "/room/create/:platformContactId",
1102
+ pathParams: import_zod25.default.object({
1103
+ platformContactId: import_zod25.default.string().uuid()
1089
1104
  }),
1090
1105
  responses: {
1091
1106
  200: DefaultSuccessResponseSchema.extend({
1092
1107
  data: RoomSchema.extend({
1093
1108
  contact: ContactSchema,
1094
- openMessage: import_zod24.default.string()
1109
+ openMessage: import_zod25.default.string()
1095
1110
  })
1096
1111
  })
1097
1112
  },
@@ -1101,13 +1116,13 @@ var mainChatContract = (0, import_core6.initContract)().router(
1101
1116
  readRoom: {
1102
1117
  method: "POST",
1103
1118
  path: "/room/:roomid/read",
1104
- pathParams: import_zod24.default.object({
1105
- roomId: import_zod24.default.string().uuid()
1119
+ pathParams: import_zod25.default.object({
1120
+ roomId: import_zod25.default.string().uuid()
1106
1121
  }),
1107
1122
  responses: {
1108
1123
  200: DefaultSuccessResponseSchema.extend({
1109
1124
  data: RoomSchema.extend({
1110
- description: import_zod24.default.string().nullable()
1125
+ description: import_zod25.default.string().nullable()
1111
1126
  })
1112
1127
  })
1113
1128
  },
@@ -1119,10 +1134,10 @@ var mainChatContract = (0, import_core6.initContract)().router(
1119
1134
  path: "/search",
1120
1135
  responses: {
1121
1136
  200: DefaultSuccessResponseSchema.extend({
1122
- total: import_zod24.default.number(),
1123
- page: import_zod24.default.number(),
1124
- pageSize: import_zod24.default.number(),
1125
- data: import_zod24.default.array(RoomSchema)
1137
+ total: import_zod25.default.number(),
1138
+ page: import_zod25.default.number(),
1139
+ pageSize: import_zod25.default.number(),
1140
+ data: import_zod25.default.array(RoomSchema)
1126
1141
  })
1127
1142
  },
1128
1143
  query: SearchRoomsSchema,
@@ -1137,98 +1152,113 @@ var mainChatContract = (0, import_core6.initContract)().router(
1137
1152
 
1138
1153
  // src/contact/index.ts
1139
1154
  var import_core7 = require("@ts-rest/core");
1140
- var import_zod26 = __toESM(require("zod"));
1155
+ var import_zod27 = __toESM(require("zod"));
1141
1156
 
1142
1157
  // src/contact/validation.ts
1143
- var import_zod25 = __toESM(require("zod"));
1144
- var BaseSchema = import_zod25.default.object({
1145
- isRequired: import_zod25.default.boolean(),
1146
- attributeId: import_zod25.default.string()
1158
+ var import_zod26 = __toESM(require("zod"));
1159
+ var BaseSchema = import_zod26.default.object({
1160
+ isRequired: import_zod26.default.boolean(),
1161
+ attributeId: import_zod26.default.string()
1147
1162
  });
1148
1163
  var SingleValue = {
1149
- value: import_zod25.default.string()
1164
+ value: import_zod26.default.string()
1150
1165
  };
1151
1166
  var ContactContractValidationSchema = {
1152
1167
  create: {
1153
- request: import_zod25.default.object({
1168
+ request: import_zod26.default.object({
1154
1169
  name: BaseSchema.extend(SingleValue),
1155
1170
  email: BaseSchema.extend({
1156
- value: import_zod25.default.array(
1157
- import_zod25.default.object({
1158
- email: import_zod25.default.string(),
1159
- isPrimary: import_zod25.default.boolean()
1171
+ value: import_zod26.default.array(
1172
+ import_zod26.default.object({
1173
+ email: import_zod26.default.string(),
1174
+ isPrimary: import_zod26.default.boolean()
1160
1175
  })
1161
1176
  )
1162
1177
  }),
1163
1178
  channel: BaseSchema.extend(SingleValue),
1164
1179
  address: BaseSchema.extend(SingleValue),
1165
1180
  phone: BaseSchema.extend({
1166
- value: import_zod25.default.array(
1167
- import_zod25.default.object({
1168
- phone: import_zod25.default.string(),
1169
- isPrimary: import_zod25.default.boolean()
1181
+ value: import_zod26.default.array(
1182
+ import_zod26.default.object({
1183
+ phone: import_zod26.default.string(),
1184
+ isPrimary: import_zod26.default.boolean()
1170
1185
  })
1171
1186
  )
1172
1187
  }).optional(),
1173
1188
  notes: BaseSchema.extend(SingleValue),
1174
1189
  tags: BaseSchema.extend({
1175
- value: import_zod25.default.array(import_zod25.default.string())
1190
+ value: import_zod26.default.array(import_zod26.default.string())
1176
1191
  }),
1177
1192
  company: BaseSchema.extend(SingleValue),
1178
- customFields: import_zod25.default.array(
1193
+ customFields: import_zod26.default.array(
1179
1194
  BaseSchema.extend({
1180
- value: import_zod25.default.union([import_zod25.default.string(), import_zod25.default.array(import_zod25.default.string())]),
1181
- type: import_zod25.default.string(),
1182
- isDefaultAttribute: import_zod25.default.boolean()
1195
+ value: import_zod26.default.union([import_zod26.default.string(), import_zod26.default.array(import_zod26.default.string())]),
1196
+ type: import_zod26.default.string(),
1197
+ isDefaultAttribute: import_zod26.default.boolean()
1183
1198
  })
1184
1199
  )
1185
1200
  }),
1186
- response: import_zod25.default.string()
1201
+ response: import_zod26.default.string()
1187
1202
  },
1188
1203
  getById: {
1189
- request: import_zod25.default.object({
1190
- id: import_zod25.default.string().uuid()
1204
+ request: import_zod26.default.object({
1205
+ id: import_zod26.default.string().uuid()
1191
1206
  }),
1192
1207
  response: ContactSchema
1193
1208
  },
1194
1209
  delete: {
1195
- request: import_zod25.default.object({
1196
- id: import_zod25.default.string().uuid()
1210
+ request: import_zod26.default.object({
1211
+ id: import_zod26.default.string().uuid()
1197
1212
  }),
1198
- response: import_zod25.default.string()
1213
+ response: import_zod26.default.string()
1199
1214
  },
1200
1215
  getAll: {
1201
- request: import_zod25.default.object({
1202
- page: import_zod25.default.coerce.number().default(1),
1203
- pageSize: import_zod25.default.coerce.number().default(10),
1204
- keyword: import_zod25.default.string().optional(),
1205
- company: import_zod25.default.array(import_zod25.default.string().uuid()),
1206
- name: import_zod25.default.string(),
1207
- address: import_zod25.default.string(),
1208
- channel: import_zod25.default.array(import_zod25.default.string()),
1209
- selectedDate: import_zod25.default.string(),
1210
- customFields: import_zod25.default.array(
1211
- import_zod25.default.object({
1212
- attributeId: import_zod25.default.string().uuid(),
1213
- type: import_zod25.default.string(),
1214
- value: import_zod25.default.union([import_zod25.default.string(), import_zod25.default.array(import_zod25.default.string())])
1216
+ request: import_zod26.default.object({
1217
+ page: import_zod26.default.coerce.number().default(1),
1218
+ pageSize: import_zod26.default.coerce.number().default(10),
1219
+ keyword: import_zod26.default.string().optional(),
1220
+ company: import_zod26.default.array(import_zod26.default.string().uuid()),
1221
+ name: import_zod26.default.string(),
1222
+ address: import_zod26.default.string(),
1223
+ channel: import_zod26.default.array(import_zod26.default.string()),
1224
+ selectedDate: import_zod26.default.string(),
1225
+ customFields: import_zod26.default.array(
1226
+ import_zod26.default.object({
1227
+ attributeId: import_zod26.default.string().uuid(),
1228
+ type: import_zod26.default.string(),
1229
+ value: import_zod26.default.union([import_zod26.default.string(), import_zod26.default.array(import_zod26.default.string())])
1215
1230
  })
1216
1231
  ),
1217
- tags: import_zod25.default.array(import_zod25.default.string().uuid()),
1218
- phone: import_zod25.default.string(),
1219
- email: import_zod25.default.string(),
1220
- notes: import_zod25.default.string()
1232
+ tags: import_zod26.default.array(import_zod26.default.string().uuid()),
1233
+ phone: import_zod26.default.string(),
1234
+ email: import_zod26.default.string(),
1235
+ notes: import_zod26.default.string()
1221
1236
  }).partial(),
1222
1237
  response: {
1223
- page: import_zod25.default.number(),
1224
- pageSize: import_zod25.default.number(),
1225
- total: import_zod25.default.number(),
1226
- data: import_zod25.default.array(ContactSchema)
1238
+ page: import_zod26.default.number(),
1239
+ pageSize: import_zod26.default.number(),
1240
+ total: import_zod26.default.number(),
1241
+ lastPage: import_zod26.default.number(),
1242
+ data: import_zod26.default.array(ContactSchema)
1227
1243
  }
1228
1244
  },
1229
1245
  createContactByPhone: {
1230
- request: import_zod25.default.object({
1231
- phoneNumber: import_zod25.default.string().refine(
1246
+ request: import_zod26.default.object({
1247
+ phoneNumber: import_zod26.default.string().refine(
1248
+ (value) => {
1249
+ const numericValue = value.replace(/\s/g, "");
1250
+ return /^\d+$/.test(numericValue);
1251
+ },
1252
+ {
1253
+ message: "Phone number must contain only numeric characters"
1254
+ }
1255
+ )
1256
+ }),
1257
+ response: ContactSchema
1258
+ },
1259
+ updateContactByPhone: {
1260
+ request: import_zod26.default.object({
1261
+ phoneNumber: import_zod26.default.string().refine(
1232
1262
  (value) => {
1233
1263
  const numericValue = value.replace(/\s/g, "");
1234
1264
  return /^\d+$/.test(numericValue);
@@ -1239,6 +1269,74 @@ var ContactContractValidationSchema = {
1239
1269
  )
1240
1270
  }),
1241
1271
  response: ContactSchema
1272
+ },
1273
+ updateFromOngoingCall: {
1274
+ request: import_zod26.default.object({
1275
+ name: import_zod26.default.string(),
1276
+ companyId: import_zod26.default.string().uuid()
1277
+ }).partial(),
1278
+ response: ContactSchema
1279
+ },
1280
+ merge: {
1281
+ request: import_zod26.default.object({
1282
+ primaryContactId: import_zod26.default.string().uuid(),
1283
+ emails: import_zod26.default.array(
1284
+ import_zod26.default.object({
1285
+ email: import_zod26.default.string(),
1286
+ isPrimary: import_zod26.default.boolean()
1287
+ })
1288
+ ),
1289
+ phones: import_zod26.default.array(
1290
+ import_zod26.default.object({
1291
+ phone: import_zod26.default.string(),
1292
+ isPrimary: import_zod26.default.boolean()
1293
+ })
1294
+ ),
1295
+ otherContacts: import_zod26.default.array(import_zod26.default.string().uuid())
1296
+ }),
1297
+ response: ContactSchema
1298
+ },
1299
+ checkContactPhone: {
1300
+ request: import_zod26.default.object({
1301
+ contactId: import_zod26.default.string().uuid().optional(),
1302
+ phoneNumber: import_zod26.default.string()
1303
+ }),
1304
+ response: import_zod26.default.boolean()
1305
+ },
1306
+ checkContactEmail: {
1307
+ request: import_zod26.default.object({
1308
+ contactId: import_zod26.default.string().uuid().optional(),
1309
+ email: import_zod26.default.string()
1310
+ }),
1311
+ response: import_zod26.default.boolean()
1312
+ },
1313
+ filterContacts: {
1314
+ request: import_zod26.default.object({
1315
+ page: import_zod26.default.coerce.number().default(1),
1316
+ pageSize: import_zod26.default.coerce.number().default(10),
1317
+ keyword: import_zod26.default.string()
1318
+ }).partial(),
1319
+ response: {
1320
+ page: import_zod26.default.number(),
1321
+ pageSize: import_zod26.default.number(),
1322
+ total: import_zod26.default.number(),
1323
+ lastPage: import_zod26.default.number(),
1324
+ data: import_zod26.default.array(ContactSchema)
1325
+ }
1326
+ },
1327
+ addAttachments: {
1328
+ request: import_zod26.default.object({
1329
+ attributeId: import_zod26.default.string().uuid(),
1330
+ attachments: import_zod26.default.array(
1331
+ import_zod26.default.object({
1332
+ bucketName: import_zod26.default.string(),
1333
+ fileKey: import_zod26.default.string(),
1334
+ fileName: import_zod26.default.string(),
1335
+ fileSize: import_zod26.default.coerce.number()
1336
+ })
1337
+ ).optional()
1338
+ }),
1339
+ response: CustomFieldSchema
1242
1340
  }
1243
1341
  };
1244
1342
 
@@ -1252,14 +1350,14 @@ var contactContract = (0, import_core7.initContract)().router(
1252
1350
  201: DefaultSuccessResponseSchema.extend({
1253
1351
  message: ContactContractValidationSchema.create.response
1254
1352
  }),
1255
- 400: import_zod26.default.object({
1256
- message: import_zod26.default.string()
1353
+ 400: import_zod27.default.object({
1354
+ message: import_zod27.default.string()
1257
1355
  }),
1258
- 409: import_zod26.default.object({
1259
- message: import_zod26.default.string()
1356
+ 409: import_zod27.default.object({
1357
+ message: import_zod27.default.string()
1260
1358
  }),
1261
- 500: import_zod26.default.object({
1262
- message: import_zod26.default.string()
1359
+ 500: import_zod27.default.object({
1360
+ message: import_zod27.default.string()
1263
1361
  }),
1264
1362
  401: DefaultUnauthorizedSchema,
1265
1363
  404: DefaultNotFoundSchema,
@@ -1276,14 +1374,14 @@ var contactContract = (0, import_core7.initContract)().router(
1276
1374
  200: DefaultSuccessResponseSchema.extend({
1277
1375
  data: ContactContractValidationSchema.getById.response
1278
1376
  }),
1279
- 400: import_zod26.default.object({
1280
- message: import_zod26.default.string()
1377
+ 400: import_zod27.default.object({
1378
+ message: import_zod27.default.string()
1281
1379
  }),
1282
- 409: import_zod26.default.object({
1283
- message: import_zod26.default.string()
1380
+ 409: import_zod27.default.object({
1381
+ message: import_zod27.default.string()
1284
1382
  }),
1285
- 500: import_zod26.default.object({
1286
- message: import_zod26.default.string()
1383
+ 500: import_zod27.default.object({
1384
+ message: import_zod27.default.string()
1287
1385
  }),
1288
1386
  401: DefaultUnauthorizedSchema,
1289
1387
  404: DefaultNotFoundSchema,
@@ -1299,14 +1397,14 @@ var contactContract = (0, import_core7.initContract)().router(
1299
1397
  200: DefaultSuccessResponseSchema.extend(
1300
1398
  ContactContractValidationSchema.getAll.response
1301
1399
  ),
1302
- 400: import_zod26.default.object({
1303
- message: import_zod26.default.string()
1400
+ 400: import_zod27.default.object({
1401
+ message: import_zod27.default.string()
1304
1402
  }),
1305
- 409: import_zod26.default.object({
1306
- message: import_zod26.default.string()
1403
+ 409: import_zod27.default.object({
1404
+ message: import_zod27.default.string()
1307
1405
  }),
1308
- 500: import_zod26.default.object({
1309
- message: import_zod26.default.string()
1406
+ 500: import_zod27.default.object({
1407
+ message: import_zod27.default.string()
1310
1408
  }),
1311
1409
  401: DefaultUnauthorizedSchema,
1312
1410
  404: DefaultNotFoundSchema,
@@ -1314,6 +1412,29 @@ var contactContract = (0, import_core7.initContract)().router(
1314
1412
  },
1315
1413
  summary: "Get all contacts"
1316
1414
  },
1415
+ filterContacts: {
1416
+ method: "GET",
1417
+ path: "/filter",
1418
+ query: ContactContractValidationSchema.filterContacts.request,
1419
+ responses: {
1420
+ 200: DefaultSuccessResponseSchema.extend(
1421
+ ContactContractValidationSchema.filterContacts.response
1422
+ ),
1423
+ 400: import_zod27.default.object({
1424
+ message: import_zod27.default.string()
1425
+ }),
1426
+ 409: import_zod27.default.object({
1427
+ message: import_zod27.default.string()
1428
+ }),
1429
+ 500: import_zod27.default.object({
1430
+ message: import_zod27.default.string()
1431
+ }),
1432
+ 401: DefaultUnauthorizedSchema,
1433
+ 404: DefaultNotFoundSchema,
1434
+ 422: DefaultUnprocessibleSchema
1435
+ },
1436
+ summary: "Get all contacts by filtering with only keyword"
1437
+ },
1317
1438
  update: {
1318
1439
  method: "PATCH",
1319
1440
  path: "/:id",
@@ -1322,14 +1443,14 @@ var contactContract = (0, import_core7.initContract)().router(
1322
1443
  200: DefaultSuccessResponseSchema.extend({
1323
1444
  data: ContactContractValidationSchema.getById.response
1324
1445
  }),
1325
- 400: import_zod26.default.object({
1326
- message: import_zod26.default.string()
1446
+ 400: import_zod27.default.object({
1447
+ message: import_zod27.default.string()
1327
1448
  }),
1328
- 409: import_zod26.default.object({
1329
- message: import_zod26.default.string()
1449
+ 409: import_zod27.default.object({
1450
+ message: import_zod27.default.string()
1330
1451
  }),
1331
- 500: import_zod26.default.object({
1332
- message: import_zod26.default.string()
1452
+ 500: import_zod27.default.object({
1453
+ message: import_zod27.default.string()
1333
1454
  }),
1334
1455
  401: DefaultUnauthorizedSchema,
1335
1456
  404: DefaultNotFoundSchema,
@@ -1346,14 +1467,14 @@ var contactContract = (0, import_core7.initContract)().router(
1346
1467
  200: DefaultSuccessResponseSchema.extend({
1347
1468
  message: ContactContractValidationSchema.delete.response
1348
1469
  }),
1349
- 400: import_zod26.default.object({
1350
- message: import_zod26.default.string()
1470
+ 400: import_zod27.default.object({
1471
+ message: import_zod27.default.string()
1351
1472
  }),
1352
- 409: import_zod26.default.object({
1353
- message: import_zod26.default.string()
1473
+ 409: import_zod27.default.object({
1474
+ message: import_zod27.default.string()
1354
1475
  }),
1355
- 500: import_zod26.default.object({
1356
- message: import_zod26.default.string()
1476
+ 500: import_zod27.default.object({
1477
+ message: import_zod27.default.string()
1357
1478
  }),
1358
1479
  401: DefaultUnauthorizedSchema,
1359
1480
  404: DefaultNotFoundSchema,
@@ -1369,14 +1490,14 @@ var contactContract = (0, import_core7.initContract)().router(
1369
1490
  201: DefaultSuccessResponseSchema.extend({
1370
1491
  data: ContactContractValidationSchema.createContactByPhone.response
1371
1492
  }),
1372
- 400: import_zod26.default.object({
1373
- message: import_zod26.default.string()
1493
+ 400: import_zod27.default.object({
1494
+ message: import_zod27.default.string()
1374
1495
  }),
1375
- 409: import_zod26.default.object({
1376
- message: import_zod26.default.string()
1496
+ 409: import_zod27.default.object({
1497
+ message: import_zod27.default.string()
1377
1498
  }),
1378
- 500: import_zod26.default.object({
1379
- message: import_zod26.default.string()
1499
+ 500: import_zod27.default.object({
1500
+ message: import_zod27.default.string()
1380
1501
  }),
1381
1502
  401: DefaultUnauthorizedSchema,
1382
1503
  404: DefaultNotFoundSchema,
@@ -1384,6 +1505,124 @@ var contactContract = (0, import_core7.initContract)().router(
1384
1505
  },
1385
1506
  body: ContactContractValidationSchema.createContactByPhone.request,
1386
1507
  summary: "Create a new contact using phone number"
1508
+ },
1509
+ updateFromOngoingCall: {
1510
+ method: "PATCH",
1511
+ path: "/:id/ongoing",
1512
+ responses: {
1513
+ 201: DefaultSuccessResponseSchema.extend({
1514
+ data: ContactContractValidationSchema.updateFromOngoingCall.response
1515
+ }),
1516
+ 400: import_zod27.default.object({
1517
+ message: import_zod27.default.string()
1518
+ }),
1519
+ 409: import_zod27.default.object({
1520
+ message: import_zod27.default.string()
1521
+ }),
1522
+ 500: import_zod27.default.object({
1523
+ message: import_zod27.default.string()
1524
+ }),
1525
+ 401: DefaultUnauthorizedSchema,
1526
+ 404: DefaultNotFoundSchema,
1527
+ 422: DefaultUnprocessibleSchema
1528
+ },
1529
+ body: ContactContractValidationSchema.updateFromOngoingCall.request,
1530
+ summary: "Update a contact with name and company while making ongoing call"
1531
+ },
1532
+ merge: {
1533
+ method: "POST",
1534
+ path: "/merge",
1535
+ responses: {
1536
+ 200: DefaultSuccessResponseSchema.extend({
1537
+ data: ContactContractValidationSchema.merge.response
1538
+ }),
1539
+ 400: import_zod27.default.object({
1540
+ message: import_zod27.default.string()
1541
+ }),
1542
+ 409: import_zod27.default.object({
1543
+ message: import_zod27.default.string()
1544
+ }),
1545
+ 500: import_zod27.default.object({
1546
+ message: import_zod27.default.string()
1547
+ }),
1548
+ 401: DefaultUnauthorizedSchema,
1549
+ 404: DefaultNotFoundSchema,
1550
+ 422: DefaultUnprocessibleSchema
1551
+ },
1552
+ body: ContactContractValidationSchema.merge.request,
1553
+ summary: "Merge contacts into a single contact."
1554
+ },
1555
+ checkContactPhone: {
1556
+ method: "POST",
1557
+ path: "/check/phone",
1558
+ responses: {
1559
+ 200: DefaultSuccessResponseSchema.extend({
1560
+ existed: ContactContractValidationSchema.checkContactPhone.response
1561
+ }),
1562
+ 400: import_zod27.default.object({
1563
+ message: import_zod27.default.string()
1564
+ }),
1565
+ 409: import_zod27.default.object({
1566
+ message: import_zod27.default.string()
1567
+ }),
1568
+ 500: import_zod27.default.object({
1569
+ message: import_zod27.default.string()
1570
+ }),
1571
+ 401: DefaultUnauthorizedSchema,
1572
+ 404: DefaultNotFoundSchema,
1573
+ 422: DefaultUnprocessibleSchema
1574
+ },
1575
+ body: ContactContractValidationSchema.checkContactPhone.request,
1576
+ summary: "Check whether a contact owns a phone number"
1577
+ },
1578
+ checkContactEmail: {
1579
+ method: "POST",
1580
+ path: "/check/email",
1581
+ responses: {
1582
+ 200: DefaultSuccessResponseSchema.extend({
1583
+ existed: ContactContractValidationSchema.checkContactEmail.response
1584
+ }),
1585
+ 400: import_zod27.default.object({
1586
+ message: import_zod27.default.string()
1587
+ }),
1588
+ 409: import_zod27.default.object({
1589
+ message: import_zod27.default.string()
1590
+ }),
1591
+ 500: import_zod27.default.object({
1592
+ message: import_zod27.default.string()
1593
+ }),
1594
+ 401: DefaultUnauthorizedSchema,
1595
+ 404: DefaultNotFoundSchema,
1596
+ 422: DefaultUnprocessibleSchema
1597
+ },
1598
+ body: ContactContractValidationSchema.checkContactEmail.request,
1599
+ summary: "Check whether a contact owns a email"
1600
+ },
1601
+ addAttachments: {
1602
+ method: "POST",
1603
+ path: "/:id/attachments",
1604
+ pathParams: import_zod27.default.object({
1605
+ id: import_zod27.default.string().uuid()
1606
+ }),
1607
+ responses: {
1608
+ 201: DefaultSuccessResponseSchema.extend({
1609
+ message: ContactContractValidationSchema.addAttachments.response
1610
+ }),
1611
+ 400: import_zod27.default.object({
1612
+ message: import_zod27.default.string()
1613
+ }),
1614
+ 409: import_zod27.default.object({
1615
+ message: import_zod27.default.string()
1616
+ }),
1617
+ 500: import_zod27.default.object({
1618
+ message: import_zod27.default.string()
1619
+ }),
1620
+ 401: DefaultUnauthorizedSchema,
1621
+ 404: DefaultNotFoundSchema,
1622
+ 422: DefaultUnprocessibleSchema
1623
+ },
1624
+ body: ContactContractValidationSchema.addAttachments.request,
1625
+ summary: " attachment information from pre-uploaded files in AWS S3 to contacts."
1387
1626
  }
1388
1627
  },
1389
1628
  {
@@ -1392,237 +1631,696 @@ var contactContract = (0, import_core7.initContract)().router(
1392
1631
  }
1393
1632
  );
1394
1633
 
1395
- // src/cx-log/index.ts
1634
+ // src/ticket/index.ts
1396
1635
  var import_core8 = require("@ts-rest/core");
1397
- var import_zod29 = __toESM(require("zod"));
1398
-
1399
- // src/cx-log/schema.ts
1400
- var import_zod27 = __toESM(require("zod"));
1401
- var CxLogSchema = DefaultEntitySchema.extend({
1402
- caseId: import_zod27.default.number(),
1403
- entityId: import_zod27.default.string().uuid(),
1404
- entityName: import_zod27.default.string(),
1405
- contactId: import_zod27.default.string().uuid().nullable(),
1406
- channel: import_zod27.default.string().nullable(),
1407
- queueId: import_zod27.default.string().uuid().nullable(),
1408
- agentId: import_zod27.default.string().uuid().nullable(),
1409
- direction: import_zod27.default.string().nullable(),
1410
- startedDate: import_zod27.default.date().nullable(),
1411
- handledTime: import_zod27.default.number().nullable(),
1412
- firstResponseTime: import_zod27.default.number().nullable(),
1413
- disposition: import_zod27.default.string().nullable()
1414
- });
1636
+ var import_zod30 = __toESM(require("zod"));
1415
1637
 
1416
- // src/cx-log/validation.ts
1638
+ // src/ticket/schema.ts
1417
1639
  var import_zod28 = __toESM(require("zod"));
1418
- var sentimentScoreSchema = import_zod28.default.union([
1419
- import_zod28.default.literal("positive"),
1420
- import_zod28.default.literal("negative")
1421
- ]);
1422
- var CustomFieldQueryParamsSchema = import_zod28.default.object({
1423
- attributeId: import_zod28.default.string(),
1424
- value: import_zod28.default.union([import_zod28.default.string(), import_zod28.default.array(import_zod28.default.string())]),
1425
- type: import_zod28.default.string().optional()
1640
+ var TicketCustomFieldSchema = DefaultEntitySchema.extend({
1641
+ textValue: import_zod28.default.string().nullable(),
1642
+ booleanValue: import_zod28.default.boolean().nullable(),
1643
+ numberValue: import_zod28.default.number().nullable(),
1644
+ dateValue: import_zod28.default.date().nullable(),
1645
+ attribute: AttributeSchema.omit({ options: true, group: true }),
1646
+ uploads: import_zod28.default.array(
1647
+ import_zod28.default.object({
1648
+ id: import_zod28.default.string().uuid(),
1649
+ createdAt: import_zod28.default.date(),
1650
+ updatedAt: import_zod28.default.date(),
1651
+ deletedAt: import_zod28.default.date().nullable(),
1652
+ customFieldId: import_zod28.default.string(),
1653
+ upload: UploadSchema
1654
+ })
1655
+ )
1426
1656
  });
1427
- var GetAllCxLogQueryParamsSchema = DefaultQueryParamsSchema.extend({
1657
+ var TicketSchema = DefaultEntitySchema.extend({
1658
+ title: import_zod28.default.string(),
1659
+ description: import_zod28.default.string().nullable(),
1660
+ type: import_zod28.default.string(),
1661
+ channel: import_zod28.default.string(),
1662
+ priority: import_zod28.default.string(),
1663
+ status: import_zod28.default.string(),
1428
1664
  contactId: import_zod28.default.string().uuid(),
1429
- caseId: import_zod28.default.string(),
1430
- channelIds: import_zod28.default.array(import_zod28.default.string().uuid()),
1431
- queueId: import_zod28.default.array(import_zod28.default.string()),
1432
- agentIds: import_zod28.default.array(import_zod28.default.string()),
1433
- direction: import_zod28.default.array(import_zod28.default.union([import_zod28.default.literal("inbound"), import_zod28.default.literal("outbound")])),
1434
- disposition: import_zod28.default.array(import_zod28.default.string()),
1435
- sentimentScore: import_zod28.default.array(sentimentScoreSchema),
1436
- csatScore: import_zod28.default.string(),
1437
- sla: import_zod28.default.array(import_zod28.default.union([import_zod28.default.literal("meet"), import_zod28.default.literal("unmeet")])),
1438
- tags: import_zod28.default.array(import_zod28.default.string()),
1439
- // General tags
1440
- // Default contact attributes
1441
- name: import_zod28.default.string(),
1442
- contactLabels: import_zod28.default.array(import_zod28.default.string()),
1443
- email: import_zod28.default.string(),
1665
+ creatorId: import_zod28.default.string().uuid(),
1666
+ assigneeId: import_zod28.default.string().uuid(),
1667
+ reasonToAssign: import_zod28.default.string().nullable(),
1668
+ ticketNumber: import_zod28.default.number().optional(),
1669
+ customFields: import_zod28.default.array(TicketCustomFieldSchema)
1670
+ });
1671
+ var TicketCountByContactSchema = import_zod28.default.object({
1672
+ total: import_zod28.default.coerce.number(),
1673
+ open: import_zod28.default.coerce.number(),
1674
+ pending: import_zod28.default.coerce.number(),
1675
+ closed: import_zod28.default.coerce.number(),
1676
+ solved: import_zod28.default.coerce.number()
1677
+ }).optional();
1678
+ var TicketParamsSchema = import_zod28.default.object({
1679
+ page: import_zod28.default.coerce.number().default(1),
1680
+ pageSize: import_zod28.default.coerce.number().default(10)
1681
+ }).optional();
1682
+ var CustomFieldQuery = import_zod28.default.object({
1683
+ attributeId: import_zod28.default.string(),
1684
+ type: import_zod28.default.string(),
1685
+ value: import_zod28.default.union([import_zod28.default.string(), import_zod28.default.array(import_zod28.default.string())])
1686
+ });
1687
+ var GetAllTicketQuerySchema = import_zod28.default.object({
1688
+ page: import_zod28.default.number().default(1),
1689
+ pageSize: import_zod28.default.number().default(10),
1690
+ agent: import_zod28.default.array(import_zod28.default.string()),
1691
+ selectedDate: import_zod28.default.string(),
1692
+ keyword: import_zod28.default.string(),
1693
+ title: import_zod28.default.string(),
1694
+ description: import_zod28.default.string(),
1695
+ status: import_zod28.default.array(import_zod28.default.string()),
1696
+ priority: import_zod28.default.array(import_zod28.default.string()),
1444
1697
  channel: import_zod28.default.array(import_zod28.default.string()),
1445
- phone: import_zod28.default.string(),
1446
- notes: import_zod28.default.string(),
1447
- address: import_zod28.default.string(),
1448
- company: import_zod28.default.array(import_zod28.default.string()),
1449
- // Custom fields
1450
- customFields: import_zod28.default.array(CustomFieldQueryParamsSchema),
1451
- // Date filter
1452
- selectedDate: import_zod28.default.string()
1453
- }).partial().optional();
1698
+ type: import_zod28.default.array(import_zod28.default.string()),
1699
+ ticketType: import_zod28.default.array(import_zod28.default.string()),
1700
+ contact: import_zod28.default.array(import_zod28.default.string()),
1701
+ tags: import_zod28.default.array(import_zod28.default.string()),
1702
+ categories: import_zod28.default.array(import_zod28.default.string()),
1703
+ customFields: import_zod28.default.array(CustomFieldQuery)
1704
+ }).partial();
1454
1705
 
1455
- // src/cx-log/index.ts
1456
- var cxLogContract = (0, import_core8.initContract)().router({
1457
- findAll: {
1458
- method: "GET",
1459
- path: "/cx-logs",
1460
- headers: DefaultHeaderSchema,
1461
- responses: {
1462
- 200: DefaultSuccessResponseSchema.extend({
1463
- total: import_zod29.default.number(),
1464
- page: import_zod29.default.number(),
1465
- pageSize: import_zod29.default.number(),
1466
- cxLogs: import_zod29.default.array(CxLogSchema)
1467
- }),
1468
- 401: DefaultUnauthorizedSchema
1469
- },
1470
- query: GetAllCxLogQueryParamsSchema,
1471
- summary: "Get all cx-logs"
1706
+ // src/ticket/validation.ts
1707
+ var import_zod29 = __toESM(require("zod"));
1708
+ var BaseSchema2 = import_zod29.default.object({
1709
+ isRequired: import_zod29.default.boolean(),
1710
+ attributeId: import_zod29.default.string()
1711
+ });
1712
+ var SingleValue2 = {
1713
+ value: import_zod29.default.string()
1714
+ };
1715
+ var CreateTicketValidationSchema = import_zod29.default.object({
1716
+ title: BaseSchema2.extend(SingleValue2),
1717
+ description: BaseSchema2.extend(SingleValue2),
1718
+ status: BaseSchema2.extend(SingleValue2),
1719
+ type: BaseSchema2.extend(SingleValue2),
1720
+ priority: BaseSchema2.extend(SingleValue2),
1721
+ contact: BaseSchema2.extend(SingleValue2),
1722
+ assignee: BaseSchema2.extend(SingleValue2),
1723
+ channel: BaseSchema2.extend(SingleValue2),
1724
+ tags: BaseSchema2.extend({ value: import_zod29.default.array(import_zod29.default.string()) }),
1725
+ categories: BaseSchema2.extend({ value: import_zod29.default.array(import_zod29.default.string()) }),
1726
+ customFields: import_zod29.default.array(
1727
+ BaseSchema2.extend({
1728
+ value: import_zod29.default.union([import_zod29.default.string(), import_zod29.default.array(import_zod29.default.string())]),
1729
+ type: import_zod29.default.string(),
1730
+ isDefaultAttribute: import_zod29.default.boolean()
1731
+ })
1732
+ ),
1733
+ reasonToAssign: import_zod29.default.object({ value: import_zod29.default.string() })
1734
+ });
1735
+ var UpdateTicketValidationSchema = CreateTicketValidationSchema.extend(
1736
+ {
1737
+ id: import_zod29.default.string()
1472
1738
  }
1739
+ );
1740
+ var TicketAttachmentRecordSchema = import_zod29.default.object({
1741
+ bucketName: import_zod29.default.string(),
1742
+ fileKey: import_zod29.default.string(),
1743
+ fileName: import_zod29.default.string(),
1744
+ fileSize: import_zod29.default.coerce.number(),
1745
+ url: import_zod29.default.string()
1473
1746
  });
1474
-
1475
- // src/extension/index.ts
1476
- var import_core9 = require("@ts-rest/core");
1477
- var import_zod31 = __toESM(require("zod"));
1478
-
1479
- // src/extension/validation.ts
1480
- var import_zod30 = require("zod");
1481
- var CreateExtensionSchema = import_zod30.z.object({
1482
- userId: import_zod30.z.string().nullable(),
1483
- sipUserName: import_zod30.z.string(),
1484
- extensionId: import_zod30.z.coerce.number().nullable(),
1485
- extensionName: import_zod30.z.string().nullable(),
1486
- telephonySignature: import_zod30.z.string().nullable().optional()
1747
+ var CreateTicketAttachmentRecordsSchema = import_zod29.default.object({
1748
+ ticketId: import_zod29.default.string(),
1749
+ attributeId: import_zod29.default.string(),
1750
+ ticketAttachmentRecords: import_zod29.default.array(TicketAttachmentRecordSchema)
1487
1751
  });
1488
- var UpdateExtensionSchema = CreateExtensionSchema;
1489
1752
 
1490
- // src/extension/index.ts
1491
- var extensionContract = (0, import_core9.initContract)().router(
1753
+ // src/ticket/index.ts
1754
+ var ticketContract = (0, import_core8.initContract)().router(
1492
1755
  {
1493
- createExtension: {
1756
+ createTicket: {
1494
1757
  method: "POST",
1495
1758
  path: "",
1496
1759
  headers: DefaultHeaderSchema,
1497
- body: CreateExtensionSchema,
1498
1760
  responses: {
1499
1761
  201: DefaultSuccessResponseSchema.extend({
1500
- extension: ExtensionSchema
1762
+ message: TicketSchema
1763
+ }),
1764
+ 400: import_zod30.default.object({
1765
+ message: import_zod30.default.string()
1501
1766
  }),
1502
- 400: import_zod31.default.object({
1503
- message: import_zod31.default.string()
1767
+ 409: import_zod30.default.object({
1768
+ message: import_zod30.default.string()
1769
+ }),
1770
+ 500: import_zod30.default.object({
1771
+ message: import_zod30.default.string()
1504
1772
  }),
1505
1773
  401: DefaultUnauthorizedSchema,
1506
- 500: DefaultErrorResponseSchema
1774
+ 404: DefaultNotFoundSchema,
1775
+ 422: DefaultUnprocessibleSchema
1507
1776
  },
1508
- summary: "Create a extension."
1777
+ body: CreateTicketValidationSchema,
1778
+ summary: "Create a new ticket"
1509
1779
  },
1510
- getExtensions: {
1780
+ getAllTickets: {
1511
1781
  method: "GET",
1512
1782
  path: "",
1513
- query: import_zod31.default.object({
1514
- page: import_zod31.default.coerce.number().default(1),
1515
- pageSize: import_zod31.default.coerce.number().default(10),
1516
- keyword: import_zod31.default.string().optional()
1517
- }).optional(),
1783
+ query: GetAllTicketQuerySchema,
1518
1784
  headers: DefaultHeaderSchema,
1519
1785
  responses: {
1520
1786
  200: WithPagination(
1521
1787
  // The response data should contain the user relation.
1522
- ExtensionSchema.extend({
1523
- user: UserSchema
1524
- })
1788
+ TicketSchema
1525
1789
  ),
1526
- 400: import_zod31.default.object({
1527
- message: import_zod31.default.string()
1790
+ 400: import_zod30.default.object({
1791
+ message: import_zod30.default.string()
1528
1792
  }),
1529
1793
  401: DefaultUnauthorizedSchema,
1530
1794
  500: DefaultErrorResponseSchema
1531
1795
  },
1532
- summary: "Get all extensions"
1796
+ summary: "Get all tickets"
1533
1797
  },
1534
- getExtensionByUserId: {
1798
+ getTicketById: {
1535
1799
  method: "GET",
1536
- path: "/user/:userId",
1537
- pathParams: import_zod31.default.object({ userId: import_zod31.default.string() }),
1800
+ path: "/:id",
1801
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
1538
1802
  headers: DefaultHeaderSchema,
1539
1803
  responses: {
1540
- 200: ExtensionSchema,
1541
- 400: import_zod31.default.object({
1542
- message: import_zod31.default.string()
1804
+ 200: TicketSchema,
1805
+ 400: import_zod30.default.object({
1806
+ message: import_zod30.default.string()
1543
1807
  }),
1544
1808
  401: DefaultUnauthorizedSchema,
1545
1809
  500: DefaultErrorResponseSchema
1546
1810
  },
1547
- summary: "Get extension by user id"
1811
+ summary: "Get ticket by id"
1548
1812
  },
1549
- getExtensionByDialpad: {
1813
+ getTicketByContactId: {
1550
1814
  method: "GET",
1551
- path: "/dialpad",
1552
- query: import_zod31.default.object({
1553
- page: import_zod31.default.coerce.number().default(1),
1554
- pageSize: import_zod31.default.coerce.number().default(10),
1555
- keyword: import_zod31.default.string().optional()
1556
- }).optional(),
1815
+ path: "/contact/:id",
1816
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
1817
+ query: TicketParamsSchema,
1557
1818
  headers: DefaultHeaderSchema,
1558
1819
  responses: {
1559
- 200: WithPagination(ExtensionSchema),
1560
- 500: DefaultErrorResponseSchema,
1561
- 400: import_zod31.default.object({
1562
- message: import_zod31.default.string()
1820
+ 200: WithPagination(TicketSchema),
1821
+ 400: import_zod30.default.object({
1822
+ message: import_zod30.default.string()
1563
1823
  }),
1564
- 401: DefaultUnauthorizedSchema
1824
+ 401: DefaultUnauthorizedSchema,
1825
+ 500: DefaultErrorResponseSchema
1565
1826
  },
1566
- summary: "Get by dialpad"
1827
+ summary: "Get ticket by contact id."
1567
1828
  },
1568
- updateExtension: {
1829
+ updateTicket: {
1569
1830
  method: "PATCH",
1570
1831
  path: "/:id",
1571
- pathParams: import_zod31.default.object({ id: import_zod31.default.string() }),
1832
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
1833
+ body: UpdateTicketValidationSchema,
1572
1834
  headers: DefaultHeaderSchema,
1573
- body: UpdateExtensionSchema,
1574
1835
  responses: {
1575
- 200: DefaultSuccessResponseSchema.extend({
1576
- extension: ExtensionSchema
1836
+ 201: DefaultSuccessResponseSchema.extend({
1837
+ message: TicketSchema
1577
1838
  }),
1578
- 500: DefaultErrorResponseSchema
1839
+ 400: import_zod30.default.object({
1840
+ message: import_zod30.default.string()
1841
+ }),
1842
+ 409: import_zod30.default.object({
1843
+ message: import_zod30.default.string()
1844
+ }),
1845
+ 500: import_zod30.default.object({
1846
+ message: import_zod30.default.string()
1847
+ }),
1848
+ 401: DefaultUnauthorizedSchema,
1849
+ 404: DefaultNotFoundSchema,
1850
+ 422: DefaultUnprocessibleSchema
1579
1851
  },
1580
- summary: "Update a extension."
1852
+ summary: "Update a contact"
1581
1853
  },
1582
- deleteExtension: {
1854
+ deleteTicket: {
1583
1855
  method: "DELETE",
1584
1856
  path: "/:id",
1585
- pathParams: import_zod31.default.object({ id: import_zod31.default.string() }),
1857
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
1586
1858
  headers: DefaultHeaderSchema,
1587
1859
  body: null,
1588
1860
  responses: {
1589
- 200: DefaultSuccessResponseSchema.extend({ message: import_zod31.default.string() }),
1861
+ 200: DefaultSuccessResponseSchema.extend({ message: import_zod30.default.string() }),
1590
1862
  500: DefaultErrorResponseSchema
1591
1863
  },
1592
1864
  summary: "Delete a extension."
1593
- }
1594
- },
1595
- { pathPrefix: "extension" }
1596
- );
1597
-
1598
- // src/line/index.ts
1599
- var import_core10 = require("@ts-rest/core");
1600
- var import_zod34 = __toESM(require("zod"));
1601
-
1602
- // src/line/schema.ts
1603
- var import_zod32 = __toESM(require("zod"));
1604
- var ConnectLineSchema = import_zod32.default.object({
1605
- id: import_zod32.default.string(),
1606
- accessToken: import_zod32.default.string()
1607
- });
1608
-
1609
- // src/line/validation.ts
1610
- var import_zod33 = __toESM(require("zod"));
1611
- var SendLineStickerSchema = import_zod33.default.object({
1612
- userId: import_zod33.default.string().uuid(),
1613
- packageId: import_zod33.default.string(),
1614
- stickerId: import_zod33.default.string(),
1615
- accessToken: import_zod33.default.string()
1616
- });
1617
-
1618
- // src/line/index.ts
1619
- var lineContract = (0, import_core10.initContract)().router({
1620
- sendSticker: {
1621
- method: "POST",
1622
- path: "sticker",
1623
- responses: {
1624
- 200: DefaultSuccessResponseSchema.extend({
1625
- data: import_zod34.default.any()
1865
+ },
1866
+ updateDescription: {
1867
+ method: "PATCH",
1868
+ path: "/description/update/:id",
1869
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
1870
+ body: import_zod30.default.object({ description: import_zod30.default.string() }),
1871
+ headers: DefaultHeaderSchema,
1872
+ responses: {
1873
+ 201: DefaultSuccessResponseSchema.extend({ message: import_zod30.default.string() }),
1874
+ 400: import_zod30.default.object({
1875
+ message: import_zod30.default.string()
1876
+ }),
1877
+ 409: import_zod30.default.object({
1878
+ message: import_zod30.default.string()
1879
+ }),
1880
+ 500: import_zod30.default.object({
1881
+ message: import_zod30.default.string()
1882
+ }),
1883
+ 401: DefaultUnauthorizedSchema,
1884
+ 404: DefaultNotFoundSchema,
1885
+ 422: DefaultUnprocessibleSchema
1886
+ },
1887
+ summary: "Update a description from a ticket"
1888
+ },
1889
+ updateTitle: {
1890
+ method: "PATCH",
1891
+ path: "/title/update/:id",
1892
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
1893
+ body: import_zod30.default.object({ title: import_zod30.default.string() }),
1894
+ headers: DefaultHeaderSchema,
1895
+ responses: {
1896
+ 200: DefaultSuccessResponseSchema.extend({ message: import_zod30.default.string() }),
1897
+ 400: import_zod30.default.object({
1898
+ message: import_zod30.default.string()
1899
+ }),
1900
+ 409: import_zod30.default.object({
1901
+ message: import_zod30.default.string()
1902
+ }),
1903
+ 500: import_zod30.default.object({
1904
+ message: import_zod30.default.string()
1905
+ }),
1906
+ 401: DefaultUnauthorizedSchema,
1907
+ 404: DefaultNotFoundSchema,
1908
+ 422: DefaultUnprocessibleSchema
1909
+ },
1910
+ summary: "Update a title from a ticket"
1911
+ },
1912
+ updateType: {
1913
+ method: "PATCH",
1914
+ path: "/type/update/:id",
1915
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
1916
+ body: import_zod30.default.object({ type: import_zod30.default.string() }),
1917
+ headers: DefaultHeaderSchema,
1918
+ responses: {
1919
+ 200: DefaultSuccessResponseSchema.extend({ message: import_zod30.default.string() }),
1920
+ 400: import_zod30.default.object({
1921
+ message: import_zod30.default.string()
1922
+ }),
1923
+ 409: import_zod30.default.object({
1924
+ message: import_zod30.default.string()
1925
+ }),
1926
+ 500: import_zod30.default.object({
1927
+ message: import_zod30.default.string()
1928
+ }),
1929
+ 401: DefaultUnauthorizedSchema,
1930
+ 404: DefaultNotFoundSchema,
1931
+ 422: DefaultUnprocessibleSchema
1932
+ },
1933
+ summary: "Update a type from a ticket"
1934
+ },
1935
+ updateStatus: {
1936
+ method: "PATCH",
1937
+ path: "/status/update/:id",
1938
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
1939
+ body: import_zod30.default.object({ status: import_zod30.default.string() }),
1940
+ headers: DefaultHeaderSchema,
1941
+ responses: {
1942
+ 200: DefaultSuccessResponseSchema.extend({ message: import_zod30.default.string() }),
1943
+ 400: import_zod30.default.object({
1944
+ message: import_zod30.default.string()
1945
+ }),
1946
+ 409: import_zod30.default.object({
1947
+ message: import_zod30.default.string()
1948
+ }),
1949
+ 500: import_zod30.default.object({
1950
+ message: import_zod30.default.string()
1951
+ }),
1952
+ 401: DefaultUnauthorizedSchema,
1953
+ 404: DefaultNotFoundSchema,
1954
+ 422: DefaultUnprocessibleSchema
1955
+ },
1956
+ summary: "Update a status from a ticket"
1957
+ },
1958
+ updatePriority: {
1959
+ method: "PATCH",
1960
+ path: "/priority/update/:id",
1961
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
1962
+ body: import_zod30.default.object({ priority: import_zod30.default.string() }),
1963
+ headers: DefaultHeaderSchema,
1964
+ responses: {
1965
+ 200: DefaultSuccessResponseSchema.extend({ message: import_zod30.default.string() }),
1966
+ 400: import_zod30.default.object({
1967
+ message: import_zod30.default.string()
1968
+ }),
1969
+ 409: import_zod30.default.object({
1970
+ message: import_zod30.default.string()
1971
+ }),
1972
+ 500: import_zod30.default.object({
1973
+ message: import_zod30.default.string()
1974
+ }),
1975
+ 401: DefaultUnauthorizedSchema,
1976
+ 404: DefaultNotFoundSchema,
1977
+ 422: DefaultUnprocessibleSchema
1978
+ },
1979
+ summary: "Update a priority from a ticket"
1980
+ },
1981
+ updateChannel: {
1982
+ method: "PATCH",
1983
+ path: "/channel/update/:id",
1984
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
1985
+ body: import_zod30.default.object({ channel: import_zod30.default.string() }),
1986
+ headers: DefaultHeaderSchema,
1987
+ responses: {
1988
+ 200: DefaultSuccessResponseSchema.extend({ message: import_zod30.default.string() }),
1989
+ 400: import_zod30.default.object({
1990
+ message: import_zod30.default.string()
1991
+ }),
1992
+ 409: import_zod30.default.object({
1993
+ message: import_zod30.default.string()
1994
+ }),
1995
+ 500: import_zod30.default.object({
1996
+ message: import_zod30.default.string()
1997
+ }),
1998
+ 401: DefaultUnauthorizedSchema,
1999
+ 404: DefaultNotFoundSchema,
2000
+ 422: DefaultUnprocessibleSchema
2001
+ },
2002
+ summary: "Update a channel from a ticket"
2003
+ },
2004
+ updateTags: {
2005
+ method: "PATCH",
2006
+ path: "/tags/update/:id",
2007
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
2008
+ body: import_zod30.default.object({ tags: import_zod30.default.array(import_zod30.default.string()) }),
2009
+ headers: DefaultHeaderSchema,
2010
+ responses: {
2011
+ 200: DefaultSuccessResponseSchema.extend({ message: import_zod30.default.string() }),
2012
+ 400: import_zod30.default.object({
2013
+ message: import_zod30.default.string()
2014
+ }),
2015
+ 409: import_zod30.default.object({
2016
+ message: import_zod30.default.string()
2017
+ }),
2018
+ 500: import_zod30.default.object({
2019
+ message: import_zod30.default.string()
2020
+ }),
2021
+ 401: DefaultUnauthorizedSchema,
2022
+ 404: DefaultNotFoundSchema,
2023
+ 422: DefaultUnprocessibleSchema
2024
+ },
2025
+ summary: "Update a tags from a ticket"
2026
+ },
2027
+ changeAssignee: {
2028
+ method: "PATCH",
2029
+ path: "/assignee/update/:id",
2030
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
2031
+ body: import_zod30.default.object({ ticketId: import_zod30.default.string(), assigneeId: import_zod30.default.string() }),
2032
+ headers: DefaultHeaderSchema,
2033
+ responses: {
2034
+ 200: TicketSchema,
2035
+ 400: import_zod30.default.object({
2036
+ message: import_zod30.default.string()
2037
+ }),
2038
+ 409: import_zod30.default.object({
2039
+ message: import_zod30.default.string()
2040
+ }),
2041
+ 500: import_zod30.default.object({
2042
+ message: import_zod30.default.string()
2043
+ }),
2044
+ 401: DefaultUnauthorizedSchema,
2045
+ 404: DefaultNotFoundSchema,
2046
+ 422: DefaultUnprocessibleSchema
2047
+ },
2048
+ summary: "Change assignee"
2049
+ },
2050
+ getTicketCountByContact: {
2051
+ method: "GET",
2052
+ path: "/ticket_count/contact/:id",
2053
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
2054
+ headers: DefaultHeaderSchema,
2055
+ responses: {
2056
+ 200: TicketCountByContactSchema,
2057
+ 400: import_zod30.default.object({
2058
+ message: import_zod30.default.string()
2059
+ }),
2060
+ 401: DefaultUnauthorizedSchema,
2061
+ 500: DefaultErrorResponseSchema
2062
+ },
2063
+ summary: "Get ticket count by contact"
2064
+ },
2065
+ getTicketByContact: {
2066
+ method: "GET",
2067
+ path: "/contact/:id",
2068
+ pathParams: import_zod30.default.object({ id: import_zod30.default.string() }),
2069
+ query: import_zod30.default.object({
2070
+ page: import_zod30.default.coerce.number().default(1),
2071
+ pageSize: import_zod30.default.coerce.number().default(10)
2072
+ }).optional(),
2073
+ headers: DefaultHeaderSchema,
2074
+ responses: {
2075
+ 200: WithPagination(TicketSchema),
2076
+ 400: import_zod30.default.object({
2077
+ message: import_zod30.default.string()
2078
+ }),
2079
+ 401: DefaultUnauthorizedSchema,
2080
+ 500: DefaultErrorResponseSchema
2081
+ },
2082
+ summary: "Get ticket by contact id"
2083
+ },
2084
+ createTicketAttachmentRecords: {
2085
+ method: "POST",
2086
+ path: "/attachment",
2087
+ headers: DefaultHeaderSchema,
2088
+ body: CreateTicketAttachmentRecordsSchema,
2089
+ responses: {
2090
+ 201: TicketCustomFieldSchema,
2091
+ 400: import_zod30.default.object({
2092
+ message: import_zod30.default.string()
2093
+ }),
2094
+ 409: import_zod30.default.object({
2095
+ message: import_zod30.default.string()
2096
+ }),
2097
+ 500: import_zod30.default.object({
2098
+ message: import_zod30.default.string()
2099
+ }),
2100
+ 401: DefaultUnauthorizedSchema,
2101
+ 404: DefaultNotFoundSchema,
2102
+ 422: DefaultUnprocessibleSchema
2103
+ },
2104
+ summary: "Create a new ticket attachment"
2105
+ }
2106
+ },
2107
+ { pathPrefix: "ticket" }
2108
+ );
2109
+
2110
+ // src/cx-log/index.ts
2111
+ var import_core9 = require("@ts-rest/core");
2112
+ var import_zod32 = __toESM(require("zod"));
2113
+
2114
+ // src/cx-log/validation.ts
2115
+ var import_zod31 = __toESM(require("zod"));
2116
+ var sentimentScoreSchema = import_zod31.default.union([
2117
+ import_zod31.default.literal("positive"),
2118
+ import_zod31.default.literal("negative")
2119
+ ]);
2120
+ var CustomFieldQueryParamsSchema = import_zod31.default.object({
2121
+ attributeId: import_zod31.default.string(),
2122
+ value: import_zod31.default.union([import_zod31.default.string(), import_zod31.default.array(import_zod31.default.string())]),
2123
+ type: import_zod31.default.string().optional()
2124
+ });
2125
+ var GetAllCxLogQueryParamsSchema = DefaultQueryParamsSchema.extend({
2126
+ contactId: import_zod31.default.string().uuid(),
2127
+ caseId: import_zod31.default.string(),
2128
+ channelIds: import_zod31.default.array(import_zod31.default.string().uuid()),
2129
+ queueId: import_zod31.default.array(import_zod31.default.string()),
2130
+ agentIds: import_zod31.default.array(import_zod31.default.string()),
2131
+ direction: import_zod31.default.array(import_zod31.default.union([import_zod31.default.literal("inbound"), import_zod31.default.literal("outbound")])),
2132
+ disposition: import_zod31.default.array(import_zod31.default.string()),
2133
+ sentimentScore: import_zod31.default.array(sentimentScoreSchema),
2134
+ csatScore: import_zod31.default.string(),
2135
+ sla: import_zod31.default.array(import_zod31.default.union([import_zod31.default.literal("meet"), import_zod31.default.literal("unmeet")])),
2136
+ tags: import_zod31.default.array(import_zod31.default.string()),
2137
+ // General tags
2138
+ // Default contact attributes
2139
+ name: import_zod31.default.string(),
2140
+ contactLabels: import_zod31.default.array(import_zod31.default.string()),
2141
+ email: import_zod31.default.string(),
2142
+ channel: import_zod31.default.array(import_zod31.default.string()),
2143
+ phone: import_zod31.default.string(),
2144
+ notes: import_zod31.default.string(),
2145
+ address: import_zod31.default.string(),
2146
+ company: import_zod31.default.array(import_zod31.default.string()),
2147
+ // Custom fields
2148
+ customFields: import_zod31.default.array(CustomFieldQueryParamsSchema),
2149
+ // Date filter
2150
+ selectedDate: import_zod31.default.string()
2151
+ }).partial().optional();
2152
+
2153
+ // src/cx-log/index.ts
2154
+ var cxLogContract = (0, import_core9.initContract)().router({
2155
+ findAll: {
2156
+ method: "GET",
2157
+ path: "/cx-logs",
2158
+ headers: DefaultHeaderSchema,
2159
+ responses: {
2160
+ 200: DefaultSuccessResponseSchema.extend({
2161
+ total: import_zod32.default.number(),
2162
+ page: import_zod32.default.number(),
2163
+ pageSize: import_zod32.default.number(),
2164
+ cxLogs: import_zod32.default.array(CxLogSchema)
2165
+ }),
2166
+ 401: DefaultUnauthorizedSchema
2167
+ },
2168
+ query: GetAllCxLogQueryParamsSchema,
2169
+ summary: "Get all cx-logs"
2170
+ }
2171
+ });
2172
+
2173
+ // src/extension/index.ts
2174
+ var import_core10 = require("@ts-rest/core");
2175
+ var import_zod34 = __toESM(require("zod"));
2176
+
2177
+ // src/extension/validation.ts
2178
+ var import_zod33 = require("zod");
2179
+ var CreateExtensionSchema = import_zod33.z.object({
2180
+ userId: import_zod33.z.string().nullable(),
2181
+ sipUserName: import_zod33.z.string(),
2182
+ extensionId: import_zod33.z.coerce.number().nullable(),
2183
+ extensionName: import_zod33.z.string().nullable(),
2184
+ telephonySignature: import_zod33.z.string().nullable().optional()
2185
+ });
2186
+ var UpdateExtensionSchema = CreateExtensionSchema;
2187
+
2188
+ // src/extension/index.ts
2189
+ var extensionContract = (0, import_core10.initContract)().router(
2190
+ {
2191
+ createExtension: {
2192
+ method: "POST",
2193
+ path: "",
2194
+ headers: DefaultHeaderSchema,
2195
+ body: CreateExtensionSchema,
2196
+ responses: {
2197
+ 201: DefaultSuccessResponseSchema.extend({
2198
+ extension: ExtensionSchema
2199
+ }),
2200
+ 400: import_zod34.default.object({
2201
+ message: import_zod34.default.string()
2202
+ }),
2203
+ 401: DefaultUnauthorizedSchema,
2204
+ 500: DefaultErrorResponseSchema
2205
+ },
2206
+ summary: "Create a extension."
2207
+ },
2208
+ getExtensions: {
2209
+ method: "GET",
2210
+ path: "",
2211
+ query: import_zod34.default.object({
2212
+ page: import_zod34.default.coerce.number().default(1),
2213
+ pageSize: import_zod34.default.coerce.number().default(10),
2214
+ keyword: import_zod34.default.string().optional()
2215
+ }).optional(),
2216
+ headers: DefaultHeaderSchema,
2217
+ responses: {
2218
+ 200: WithPagination(
2219
+ // The response data should contain the user relation.
2220
+ ExtensionSchema.extend({
2221
+ user: UserSchema
2222
+ })
2223
+ ),
2224
+ 400: import_zod34.default.object({
2225
+ message: import_zod34.default.string()
2226
+ }),
2227
+ 401: DefaultUnauthorizedSchema,
2228
+ 500: DefaultErrorResponseSchema
2229
+ },
2230
+ summary: "Get all extensions"
2231
+ },
2232
+ getExtensionByUserId: {
2233
+ method: "GET",
2234
+ path: "/user/:userId",
2235
+ pathParams: import_zod34.default.object({ userId: import_zod34.default.string() }),
2236
+ headers: DefaultHeaderSchema,
2237
+ responses: {
2238
+ 200: ExtensionSchema,
2239
+ 400: import_zod34.default.object({
2240
+ message: import_zod34.default.string()
2241
+ }),
2242
+ 401: DefaultUnauthorizedSchema,
2243
+ 500: DefaultErrorResponseSchema
2244
+ },
2245
+ summary: "Get extension by user id"
2246
+ },
2247
+ getExtensionByDialpad: {
2248
+ method: "GET",
2249
+ path: "/dialpad",
2250
+ query: import_zod34.default.object({
2251
+ page: import_zod34.default.coerce.number().default(1),
2252
+ pageSize: import_zod34.default.coerce.number().default(10),
2253
+ keyword: import_zod34.default.string().optional()
2254
+ }).optional(),
2255
+ headers: DefaultHeaderSchema,
2256
+ responses: {
2257
+ 200: WithPagination(ExtensionSchema),
2258
+ 500: DefaultErrorResponseSchema,
2259
+ 400: import_zod34.default.object({
2260
+ message: import_zod34.default.string()
2261
+ }),
2262
+ 401: DefaultUnauthorizedSchema
2263
+ },
2264
+ summary: "Get by dialpad"
2265
+ },
2266
+ updateExtension: {
2267
+ method: "PATCH",
2268
+ path: "/:id",
2269
+ pathParams: import_zod34.default.object({ id: import_zod34.default.string() }),
2270
+ headers: DefaultHeaderSchema,
2271
+ body: UpdateExtensionSchema,
2272
+ responses: {
2273
+ 200: DefaultSuccessResponseSchema.extend({
2274
+ extension: ExtensionSchema
2275
+ }),
2276
+ 500: DefaultErrorResponseSchema
2277
+ },
2278
+ summary: "Update a extension."
2279
+ },
2280
+ deleteExtension: {
2281
+ method: "DELETE",
2282
+ path: "/:id",
2283
+ pathParams: import_zod34.default.object({ id: import_zod34.default.string() }),
2284
+ headers: DefaultHeaderSchema,
2285
+ body: null,
2286
+ responses: {
2287
+ 200: DefaultSuccessResponseSchema.extend({ message: import_zod34.default.string() }),
2288
+ 500: DefaultErrorResponseSchema
2289
+ },
2290
+ summary: "Delete a extension."
2291
+ }
2292
+ },
2293
+ { pathPrefix: "extension" }
2294
+ );
2295
+
2296
+ // src/line/index.ts
2297
+ var import_core11 = require("@ts-rest/core");
2298
+ var import_zod37 = __toESM(require("zod"));
2299
+
2300
+ // src/line/schema.ts
2301
+ var import_zod35 = __toESM(require("zod"));
2302
+ var ConnectLineSchema = import_zod35.default.object({
2303
+ id: import_zod35.default.string(),
2304
+ accessToken: import_zod35.default.string()
2305
+ });
2306
+
2307
+ // src/line/validation.ts
2308
+ var import_zod36 = __toESM(require("zod"));
2309
+ var SendLineStickerSchema = import_zod36.default.object({
2310
+ userId: import_zod36.default.string().uuid(),
2311
+ packageId: import_zod36.default.string(),
2312
+ stickerId: import_zod36.default.string(),
2313
+ accessToken: import_zod36.default.string()
2314
+ });
2315
+
2316
+ // src/line/index.ts
2317
+ var lineContract = (0, import_core11.initContract)().router({
2318
+ sendSticker: {
2319
+ method: "POST",
2320
+ path: "sticker",
2321
+ responses: {
2322
+ 200: DefaultSuccessResponseSchema.extend({
2323
+ data: import_zod37.default.any()
1626
2324
  }),
1627
2325
  500: DefaultErrorResponseSchema
1628
2326
  },
@@ -1634,7 +2332,7 @@ var lineContract = (0, import_core10.initContract)().router({
1634
2332
  path: "connect",
1635
2333
  responses: {
1636
2334
  200: DefaultSuccessResponseSchema.extend({
1637
- data: import_zod34.default.any()
2335
+ data: import_zod37.default.any()
1638
2336
  }),
1639
2337
  500: DefaultErrorResponseSchema
1640
2338
  },
@@ -1644,16 +2342,16 @@ var lineContract = (0, import_core10.initContract)().router({
1644
2342
  });
1645
2343
 
1646
2344
  // src/mail/email-engine-webhooks-events.contract.ts
1647
- var import_core11 = require("@ts-rest/core");
1648
- var import_zod35 = __toESM(require("zod"));
1649
- var emailEngineWebhooksEventsContract = (0, import_core11.initContract)().router({
2345
+ var import_core12 = require("@ts-rest/core");
2346
+ var import_zod38 = __toESM(require("zod"));
2347
+ var emailEngineWebhooksEventsContract = (0, import_core12.initContract)().router({
1650
2348
  handleWebhooksEvents: {
1651
2349
  method: "POST",
1652
2350
  path: "/email_engine/webhooks",
1653
2351
  // we don't need to respone anything but added responses just for solving type error
1654
2352
  responses: {
1655
2353
  200: DefaultSuccessResponseSchema.extend({
1656
- message: import_zod35.default.string()
2354
+ message: import_zod38.default.string()
1657
2355
  })
1658
2356
  },
1659
2357
  body: null,
@@ -1662,189 +2360,189 @@ var emailEngineWebhooksEventsContract = (0, import_core11.initContract)().router
1662
2360
  });
1663
2361
 
1664
2362
  // src/mail/mail-contract.ts
1665
- var import_core16 = require("@ts-rest/core");
2363
+ var import_core17 = require("@ts-rest/core");
1666
2364
 
1667
2365
  // src/mail/room-contract.ts
1668
- var import_core12 = require("@ts-rest/core");
1669
- var import_zod39 = __toESM(require("zod"));
2366
+ var import_core13 = require("@ts-rest/core");
2367
+ var import_zod42 = __toESM(require("zod"));
1670
2368
 
1671
2369
  // src/mail/schemas/room.schema.ts
1672
- var import_zod38 = __toESM(require("zod"));
2370
+ var import_zod41 = __toESM(require("zod"));
1673
2371
 
1674
2372
  // src/mail/schemas/account.schema.ts
1675
- var import_zod36 = __toESM(require("zod"));
1676
- var MailServerSchema = import_zod36.default.object({
1677
- id: import_zod36.default.string(),
1678
- createdAt: import_zod36.default.date(),
1679
- updatedAt: import_zod36.default.date(),
1680
- deletedAt: import_zod36.default.date().nullable(),
1681
- name: import_zod36.default.string(),
1682
- smtpHost: import_zod36.default.string(),
1683
- smtpPort: import_zod36.default.string(),
1684
- smtpTlsPort: import_zod36.default.string(),
1685
- useTlsForSmtp: import_zod36.default.boolean(),
1686
- imapHost: import_zod36.default.string(),
1687
- imapPort: import_zod36.default.string(),
1688
- imapTlsPort: import_zod36.default.string(),
1689
- useTlsForImap: import_zod36.default.boolean()
1690
- });
1691
- var MailAccountSchema = import_zod36.default.object({
1692
- id: import_zod36.default.string(),
1693
- createdAt: import_zod36.default.date(),
1694
- updatedAt: import_zod36.default.date(),
1695
- deletedAt: import_zod36.default.date().nullable(),
1696
- name: import_zod36.default.string(),
1697
- address: import_zod36.default.string(),
1698
- accountId: import_zod36.default.string(),
1699
- mailServerId: import_zod36.default.string(),
2373
+ var import_zod39 = __toESM(require("zod"));
2374
+ var MailServerSchema = import_zod39.default.object({
2375
+ id: import_zod39.default.string(),
2376
+ createdAt: import_zod39.default.date(),
2377
+ updatedAt: import_zod39.default.date(),
2378
+ deletedAt: import_zod39.default.date().nullable(),
2379
+ name: import_zod39.default.string(),
2380
+ smtpHost: import_zod39.default.string(),
2381
+ smtpPort: import_zod39.default.string(),
2382
+ smtpTlsPort: import_zod39.default.string(),
2383
+ useTlsForSmtp: import_zod39.default.boolean(),
2384
+ imapHost: import_zod39.default.string(),
2385
+ imapPort: import_zod39.default.string(),
2386
+ imapTlsPort: import_zod39.default.string(),
2387
+ useTlsForImap: import_zod39.default.boolean()
2388
+ });
2389
+ var MailAccountSchema = import_zod39.default.object({
2390
+ id: import_zod39.default.string(),
2391
+ createdAt: import_zod39.default.date(),
2392
+ updatedAt: import_zod39.default.date(),
2393
+ deletedAt: import_zod39.default.date().nullable(),
2394
+ name: import_zod39.default.string(),
2395
+ address: import_zod39.default.string(),
2396
+ accountId: import_zod39.default.string(),
2397
+ mailServerId: import_zod39.default.string(),
1700
2398
  mailServer: MailServerSchema,
1701
- state: import_zod36.default.union([
1702
- import_zod36.default.literal("init"),
1703
- import_zod36.default.literal("syncing"),
1704
- import_zod36.default.literal("connecting"),
1705
- import_zod36.default.literal("connected"),
1706
- import_zod36.default.literal("disconnected"),
1707
- import_zod36.default.literal("authenticationError"),
1708
- import_zod36.default.literal("connectError"),
1709
- import_zod36.default.literal("unset")
2399
+ state: import_zod39.default.union([
2400
+ import_zod39.default.literal("init"),
2401
+ import_zod39.default.literal("syncing"),
2402
+ import_zod39.default.literal("connecting"),
2403
+ import_zod39.default.literal("connected"),
2404
+ import_zod39.default.literal("disconnected"),
2405
+ import_zod39.default.literal("authenticationError"),
2406
+ import_zod39.default.literal("connectError"),
2407
+ import_zod39.default.literal("unset")
1710
2408
  ])
1711
2409
  });
1712
2410
 
1713
2411
  // src/mail/schemas/message.schema.ts
1714
- var import_zod37 = __toESM(require("zod"));
1715
- var AttachmentSchema = import_zod37.default.object({
1716
- id: import_zod37.default.string(),
1717
- createdAt: import_zod37.default.date(),
1718
- updatedAt: import_zod37.default.date(),
1719
- deletedAt: import_zod37.default.nullable(import_zod37.default.date()),
1720
- roomId: import_zod37.default.string(),
1721
- messageId: import_zod37.default.string(),
1722
- fileName: import_zod37.default.string(),
1723
- fileType: import_zod37.default.string(),
1724
- emailEngineAttachmentId: import_zod37.default.string(),
1725
- uploadId: import_zod37.default.string(),
1726
- upload: import_zod37.default.object({
1727
- id: import_zod37.default.string(),
1728
- createdAt: import_zod37.default.date(),
1729
- updatedAt: import_zod37.default.date(),
1730
- deletedAt: import_zod37.default.nullable(import_zod37.default.date()),
1731
- bucket_name: import_zod37.default.string(),
1732
- file_name: import_zod37.default.string(),
1733
- file_key: import_zod37.default.string(),
1734
- file_size: import_zod37.default.number(),
1735
- file_url: import_zod37.default.string(),
1736
- extension_name: import_zod37.default.string()
2412
+ var import_zod40 = __toESM(require("zod"));
2413
+ var AttachmentSchema = import_zod40.default.object({
2414
+ id: import_zod40.default.string(),
2415
+ createdAt: import_zod40.default.date(),
2416
+ updatedAt: import_zod40.default.date(),
2417
+ deletedAt: import_zod40.default.nullable(import_zod40.default.date()),
2418
+ roomId: import_zod40.default.string(),
2419
+ messageId: import_zod40.default.string(),
2420
+ fileName: import_zod40.default.string(),
2421
+ fileType: import_zod40.default.string(),
2422
+ emailEngineAttachmentId: import_zod40.default.string(),
2423
+ uploadId: import_zod40.default.string(),
2424
+ upload: import_zod40.default.object({
2425
+ id: import_zod40.default.string(),
2426
+ createdAt: import_zod40.default.date(),
2427
+ updatedAt: import_zod40.default.date(),
2428
+ deletedAt: import_zod40.default.nullable(import_zod40.default.date()),
2429
+ bucket_name: import_zod40.default.string(),
2430
+ file_name: import_zod40.default.string(),
2431
+ file_key: import_zod40.default.string(),
2432
+ file_size: import_zod40.default.number(),
2433
+ file_url: import_zod40.default.string(),
2434
+ extension_name: import_zod40.default.string()
1737
2435
  })
1738
2436
  });
1739
- var MessageSchema2 = import_zod37.default.object({
1740
- id: import_zod37.default.string(),
1741
- createdAt: import_zod37.default.date(),
1742
- updatedAt: import_zod37.default.date(),
1743
- deletedAt: import_zod37.default.nullable(import_zod37.default.date()),
1744
- roomId: import_zod37.default.string(),
1745
- subject: import_zod37.default.string(),
1746
- textPlain: import_zod37.default.string(),
1747
- textHtml: import_zod37.default.string(),
1748
- textId: import_zod37.default.string(),
1749
- emailEngineEmailId: import_zod37.default.string(),
1750
- emailEngineMessageId: import_zod37.default.string(),
1751
- emailEngineReplyTo: import_zod37.default.nullable(import_zod37.default.string()),
1752
- direction: import_zod37.default.string(),
1753
- date: import_zod37.default.date(),
1754
- action: import_zod37.default.string(),
1755
- unseen: import_zod37.default.boolean(),
1756
- seemsLikeNew: import_zod37.default.boolean(),
1757
- from: import_zod37.default.array(MailUserSchema),
1758
- to: import_zod37.default.array(MailUserSchema),
1759
- cc: import_zod37.default.array(MailUserSchema),
1760
- bcc: import_zod37.default.array(MailUserSchema),
1761
- attachments: import_zod37.default.array(AttachmentSchema)
2437
+ var MessageSchema2 = import_zod40.default.object({
2438
+ id: import_zod40.default.string(),
2439
+ createdAt: import_zod40.default.date(),
2440
+ updatedAt: import_zod40.default.date(),
2441
+ deletedAt: import_zod40.default.nullable(import_zod40.default.date()),
2442
+ roomId: import_zod40.default.string(),
2443
+ subject: import_zod40.default.string(),
2444
+ textPlain: import_zod40.default.string(),
2445
+ textHtml: import_zod40.default.string(),
2446
+ textId: import_zod40.default.string(),
2447
+ emailEngineEmailId: import_zod40.default.string(),
2448
+ emailEngineMessageId: import_zod40.default.string(),
2449
+ emailEngineReplyTo: import_zod40.default.nullable(import_zod40.default.string()),
2450
+ direction: import_zod40.default.string(),
2451
+ date: import_zod40.default.date(),
2452
+ action: import_zod40.default.string(),
2453
+ unseen: import_zod40.default.boolean(),
2454
+ seemsLikeNew: import_zod40.default.boolean(),
2455
+ from: import_zod40.default.array(MailUserSchema),
2456
+ to: import_zod40.default.array(MailUserSchema),
2457
+ cc: import_zod40.default.array(MailUserSchema),
2458
+ bcc: import_zod40.default.array(MailUserSchema),
2459
+ attachments: import_zod40.default.array(AttachmentSchema)
1762
2460
  });
1763
2461
 
1764
2462
  // src/mail/schemas/room.schema.ts
1765
- var MailUserSchema = import_zod38.default.object({
1766
- id: import_zod38.default.string(),
1767
- createdAt: import_zod38.default.date(),
1768
- updatedAt: import_zod38.default.date(),
1769
- deletedAt: import_zod38.default.date().nullable(),
1770
- name: import_zod38.default.string(),
1771
- address: import_zod38.default.string()
1772
- });
1773
- var TagSchema2 = import_zod38.default.object({
1774
- color: import_zod38.default.string(),
1775
- id: import_zod38.default.string(),
1776
- createdAt: import_zod38.default.date(),
1777
- updatedAt: import_zod38.default.date(),
1778
- deletedAt: import_zod38.default.date().nullable(),
1779
- name: import_zod38.default.string()
1780
- });
1781
- var UserModel = import_zod38.default.object({
1782
- id: import_zod38.default.string().uuid(),
1783
- createdAt: import_zod38.default.date(),
1784
- updatedAt: import_zod38.default.date(),
1785
- deletedAt: import_zod38.default.date().nullable(),
1786
- name: import_zod38.default.string(),
1787
- email: import_zod38.default.string(),
1788
- address: import_zod38.default.string().nullable(),
1789
- phone: import_zod38.default.string().nullable(),
1790
- notification_count: import_zod38.default.number().nullable()
1791
- });
1792
- var ActivityLogModel = import_zod38.default.object({
1793
- id: import_zod38.default.string(),
1794
- createdAt: import_zod38.default.string(),
1795
- updatedAt: import_zod38.default.string(),
1796
- deletedAt: import_zod38.default.nullable(import_zod38.default.string()),
1797
- description: import_zod38.default.string(),
1798
- actorId: import_zod38.default.string(),
1799
- roomId: import_zod38.default.string(),
2463
+ var MailUserSchema = import_zod41.default.object({
2464
+ id: import_zod41.default.string(),
2465
+ createdAt: import_zod41.default.date(),
2466
+ updatedAt: import_zod41.default.date(),
2467
+ deletedAt: import_zod41.default.date().nullable(),
2468
+ name: import_zod41.default.string(),
2469
+ address: import_zod41.default.string()
2470
+ });
2471
+ var TagSchema2 = import_zod41.default.object({
2472
+ color: import_zod41.default.string(),
2473
+ id: import_zod41.default.string(),
2474
+ createdAt: import_zod41.default.date(),
2475
+ updatedAt: import_zod41.default.date(),
2476
+ deletedAt: import_zod41.default.date().nullable(),
2477
+ name: import_zod41.default.string()
2478
+ });
2479
+ var UserModel = import_zod41.default.object({
2480
+ id: import_zod41.default.string().uuid(),
2481
+ createdAt: import_zod41.default.date(),
2482
+ updatedAt: import_zod41.default.date(),
2483
+ deletedAt: import_zod41.default.date().nullable(),
2484
+ name: import_zod41.default.string(),
2485
+ email: import_zod41.default.string(),
2486
+ address: import_zod41.default.string().nullable(),
2487
+ phone: import_zod41.default.string().nullable(),
2488
+ notification_count: import_zod41.default.number().nullable()
2489
+ });
2490
+ var ActivityLogModel = import_zod41.default.object({
2491
+ id: import_zod41.default.string(),
2492
+ createdAt: import_zod41.default.string(),
2493
+ updatedAt: import_zod41.default.string(),
2494
+ deletedAt: import_zod41.default.nullable(import_zod41.default.string()),
2495
+ description: import_zod41.default.string(),
2496
+ actorId: import_zod41.default.string(),
2497
+ roomId: import_zod41.default.string(),
1800
2498
  actor: UserModel
1801
2499
  });
1802
- var MessagesAndLogs = import_zod38.default.array(import_zod38.default.union([MessageSchema2, ActivityLogModel]));
1803
- var MailRoomSchema = import_zod38.default.object({
1804
- id: import_zod38.default.string(),
1805
- createdAt: import_zod38.default.date(),
1806
- updatedAt: import_zod38.default.date(),
1807
- deletedAt: import_zod38.default.date().nullable(),
1808
- subject: import_zod38.default.string(),
1809
- resolved: import_zod38.default.boolean(),
1810
- assigneeId: import_zod38.default.string().nullable(),
1811
- note: import_zod38.default.string(),
1812
- mailId: import_zod38.default.string(),
1813
- direction: import_zod38.default.string(),
1814
- lastMessageId: import_zod38.default.string(),
1815
- firstMessageId: import_zod38.default.string(),
1816
- from: import_zod38.default.array(MailUserSchema),
1817
- to: import_zod38.default.array(MailUserSchema),
1818
- cc: import_zod38.default.array(MailUserSchema),
1819
- bcc: import_zod38.default.array(MailUserSchema),
2500
+ var MessagesAndLogs = import_zod41.default.array(import_zod41.default.union([MessageSchema2, ActivityLogModel]));
2501
+ var MailRoomSchema = import_zod41.default.object({
2502
+ id: import_zod41.default.string(),
2503
+ createdAt: import_zod41.default.date(),
2504
+ updatedAt: import_zod41.default.date(),
2505
+ deletedAt: import_zod41.default.date().nullable(),
2506
+ subject: import_zod41.default.string(),
2507
+ resolved: import_zod41.default.boolean(),
2508
+ assigneeId: import_zod41.default.string().nullable(),
2509
+ note: import_zod41.default.string(),
2510
+ mailId: import_zod41.default.string(),
2511
+ direction: import_zod41.default.string(),
2512
+ lastMessageId: import_zod41.default.string(),
2513
+ firstMessageId: import_zod41.default.string(),
2514
+ from: import_zod41.default.array(MailUserSchema),
2515
+ to: import_zod41.default.array(MailUserSchema),
2516
+ cc: import_zod41.default.array(MailUserSchema),
2517
+ bcc: import_zod41.default.array(MailUserSchema),
1820
2518
  firstMessage: MessageSchema2,
1821
2519
  lastMessage: MessageSchema2,
1822
- tags: import_zod38.default.array(TagSchema2),
2520
+ tags: import_zod41.default.array(TagSchema2),
1823
2521
  assignee: UserModel,
1824
- messages: import_zod38.default.array(MessageSchema2),
2522
+ messages: import_zod41.default.array(MessageSchema2),
1825
2523
  messagesAndLogs: MessagesAndLogs,
1826
2524
  mail: MailAccountSchema,
1827
- unReadMessageCount: import_zod38.default.number()
1828
- });
1829
- var AttachmentSchema2 = import_zod38.default.object({
1830
- fileName: import_zod38.default.string(),
1831
- fileType: import_zod38.default.string(),
1832
- emailEngineAttachmentId: import_zod38.default.string(),
1833
- uploadId: import_zod38.default.string(),
1834
- messageId: import_zod38.default.string(),
1835
- roomId: import_zod38.default.string(),
2525
+ unReadMessageCount: import_zod41.default.number()
2526
+ });
2527
+ var AttachmentSchema2 = import_zod41.default.object({
2528
+ fileName: import_zod41.default.string(),
2529
+ fileType: import_zod41.default.string(),
2530
+ emailEngineAttachmentId: import_zod41.default.string(),
2531
+ uploadId: import_zod41.default.string(),
2532
+ messageId: import_zod41.default.string(),
2533
+ roomId: import_zod41.default.string(),
1836
2534
  upload: UploadSchema
1837
2535
  });
1838
2536
 
1839
2537
  // src/mail/room-contract.ts
1840
- var roomContract = (0, import_core12.initContract)().router(
2538
+ var roomContract = (0, import_core13.initContract)().router(
1841
2539
  {
1842
2540
  create: {
1843
2541
  method: "POST",
1844
2542
  path: "/",
1845
2543
  responses: {
1846
2544
  200: DefaultSuccessResponseSchema.extend({
1847
- message: import_zod39.default.string()
2545
+ message: import_zod42.default.string()
1848
2546
  }),
1849
2547
  ...DefaultResponses
1850
2548
  },
@@ -1854,19 +2552,19 @@ var roomContract = (0, import_core12.initContract)().router(
1854
2552
  getAll: {
1855
2553
  method: "GET",
1856
2554
  path: "",
1857
- query: import_zod39.default.object({
1858
- page: import_zod39.default.coerce.number().default(1),
1859
- pageSize: import_zod39.default.coerce.number().default(10),
1860
- keyword: import_zod39.default.string().optional(),
1861
- assigneeId: import_zod39.default.string().uuid().optional().nullable(),
1862
- resolved: import_zod39.default.boolean().or(import_zod39.default.string().transform((value) => value.toLowerCase() === "true")).optional().nullable()
2555
+ query: import_zod42.default.object({
2556
+ page: import_zod42.default.coerce.number().default(1),
2557
+ pageSize: import_zod42.default.coerce.number().default(10),
2558
+ keyword: import_zod42.default.string().optional(),
2559
+ assigneeId: import_zod42.default.string().uuid().optional().nullable(),
2560
+ resolved: import_zod42.default.boolean().or(import_zod42.default.string().transform((value) => value.toLowerCase() === "true")).optional().nullable()
1863
2561
  }),
1864
2562
  responses: {
1865
2563
  200: DefaultSuccessResponseSchema.extend({
1866
- data: import_zod39.default.array(MailRoomSchema),
1867
- total: import_zod39.default.number(),
1868
- page: import_zod39.default.number(),
1869
- pageSize: import_zod39.default.number()
2564
+ data: import_zod42.default.array(MailRoomSchema),
2565
+ total: import_zod42.default.number(),
2566
+ page: import_zod42.default.number(),
2567
+ pageSize: import_zod42.default.number()
1870
2568
  }),
1871
2569
  ...DefaultResponses
1872
2570
  },
@@ -1875,8 +2573,8 @@ var roomContract = (0, import_core12.initContract)().router(
1875
2573
  getById: {
1876
2574
  method: "GET",
1877
2575
  path: "/:id",
1878
- pathParams: import_zod39.default.object({
1879
- id: import_zod39.default.string().uuid()
2576
+ pathParams: import_zod42.default.object({
2577
+ id: import_zod42.default.string().uuid()
1880
2578
  }),
1881
2579
  responses: {
1882
2580
  200: DefaultSuccessResponseSchema.extend({
@@ -1889,12 +2587,12 @@ var roomContract = (0, import_core12.initContract)().router(
1889
2587
  getAttachments: {
1890
2588
  method: "GET",
1891
2589
  path: "/:id/attachments",
1892
- pathParams: import_zod39.default.object({
1893
- id: import_zod39.default.string().uuid()
2590
+ pathParams: import_zod42.default.object({
2591
+ id: import_zod42.default.string().uuid()
1894
2592
  }),
1895
2593
  responses: {
1896
2594
  200: DefaultSuccessResponseSchema.extend({
1897
- data: import_zod39.default.array(AttachmentSchema2)
2595
+ data: import_zod42.default.array(AttachmentSchema2)
1898
2596
  }),
1899
2597
  ...DefaultResponses
1900
2598
  },
@@ -1903,12 +2601,12 @@ var roomContract = (0, import_core12.initContract)().router(
1903
2601
  getParticipants: {
1904
2602
  method: "GET",
1905
2603
  path: "/:id/participants",
1906
- pathParams: import_zod39.default.object({
1907
- id: import_zod39.default.string().uuid()
2604
+ pathParams: import_zod42.default.object({
2605
+ id: import_zod42.default.string().uuid()
1908
2606
  }),
1909
2607
  responses: {
1910
2608
  200: DefaultSuccessResponseSchema.extend({
1911
- data: import_zod39.default.array(MailUserSchema)
2609
+ data: import_zod42.default.array(MailUserSchema)
1912
2610
  }),
1913
2611
  ...DefaultResponses
1914
2612
  },
@@ -1917,8 +2615,8 @@ var roomContract = (0, import_core12.initContract)().router(
1917
2615
  update: {
1918
2616
  method: "PATCH",
1919
2617
  path: "/:id",
1920
- pathParams: import_zod39.default.object({
1921
- id: import_zod39.default.string()
2618
+ pathParams: import_zod42.default.object({
2619
+ id: import_zod42.default.string()
1922
2620
  }),
1923
2621
  responses: {
1924
2622
  200: DefaultSuccessResponseSchema.extend({
@@ -1926,15 +2624,15 @@ var roomContract = (0, import_core12.initContract)().router(
1926
2624
  }),
1927
2625
  ...DefaultResponses
1928
2626
  },
1929
- body: import_zod39.default.object({
1930
- resolved: import_zod39.default.boolean().or(
1931
- import_zod39.default.union([import_zod39.default.literal("true"), import_zod39.default.literal("false")]).transform((value) => value.toLowerCase() === "true")
2627
+ body: import_zod42.default.object({
2628
+ resolved: import_zod42.default.boolean().or(
2629
+ import_zod42.default.union([import_zod42.default.literal("true"), import_zod42.default.literal("false")]).transform((value) => value.toLowerCase() === "true")
1932
2630
  ).optional().nullable(),
1933
- assigneeId: import_zod39.default.string().uuid().optional().nullable(),
1934
- note: import_zod39.default.string().optional(),
1935
- tags: import_zod39.default.array(import_zod39.default.string().uuid()).optional(),
1936
- handover: import_zod39.default.boolean().or(
1937
- import_zod39.default.union([import_zod39.default.literal("true"), import_zod39.default.literal("false")]).transform((value) => value.toLowerCase() === "true")
2631
+ assigneeId: import_zod42.default.string().uuid().optional().nullable(),
2632
+ note: import_zod42.default.string().optional(),
2633
+ tags: import_zod42.default.array(import_zod42.default.string().uuid()).optional(),
2634
+ handover: import_zod42.default.boolean().or(
2635
+ import_zod42.default.union([import_zod42.default.literal("true"), import_zod42.default.literal("false")]).transform((value) => value.toLowerCase() === "true")
1938
2636
  ).optional().nullable()
1939
2637
  }),
1940
2638
  summary: "Update a mail room by id"
@@ -1942,12 +2640,12 @@ var roomContract = (0, import_core12.initContract)().router(
1942
2640
  markAsRead: {
1943
2641
  method: "GET",
1944
2642
  path: "/:id",
1945
- pathParams: import_zod39.default.object({
1946
- id: import_zod39.default.string().uuid()
2643
+ pathParams: import_zod42.default.object({
2644
+ id: import_zod42.default.string().uuid()
1947
2645
  }),
1948
2646
  responses: {
1949
2647
  200: DefaultSuccessResponseSchema.extend({
1950
- message: import_zod39.default.string()
2648
+ message: import_zod42.default.string()
1951
2649
  }),
1952
2650
  ...DefaultResponses
1953
2651
  },
@@ -1960,55 +2658,55 @@ var roomContract = (0, import_core12.initContract)().router(
1960
2658
  );
1961
2659
 
1962
2660
  // src/mail/account-contract.ts
1963
- var import_core13 = require("@ts-rest/core");
1964
- var import_zod41 = __toESM(require("zod"));
2661
+ var import_core14 = require("@ts-rest/core");
2662
+ var import_zod44 = __toESM(require("zod"));
1965
2663
 
1966
2664
  // src/mail/schemas/account-validation.schema.ts
1967
- var import_zod40 = __toESM(require("zod"));
2665
+ var import_zod43 = __toESM(require("zod"));
1968
2666
  var AccountContractsValidationSchemas = {
1969
2667
  create: {
1970
- input: import_zod40.default.object({
1971
- address: import_zod40.default.string().email("Email address must be valid email."),
1972
- name: import_zod40.default.string().min(1, "Account name cannot be empty."),
1973
- password: import_zod40.default.string().min(1, "Password cannot be empty."),
1974
- mailServerId: import_zod40.default.string().uuid("Invalid mail_server_id")
2668
+ input: import_zod43.default.object({
2669
+ address: import_zod43.default.string().email("Email address must be valid email."),
2670
+ name: import_zod43.default.string().min(1, "Account name cannot be empty."),
2671
+ password: import_zod43.default.string().min(1, "Password cannot be empty."),
2672
+ mailServerId: import_zod43.default.string().uuid("Invalid mail_server_id")
1975
2673
  })
1976
2674
  },
1977
2675
  getById: {
1978
- input: import_zod40.default.object({
1979
- id: import_zod40.default.string().uuid()
2676
+ input: import_zod43.default.object({
2677
+ id: import_zod43.default.string().uuid()
1980
2678
  }),
1981
2679
  output: MailAccountSchema
1982
2680
  },
1983
2681
  getAll: {
1984
- output: import_zod40.default.array(MailAccountSchema)
2682
+ output: import_zod43.default.array(MailAccountSchema)
1985
2683
  },
1986
2684
  update: {
1987
2685
  input: MailAccountSchema,
1988
2686
  output: MailAccountSchema
1989
2687
  },
1990
2688
  disconnect: {
1991
- input: import_zod40.default.object({
1992
- id: import_zod40.default.string().uuid()
2689
+ input: import_zod43.default.object({
2690
+ id: import_zod43.default.string().uuid()
1993
2691
  }),
1994
2692
  output: MailAccountSchema
1995
2693
  },
1996
2694
  reconnect: {
1997
- input: import_zod40.default.object({
1998
- id: import_zod40.default.string()
2695
+ input: import_zod43.default.object({
2696
+ id: import_zod43.default.string()
1999
2697
  }),
2000
2698
  output: MailAccountSchema
2001
2699
  },
2002
2700
  delete: {
2003
- input: import_zod40.default.object({
2004
- id: import_zod40.default.string()
2701
+ input: import_zod43.default.object({
2702
+ id: import_zod43.default.string()
2005
2703
  }),
2006
2704
  output: MailAccountSchema
2007
2705
  }
2008
2706
  };
2009
2707
 
2010
2708
  // src/mail/account-contract.ts
2011
- var accountContract = (0, import_core13.initContract)().router(
2709
+ var accountContract = (0, import_core14.initContract)().router(
2012
2710
  {
2013
2711
  //#region ........register account
2014
2712
  create: {
@@ -2017,16 +2715,16 @@ var accountContract = (0, import_core13.initContract)().router(
2017
2715
  responses: {
2018
2716
  201: DefaultSuccessResponseSchema.extend({
2019
2717
  // data: AccountContractsValidationSchemas.create.output,
2020
- message: import_zod41.default.string()
2718
+ message: import_zod44.default.string()
2021
2719
  }),
2022
- 400: import_zod41.default.object({
2023
- message: import_zod41.default.string()
2720
+ 400: import_zod44.default.object({
2721
+ message: import_zod44.default.string()
2024
2722
  }),
2025
- 409: import_zod41.default.object({
2026
- message: import_zod41.default.string()
2723
+ 409: import_zod44.default.object({
2724
+ message: import_zod44.default.string()
2027
2725
  }),
2028
- 500: import_zod41.default.object({
2029
- message: import_zod41.default.string()
2726
+ 500: import_zod44.default.object({
2727
+ message: import_zod44.default.string()
2030
2728
  }),
2031
2729
  ...DefaultResponses
2032
2730
  },
@@ -2055,7 +2753,7 @@ var accountContract = (0, import_core13.initContract)().router(
2055
2753
  path: "",
2056
2754
  responses: {
2057
2755
  200: DefaultSuccessResponseSchema.extend({
2058
- data: import_zod41.default.any()
2756
+ data: import_zod44.default.any()
2059
2757
  // data: AccountContractsValidationSchemas.getAll.output,
2060
2758
  }),
2061
2759
  ...DefaultResponses
@@ -2067,8 +2765,8 @@ var accountContract = (0, import_core13.initContract)().router(
2067
2765
  update: {
2068
2766
  method: "PATCH",
2069
2767
  path: "/:id",
2070
- pathParams: import_zod41.default.object({
2071
- id: import_zod41.default.string().uuid()
2768
+ pathParams: import_zod44.default.object({
2769
+ id: import_zod44.default.string().uuid()
2072
2770
  }),
2073
2771
  responses: {
2074
2772
  201: DefaultSuccessResponseSchema.extend({
@@ -2117,7 +2815,7 @@ var accountContract = (0, import_core13.initContract)().router(
2117
2815
  pathParams: AccountContractsValidationSchemas.delete.input,
2118
2816
  responses: {
2119
2817
  200: DefaultSuccessResponseSchema.extend({
2120
- message: import_zod41.default.string()
2818
+ message: import_zod44.default.string()
2121
2819
  }),
2122
2820
  ...DefaultResponses
2123
2821
  },
@@ -2133,16 +2831,16 @@ var accountContract = (0, import_core13.initContract)().router(
2133
2831
  );
2134
2832
 
2135
2833
  // src/mail/mail-server-contract.ts
2136
- var import_core14 = require("@ts-rest/core");
2137
- var import_zod42 = __toESM(require("zod"));
2138
- var serverContract = (0, import_core14.initContract)().router(
2834
+ var import_core15 = require("@ts-rest/core");
2835
+ var import_zod45 = __toESM(require("zod"));
2836
+ var serverContract = (0, import_core15.initContract)().router(
2139
2837
  {
2140
2838
  create: {
2141
2839
  method: "POST",
2142
2840
  path: "/",
2143
2841
  responses: {
2144
2842
  200: DefaultSuccessResponseSchema.extend({
2145
- message: import_zod42.default.string()
2843
+ message: import_zod45.default.string()
2146
2844
  }),
2147
2845
  ...DefaultResponses
2148
2846
  },
@@ -2152,12 +2850,12 @@ var serverContract = (0, import_core14.initContract)().router(
2152
2850
  get: {
2153
2851
  method: "GET",
2154
2852
  path: "/:id",
2155
- pathParams: import_zod42.default.object({
2156
- id: import_zod42.default.string()
2853
+ pathParams: import_zod45.default.object({
2854
+ id: import_zod45.default.string()
2157
2855
  }),
2158
2856
  responses: {
2159
2857
  200: DefaultSuccessResponseSchema.extend({
2160
- message: import_zod42.default.string()
2858
+ message: import_zod45.default.string()
2161
2859
  }),
2162
2860
  ...DefaultResponses
2163
2861
  },
@@ -2166,12 +2864,12 @@ var serverContract = (0, import_core14.initContract)().router(
2166
2864
  update: {
2167
2865
  method: "PATCH",
2168
2866
  path: "/:id",
2169
- pathParams: import_zod42.default.object({
2170
- id: import_zod42.default.string()
2867
+ pathParams: import_zod45.default.object({
2868
+ id: import_zod45.default.string()
2171
2869
  }),
2172
2870
  responses: {
2173
2871
  200: DefaultSuccessResponseSchema.extend({
2174
- message: import_zod42.default.string()
2872
+ message: import_zod45.default.string()
2175
2873
  }),
2176
2874
  ...DefaultResponses
2177
2875
  },
@@ -2181,12 +2879,12 @@ var serverContract = (0, import_core14.initContract)().router(
2181
2879
  delete: {
2182
2880
  method: "PATCH",
2183
2881
  path: "/:id",
2184
- pathParams: import_zod42.default.object({
2185
- id: import_zod42.default.string()
2882
+ pathParams: import_zod45.default.object({
2883
+ id: import_zod45.default.string()
2186
2884
  }),
2187
2885
  responses: {
2188
2886
  200: DefaultSuccessResponseSchema.extend({
2189
- message: import_zod42.default.string()
2887
+ message: import_zod45.default.string()
2190
2888
  }),
2191
2889
  ...DefaultResponses
2192
2890
  },
@@ -2200,51 +2898,51 @@ var serverContract = (0, import_core14.initContract)().router(
2200
2898
  );
2201
2899
 
2202
2900
  // src/mail/message-contract.ts
2203
- var import_core15 = require("@ts-rest/core");
2204
- var import_zod44 = __toESM(require("zod"));
2901
+ var import_core16 = require("@ts-rest/core");
2902
+ var import_zod47 = __toESM(require("zod"));
2205
2903
 
2206
2904
  // src/mail/schemas/message-validation.schema.ts
2207
- var import_zod43 = __toESM(require("zod"));
2208
- var MailParticipant = import_zod43.default.object({
2209
- name: import_zod43.default.string().optional(),
2210
- address: import_zod43.default.string().email()
2905
+ var import_zod46 = __toESM(require("zod"));
2906
+ var MailParticipant = import_zod46.default.object({
2907
+ name: import_zod46.default.string().optional(),
2908
+ address: import_zod46.default.string().email()
2211
2909
  });
2212
2910
  var MessageContractsValidationsSchema = {
2213
2911
  submit: {
2214
- input: import_zod43.default.object({
2215
- subject: import_zod43.default.string(),
2216
- text: import_zod43.default.string(),
2217
- html: import_zod43.default.string(),
2912
+ input: import_zod46.default.object({
2913
+ subject: import_zod46.default.string(),
2914
+ text: import_zod46.default.string(),
2915
+ html: import_zod46.default.string(),
2218
2916
  from: MailParticipant,
2219
- to: import_zod43.default.array(MailParticipant),
2220
- cc: import_zod43.default.array(MailParticipant).optional(),
2221
- bcc: import_zod43.default.array(MailParticipant).optional(),
2222
- reference: import_zod43.default.object({
2223
- messageId: import_zod43.default.string(),
2224
- action: import_zod43.default.union([import_zod43.default.literal("reply"), import_zod43.default.literal("forward")])
2917
+ to: import_zod46.default.array(MailParticipant),
2918
+ cc: import_zod46.default.array(MailParticipant).optional(),
2919
+ bcc: import_zod46.default.array(MailParticipant).optional(),
2920
+ reference: import_zod46.default.object({
2921
+ messageId: import_zod46.default.string(),
2922
+ action: import_zod46.default.union([import_zod46.default.literal("reply"), import_zod46.default.literal("forward")])
2225
2923
  }).optional(),
2226
- attachments: import_zod43.default.array(
2227
- import_zod43.default.object({
2228
- fileType: import_zod43.default.string(),
2229
- fileName: import_zod43.default.string(),
2230
- fileKey: import_zod43.default.string(),
2231
- fileSize: import_zod43.default.number(),
2232
- bucketName: import_zod43.default.string(),
2233
- presignedUrl: import_zod43.default.string()
2924
+ attachments: import_zod46.default.array(
2925
+ import_zod46.default.object({
2926
+ fileType: import_zod46.default.string(),
2927
+ fileName: import_zod46.default.string(),
2928
+ fileKey: import_zod46.default.string(),
2929
+ fileSize: import_zod46.default.number(),
2930
+ bucketName: import_zod46.default.string(),
2931
+ presignedUrl: import_zod46.default.string()
2234
2932
  })
2235
2933
  ).optional()
2236
2934
  }),
2237
- output: import_zod43.default.object({
2238
- response: import_zod43.default.string(),
2239
- messageId: import_zod43.default.string(),
2240
- sendAt: import_zod43.default.string(),
2241
- queueId: import_zod43.default.string()
2935
+ output: import_zod46.default.object({
2936
+ response: import_zod46.default.string(),
2937
+ messageId: import_zod46.default.string(),
2938
+ sendAt: import_zod46.default.string(),
2939
+ queueId: import_zod46.default.string()
2242
2940
  })
2243
2941
  }
2244
2942
  };
2245
2943
 
2246
2944
  // src/mail/message-contract.ts
2247
- var messageContract = (0, import_core15.initContract)().router(
2945
+ var messageContract = (0, import_core16.initContract)().router(
2248
2946
  {
2249
2947
  submit: {
2250
2948
  method: "POST",
@@ -2263,8 +2961,8 @@ var messageContract = (0, import_core15.initContract)().router(
2263
2961
  getById: {
2264
2962
  method: "GET",
2265
2963
  path: "/:id",
2266
- pathParams: import_zod44.default.object({
2267
- id: import_zod44.default.string()
2964
+ pathParams: import_zod47.default.object({
2965
+ id: import_zod47.default.string()
2268
2966
  }),
2269
2967
  responses: {
2270
2968
  200: DefaultSuccessResponseSchema.extend({
@@ -2282,7 +2980,7 @@ var messageContract = (0, import_core15.initContract)().router(
2282
2980
  );
2283
2981
 
2284
2982
  // src/mail/mail-contract.ts
2285
- var mailContract = (0, import_core16.initContract)().router({
2983
+ var mailContract = (0, import_core17.initContract)().router({
2286
2984
  room: roomContract,
2287
2985
  message: messageContract,
2288
2986
  account: accountContract,
@@ -2290,14 +2988,15 @@ var mailContract = (0, import_core16.initContract)().router({
2290
2988
  });
2291
2989
 
2292
2990
  // src/messenger/index.ts
2293
- var import_core17 = require("@ts-rest/core");
2294
- var messengerContract = (0, import_core17.initContract)().router({
2991
+ var import_core18 = require("@ts-rest/core");
2992
+ var messengerContract = (0, import_core18.initContract)().router({
2295
2993
  sendMessage: {
2296
2994
  method: "POST",
2297
2995
  path: "/message",
2298
2996
  body: SendMessageToPlatformSchema,
2299
2997
  responses: {
2300
- 200: DefaultSuccessResponseSchema
2998
+ 200: SendMessageResponseSchema,
2999
+ 500: DefaultErrorResponseSchema
2301
3000
  }
2302
3001
  }
2303
3002
  }, {
@@ -2305,18 +3004,18 @@ var messengerContract = (0, import_core17.initContract)().router({
2305
3004
  });
2306
3005
 
2307
3006
  // src/permission/index.ts
2308
- var import_core18 = require("@ts-rest/core");
2309
- var import_zod45 = __toESM(require("zod"));
2310
- var permissionContract = (0, import_core18.initContract)().router(
3007
+ var import_core19 = require("@ts-rest/core");
3008
+ var import_zod48 = __toESM(require("zod"));
3009
+ var permissionContract = (0, import_core19.initContract)().router(
2311
3010
  {
2312
3011
  getPermissions: {
2313
3012
  method: "GET",
2314
3013
  path: "",
2315
3014
  headers: DefaultHeaderSchema,
2316
3015
  responses: {
2317
- 200: import_zod45.default.object({ permissions: PermissionSchema.array() }),
2318
- 400: import_zod45.default.object({
2319
- message: import_zod45.default.string()
3016
+ 200: import_zod48.default.object({ permissions: PermissionSchema.array() }),
3017
+ 400: import_zod48.default.object({
3018
+ message: import_zod48.default.string()
2320
3019
  }),
2321
3020
  401: DefaultUnauthorizedSchema,
2322
3021
  500: DefaultErrorResponseSchema
@@ -2328,21 +3027,21 @@ var permissionContract = (0, import_core18.initContract)().router(
2328
3027
  );
2329
3028
 
2330
3029
  // src/role/index.ts
2331
- var import_core19 = require("@ts-rest/core");
2332
- var import_zod47 = __toESM(require("zod"));
3030
+ var import_core20 = require("@ts-rest/core");
3031
+ var import_zod50 = __toESM(require("zod"));
2333
3032
 
2334
3033
  // src/role/validation.ts
2335
- var import_zod46 = require("zod");
2336
- var CreateRoleSchema = import_zod46.z.object({
2337
- systemName: import_zod46.z.string(),
2338
- displayName: import_zod46.z.string(),
2339
- description: import_zod46.z.string().nullable(),
2340
- permissions: import_zod46.z.array(import_zod46.z.string())
3034
+ var import_zod49 = require("zod");
3035
+ var CreateRoleSchema = import_zod49.z.object({
3036
+ systemName: import_zod49.z.string(),
3037
+ displayName: import_zod49.z.string(),
3038
+ description: import_zod49.z.string().nullable(),
3039
+ permissions: import_zod49.z.array(import_zod49.z.string())
2341
3040
  });
2342
3041
  var UpdateRoleSchema = CreateRoleSchema;
2343
3042
 
2344
3043
  // src/role/index.ts
2345
- var roleContract = (0, import_core19.initContract)().router(
3044
+ var roleContract = (0, import_core20.initContract)().router(
2346
3045
  {
2347
3046
  createRole: {
2348
3047
  method: "POST",
@@ -2353,8 +3052,8 @@ var roleContract = (0, import_core19.initContract)().router(
2353
3052
  201: DefaultSuccessResponseSchema.extend({
2354
3053
  role: RoleSchema
2355
3054
  }),
2356
- 400: import_zod47.default.object({
2357
- message: import_zod47.default.string()
3055
+ 400: import_zod50.default.object({
3056
+ message: import_zod50.default.string()
2358
3057
  }),
2359
3058
  401: DefaultUnauthorizedSchema,
2360
3059
  500: DefaultErrorResponseSchema
@@ -2364,15 +3063,15 @@ var roleContract = (0, import_core19.initContract)().router(
2364
3063
  getRoles: {
2365
3064
  method: "GET",
2366
3065
  path: "",
2367
- query: import_zod47.default.object({
2368
- page: import_zod47.default.coerce.number().default(1),
2369
- pageSize: import_zod47.default.coerce.number().default(10)
3066
+ query: import_zod50.default.object({
3067
+ page: import_zod50.default.coerce.number().default(1),
3068
+ pageSize: import_zod50.default.coerce.number().default(10)
2370
3069
  }).optional(),
2371
3070
  headers: DefaultHeaderSchema,
2372
3071
  responses: {
2373
3072
  200: WithPagination(RoleSchema),
2374
- 400: import_zod47.default.object({
2375
- message: import_zod47.default.string()
3073
+ 400: import_zod50.default.object({
3074
+ message: import_zod50.default.string()
2376
3075
  }),
2377
3076
  401: DefaultUnauthorizedSchema,
2378
3077
  500: DefaultErrorResponseSchema
@@ -2382,15 +3081,15 @@ var roleContract = (0, import_core19.initContract)().router(
2382
3081
  updateRole: {
2383
3082
  method: "PATCH",
2384
3083
  path: "/:id",
2385
- pathParams: import_zod47.default.object({ id: import_zod47.default.string() }),
3084
+ pathParams: import_zod50.default.object({ id: import_zod50.default.string() }),
2386
3085
  headers: DefaultHeaderSchema,
2387
3086
  body: UpdateRoleSchema,
2388
3087
  responses: {
2389
3088
  201: DefaultSuccessResponseSchema.extend({
2390
3089
  role: RoleSchema
2391
3090
  }),
2392
- 400: import_zod47.default.object({
2393
- message: import_zod47.default.string()
3091
+ 400: import_zod50.default.object({
3092
+ message: import_zod50.default.string()
2394
3093
  }),
2395
3094
  401: DefaultUnauthorizedSchema,
2396
3095
  500: DefaultErrorResponseSchema
@@ -2400,11 +3099,11 @@ var roleContract = (0, import_core19.initContract)().router(
2400
3099
  deleteRole: {
2401
3100
  method: "DELETE",
2402
3101
  path: "/:id",
2403
- pathParams: import_zod47.default.object({ id: import_zod47.default.string() }),
3102
+ pathParams: import_zod50.default.object({ id: import_zod50.default.string() }),
2404
3103
  headers: DefaultHeaderSchema,
2405
3104
  body: null,
2406
3105
  responses: {
2407
- 200: DefaultSuccessResponseSchema.extend({ message: import_zod47.default.string() }),
3106
+ 200: DefaultSuccessResponseSchema.extend({ message: import_zod50.default.string() }),
2408
3107
  500: DefaultErrorResponseSchema
2409
3108
  },
2410
3109
  summary: "Delete a role."
@@ -2414,23 +3113,23 @@ var roleContract = (0, import_core19.initContract)().router(
2414
3113
  );
2415
3114
 
2416
3115
  // src/tag/index.ts
2417
- var import_core20 = require("@ts-rest/core");
2418
- var import_zod49 = __toESM(require("zod"));
3116
+ var import_core21 = require("@ts-rest/core");
3117
+ var import_zod52 = __toESM(require("zod"));
2419
3118
 
2420
3119
  // src/tag/validation.ts
2421
- var import_zod48 = require("zod");
2422
- var CreateTagSchema = import_zod48.z.object({
2423
- name: import_zod48.z.string(),
3120
+ var import_zod51 = require("zod");
3121
+ var CreateTagSchema = import_zod51.z.object({
3122
+ name: import_zod51.z.string(),
2424
3123
  group: TagGroupSchema
2425
3124
  });
2426
- var GetTagsSchema = import_zod48.z.object({
3125
+ var GetTagsSchema = import_zod51.z.object({
2427
3126
  group: TagGroupSchema.default("general"),
2428
- keyword: import_zod48.z.string()
3127
+ keyword: import_zod51.z.string()
2429
3128
  }).partial().optional();
2430
- var UpdateTagSchema = import_zod48.z.object({ name: import_zod48.z.string() });
3129
+ var UpdateTagSchema = import_zod51.z.object({ name: import_zod51.z.string() });
2431
3130
 
2432
3131
  // src/tag/index.ts
2433
- var tagContract = (0, import_core20.initContract)().router(
3132
+ var tagContract = (0, import_core21.initContract)().router(
2434
3133
  {
2435
3134
  createTag: {
2436
3135
  method: "POST",
@@ -2450,7 +3149,7 @@ var tagContract = (0, import_core20.initContract)().router(
2450
3149
  query: GetTagsSchema,
2451
3150
  responses: {
2452
3151
  200: DefaultSuccessResponseSchema.extend({
2453
- tags: import_zod49.default.array(TagSchema)
3152
+ tags: import_zod52.default.array(TagSchema)
2454
3153
  }),
2455
3154
  500: DefaultErrorResponseSchema
2456
3155
  },
@@ -2459,7 +3158,7 @@ var tagContract = (0, import_core20.initContract)().router(
2459
3158
  updateTag: {
2460
3159
  method: "PATCH",
2461
3160
  path: "/:id",
2462
- pathParams: import_zod49.default.object({ id: import_zod49.default.string() }),
3161
+ pathParams: import_zod52.default.object({ id: import_zod52.default.string() }),
2463
3162
  body: UpdateTagSchema,
2464
3163
  responses: {
2465
3164
  200: DefaultSuccessResponseSchema.extend({
@@ -2472,11 +3171,11 @@ var tagContract = (0, import_core20.initContract)().router(
2472
3171
  deleteTag: {
2473
3172
  method: "DELETE",
2474
3173
  path: "/:id",
2475
- pathParams: import_zod49.default.object({ id: import_zod49.default.string() }),
2476
- body: import_zod49.default.any().optional(),
3174
+ pathParams: import_zod52.default.object({ id: import_zod52.default.string() }),
3175
+ body: import_zod52.default.any().optional(),
2477
3176
  // We don't need the body.
2478
3177
  responses: {
2479
- 200: DefaultSuccessResponseSchema.extend({ message: import_zod49.default.string() }),
3178
+ 200: DefaultSuccessResponseSchema.extend({ message: import_zod52.default.string() }),
2480
3179
  500: DefaultErrorResponseSchema
2481
3180
  },
2482
3181
  headers: DefaultHeaderSchema
@@ -2488,41 +3187,41 @@ var tagContract = (0, import_core20.initContract)().router(
2488
3187
  );
2489
3188
 
2490
3189
  // src/telephony-agent-presence-status/index.ts
2491
- var import_core21 = require("@ts-rest/core");
2492
- var import_zod52 = __toESM(require("zod"));
3190
+ var import_core22 = require("@ts-rest/core");
3191
+ var import_zod55 = __toESM(require("zod"));
2493
3192
 
2494
3193
  // src/telephony-agent-presence-status/schema.ts
2495
- var import_zod50 = __toESM(require("zod"));
3194
+ var import_zod53 = __toESM(require("zod"));
2496
3195
  var PresenceStatusSchema = DefaultEntitySchema.extend({
2497
- status: import_zod50.default.string(),
2498
- description: import_zod50.default.string()
3196
+ status: import_zod53.default.string(),
3197
+ description: import_zod53.default.string()
2499
3198
  });
2500
3199
  var UserPresenceStatusSchema = DefaultEntitySchema.extend({
2501
3200
  user: UserSchema,
2502
3201
  presenceStatus: PresenceStatusSchema,
2503
- customPresenceStatus: import_zod50.default.string().nullable().optional()
3202
+ customPresenceStatus: import_zod53.default.string().nullable().optional()
2504
3203
  });
2505
3204
 
2506
3205
  // src/telephony-agent-presence-status/validation.ts
2507
- var import_zod51 = require("zod");
2508
- var UpdateUserStatusSchema = import_zod51.z.object({
2509
- userId: import_zod51.z.string(),
2510
- presenceStatusId: import_zod51.z.string().nullable().optional(),
2511
- customPreseneStatus: import_zod51.z.string().nullable().optional(),
2512
- reason: import_zod51.z.string()
3206
+ var import_zod54 = require("zod");
3207
+ var UpdateUserStatusSchema = import_zod54.z.object({
3208
+ userId: import_zod54.z.string(),
3209
+ presenceStatusId: import_zod54.z.string().nullable().optional(),
3210
+ customPreseneStatus: import_zod54.z.string().nullable().optional(),
3211
+ reason: import_zod54.z.string()
2513
3212
  });
2514
3213
 
2515
3214
  // src/telephony-agent-presence-status/index.ts
2516
- var telephonyAgentPresenceStatusContract = (0, import_core21.initContract)().router(
3215
+ var telephonyAgentPresenceStatusContract = (0, import_core22.initContract)().router(
2517
3216
  {
2518
3217
  getAllStatus: {
2519
3218
  method: "GET",
2520
3219
  path: "/presence_status",
2521
3220
  headers: DefaultHeaderSchema,
2522
3221
  responses: {
2523
- 200: import_zod52.default.array(PresenceStatusSchema),
2524
- 400: import_zod52.default.object({
2525
- message: import_zod52.default.string()
3222
+ 200: import_zod55.default.array(PresenceStatusSchema),
3223
+ 400: import_zod55.default.object({
3224
+ message: import_zod55.default.string()
2526
3225
  }),
2527
3226
  401: DefaultUnauthorizedSchema,
2528
3227
  500: DefaultErrorResponseSchema
@@ -2534,9 +3233,9 @@ var telephonyAgentPresenceStatusContract = (0, import_core21.initContract)().rou
2534
3233
  path: "/agents/presence_status",
2535
3234
  headers: DefaultHeaderSchema,
2536
3235
  responses: {
2537
- 200: import_zod52.default.array(UserPresenceStatusSchema),
2538
- 400: import_zod52.default.object({
2539
- message: import_zod52.default.string()
3236
+ 200: import_zod55.default.array(UserPresenceStatusSchema),
3237
+ 400: import_zod55.default.object({
3238
+ message: import_zod55.default.string()
2540
3239
  }),
2541
3240
  401: DefaultUnauthorizedSchema,
2542
3241
  500: DefaultErrorResponseSchema
@@ -2546,12 +3245,12 @@ var telephonyAgentPresenceStatusContract = (0, import_core21.initContract)().rou
2546
3245
  getAgentStatus: {
2547
3246
  method: "GET",
2548
3247
  path: "/presence_status/check_update/:userId",
2549
- pathParams: import_zod52.default.object({ userId: import_zod52.default.string() }),
3248
+ pathParams: import_zod55.default.object({ userId: import_zod55.default.string() }),
2550
3249
  headers: DefaultHeaderSchema,
2551
3250
  responses: {
2552
3251
  200: UserPresenceStatusSchema,
2553
- 400: import_zod52.default.object({
2554
- message: import_zod52.default.string()
3252
+ 400: import_zod55.default.object({
3253
+ message: import_zod55.default.string()
2555
3254
  }),
2556
3255
  401: DefaultUnauthorizedSchema,
2557
3256
  500: DefaultErrorResponseSchema
@@ -2567,8 +3266,8 @@ var telephonyAgentPresenceStatusContract = (0, import_core21.initContract)().rou
2567
3266
  200: DefaultSuccessResponseSchema.extend({
2568
3267
  userPresenceStatu: UserPresenceStatusSchema
2569
3268
  }),
2570
- 400: import_zod52.default.object({
2571
- message: import_zod52.default.string()
3269
+ 400: import_zod55.default.object({
3270
+ message: import_zod55.default.string()
2572
3271
  }),
2573
3272
  401: DefaultUnauthorizedSchema,
2574
3273
  500: DefaultErrorResponseSchema
@@ -2580,42 +3279,42 @@ var telephonyAgentPresenceStatusContract = (0, import_core21.initContract)().rou
2580
3279
  );
2581
3280
 
2582
3281
  // src/telephony-extension/index.ts
2583
- var import_core22 = require("@ts-rest/core");
2584
- var import_zod54 = __toESM(require("zod"));
3282
+ var import_core23 = require("@ts-rest/core");
3283
+ var import_zod57 = __toESM(require("zod"));
2585
3284
 
2586
3285
  // src/telephony-extension/schema.ts
2587
- var import_zod53 = __toESM(require("zod"));
2588
- var TelephonyExtensionSchema = import_zod53.default.object({
2589
- errcode: import_zod53.default.coerce.number(),
2590
- errmsg: import_zod53.default.string(),
2591
- total_number: import_zod53.default.coerce.number(),
2592
- data: import_zod53.default.array(
2593
- import_zod53.default.object({
2594
- id: import_zod53.default.coerce.number(),
2595
- online_status: import_zod53.default.object({
2596
- fx_phone: import_zod53.default.object({ status: import_zod53.default.coerce.number() }),
2597
- sip_phone: import_zod53.default.object({
2598
- status: import_zod53.default.coerce.number(),
2599
- ext_dev_type: import_zod53.default.string().optional()
2600
- }),
2601
- linkus_desktop: import_zod53.default.object({ status: import_zod53.default.coerce.number() }),
2602
- linkus_mobile: import_zod53.default.object({ status: import_zod53.default.coerce.number() }),
2603
- linkus_web: import_zod53.default.object({
2604
- status: import_zod53.default.coerce.number(),
2605
- ext_dev_type: import_zod53.default.string().optional()
3286
+ var import_zod56 = __toESM(require("zod"));
3287
+ var TelephonyExtensionSchema = import_zod56.default.object({
3288
+ errcode: import_zod56.default.coerce.number(),
3289
+ errmsg: import_zod56.default.string(),
3290
+ total_number: import_zod56.default.coerce.number(),
3291
+ data: import_zod56.default.array(
3292
+ import_zod56.default.object({
3293
+ id: import_zod56.default.coerce.number(),
3294
+ online_status: import_zod56.default.object({
3295
+ fx_phone: import_zod56.default.object({ status: import_zod56.default.coerce.number() }),
3296
+ sip_phone: import_zod56.default.object({
3297
+ status: import_zod56.default.coerce.number(),
3298
+ ext_dev_type: import_zod56.default.string().optional()
3299
+ }),
3300
+ linkus_desktop: import_zod56.default.object({ status: import_zod56.default.coerce.number() }),
3301
+ linkus_mobile: import_zod56.default.object({ status: import_zod56.default.coerce.number() }),
3302
+ linkus_web: import_zod56.default.object({
3303
+ status: import_zod56.default.coerce.number(),
3304
+ ext_dev_type: import_zod56.default.string().optional()
2606
3305
  })
2607
3306
  }).optional(),
2608
- presence_status: import_zod53.default.string().optional(),
2609
- number: import_zod53.default.string().optional(),
2610
- caller_id_name: import_zod53.default.string().optional(),
2611
- role_name: import_zod53.default.string().optional(),
2612
- email_addr: import_zod53.default.string().optional()
3307
+ presence_status: import_zod56.default.string().optional(),
3308
+ number: import_zod56.default.string().optional(),
3309
+ caller_id_name: import_zod56.default.string().optional(),
3310
+ role_name: import_zod56.default.string().optional(),
3311
+ email_addr: import_zod56.default.string().optional()
2613
3312
  })
2614
3313
  )
2615
3314
  });
2616
3315
 
2617
3316
  // src/telephony-extension/index.ts
2618
- var telephonyExtensionContract = (0, import_core22.initContract)().router(
3317
+ var telephonyExtensionContract = (0, import_core23.initContract)().router(
2619
3318
  {
2620
3319
  getTelephonyExtensions: {
2621
3320
  method: "GET",
@@ -2624,8 +3323,8 @@ var telephonyExtensionContract = (0, import_core22.initContract)().router(
2624
3323
  query: null,
2625
3324
  responses: {
2626
3325
  200: TelephonyExtensionSchema,
2627
- 400: import_zod54.default.object({
2628
- message: import_zod54.default.string()
3326
+ 400: import_zod57.default.object({
3327
+ message: import_zod57.default.string()
2629
3328
  }),
2630
3329
  401: DefaultUnauthorizedSchema,
2631
3330
  500: DefaultErrorResponseSchema
@@ -2637,26 +3336,26 @@ var telephonyExtensionContract = (0, import_core22.initContract)().router(
2637
3336
  );
2638
3337
 
2639
3338
  // src/user/index.ts
2640
- var import_core23 = require("@ts-rest/core");
2641
- var import_zod56 = __toESM(require("zod"));
3339
+ var import_core24 = require("@ts-rest/core");
3340
+ var import_zod59 = __toESM(require("zod"));
2642
3341
 
2643
3342
  // src/user/validation.ts
2644
- var import_zod55 = require("zod");
2645
- var CreateUserSchema = import_zod55.z.object({
2646
- name: import_zod55.z.string(),
2647
- email: import_zod55.z.string().email(),
2648
- address: import_zod55.z.string().nullable(),
2649
- phone: import_zod55.z.string().nullable(),
2650
- password: import_zod55.z.string(),
2651
- notificationCount: import_zod55.z.number().nullable().optional(),
2652
- roles: import_zod55.z.array(import_zod55.z.string())
3343
+ var import_zod58 = require("zod");
3344
+ var CreateUserSchema = import_zod58.z.object({
3345
+ name: import_zod58.z.string(),
3346
+ email: import_zod58.z.string().email(),
3347
+ address: import_zod58.z.string().nullable(),
3348
+ phone: import_zod58.z.string().nullable(),
3349
+ password: import_zod58.z.string(),
3350
+ notificationCount: import_zod58.z.number().nullable().optional(),
3351
+ roles: import_zod58.z.array(import_zod58.z.string())
2653
3352
  });
2654
3353
  var UpdateUserSchema = CreateUserSchema.extend({
2655
- newPassword: import_zod55.z.string()
3354
+ newPassword: import_zod58.z.string()
2656
3355
  });
2657
3356
 
2658
3357
  // src/user/index.ts
2659
- var userContract = (0, import_core23.initContract)().router(
3358
+ var userContract = (0, import_core24.initContract)().router(
2660
3359
  {
2661
3360
  createUser: {
2662
3361
  method: "POST",
@@ -2667,8 +3366,8 @@ var userContract = (0, import_core23.initContract)().router(
2667
3366
  201: DefaultSuccessResponseSchema.extend({
2668
3367
  user: UserSchema
2669
3368
  }),
2670
- 400: import_zod56.default.object({
2671
- message: import_zod56.default.string()
3369
+ 400: import_zod59.default.object({
3370
+ message: import_zod59.default.string()
2672
3371
  }),
2673
3372
  401: DefaultUnauthorizedSchema
2674
3373
  },
@@ -2678,15 +3377,15 @@ var userContract = (0, import_core23.initContract)().router(
2678
3377
  method: "GET",
2679
3378
  path: "",
2680
3379
  headers: DefaultHeaderSchema,
2681
- query: import_zod56.default.object({
2682
- page: import_zod56.default.coerce.number().default(1),
2683
- pageSize: import_zod56.default.coerce.number().default(10),
2684
- keyword: import_zod56.default.string().optional()
3380
+ query: import_zod59.default.object({
3381
+ page: import_zod59.default.coerce.number().default(1),
3382
+ pageSize: import_zod59.default.coerce.number().default(10),
3383
+ keyword: import_zod59.default.string().optional()
2685
3384
  }).optional(),
2686
3385
  responses: {
2687
3386
  200: WithPagination(UserSchema),
2688
- 400: import_zod56.default.object({
2689
- message: import_zod56.default.string()
3387
+ 400: import_zod59.default.object({
3388
+ message: import_zod59.default.string()
2690
3389
  }),
2691
3390
  401: DefaultUnauthorizedSchema,
2692
3391
  500: DefaultErrorResponseSchema
@@ -2696,12 +3395,12 @@ var userContract = (0, import_core23.initContract)().router(
2696
3395
  getUserById: {
2697
3396
  method: "GET",
2698
3397
  path: "/:id",
2699
- pathParams: import_zod56.default.object({ id: import_zod56.default.string() }),
3398
+ pathParams: import_zod59.default.object({ id: import_zod59.default.string() }),
2700
3399
  headers: DefaultHeaderSchema,
2701
3400
  responses: {
2702
3401
  200: UserSchema,
2703
- 400: import_zod56.default.object({
2704
- message: import_zod56.default.string()
3402
+ 400: import_zod59.default.object({
3403
+ message: import_zod59.default.string()
2705
3404
  }),
2706
3405
  401: DefaultUnauthorizedSchema
2707
3406
  },
@@ -2710,15 +3409,15 @@ var userContract = (0, import_core23.initContract)().router(
2710
3409
  updateUser: {
2711
3410
  method: "PATCH",
2712
3411
  path: "/:id",
2713
- pathParams: import_zod56.default.object({ id: import_zod56.default.string() }),
3412
+ pathParams: import_zod59.default.object({ id: import_zod59.default.string() }),
2714
3413
  headers: DefaultHeaderSchema,
2715
3414
  body: UpdateUserSchema,
2716
3415
  responses: {
2717
3416
  201: DefaultSuccessResponseSchema.extend({
2718
3417
  role: UserSchema
2719
3418
  }),
2720
- 400: import_zod56.default.object({
2721
- message: import_zod56.default.string()
3419
+ 400: import_zod59.default.object({
3420
+ message: import_zod59.default.string()
2722
3421
  }),
2723
3422
  401: DefaultUnauthorizedSchema
2724
3423
  },
@@ -2727,11 +3426,11 @@ var userContract = (0, import_core23.initContract)().router(
2727
3426
  deleteUser: {
2728
3427
  method: "DELETE",
2729
3428
  path: "/:id",
2730
- pathParams: import_zod56.default.object({ id: import_zod56.default.string() }),
3429
+ pathParams: import_zod59.default.object({ id: import_zod59.default.string() }),
2731
3430
  headers: DefaultHeaderSchema,
2732
3431
  body: null,
2733
3432
  responses: {
2734
- 200: DefaultSuccessResponseSchema.extend({ message: import_zod56.default.string() }),
3433
+ 200: DefaultSuccessResponseSchema.extend({ message: import_zod59.default.string() }),
2735
3434
  500: DefaultErrorResponseSchema
2736
3435
  },
2737
3436
  summary: "Delete a user."
@@ -2741,28 +3440,28 @@ var userContract = (0, import_core23.initContract)().router(
2741
3440
  );
2742
3441
 
2743
3442
  // src/user-presence-status-log/index.ts
2744
- var import_core24 = require("@ts-rest/core");
2745
- var import_zod59 = __toESM(require("zod"));
3443
+ var import_core25 = require("@ts-rest/core");
3444
+ var import_zod62 = __toESM(require("zod"));
2746
3445
 
2747
3446
  // src/user-presence-status-log/schema.ts
2748
- var import_zod57 = __toESM(require("zod"));
3447
+ var import_zod60 = __toESM(require("zod"));
2749
3448
  var UserPresenceStatusLogSchema = DefaultEntitySchema.extend({
2750
3449
  user: UserSchema,
2751
3450
  previousPresenceStatus: PresenceStatusSchema,
2752
3451
  newPresenceStatus: PresenceStatusSchema,
2753
- reason: import_zod57.default.string()
3452
+ reason: import_zod60.default.string()
2754
3453
  });
2755
3454
 
2756
3455
  // src/user-presence-status-log/validation.ts
2757
- var import_zod58 = __toESM(require("zod"));
2758
- var UserPresenceStatusLogParamsSchema = import_zod58.default.object({
2759
- page: import_zod58.default.coerce.number().default(1),
2760
- pageSize: import_zod58.default.coerce.number().default(10),
2761
- selectedDate: import_zod58.default.string().optional()
3456
+ var import_zod61 = __toESM(require("zod"));
3457
+ var UserPresenceStatusLogParamsSchema = import_zod61.default.object({
3458
+ page: import_zod61.default.coerce.number().default(1),
3459
+ pageSize: import_zod61.default.coerce.number().default(10),
3460
+ selectedDate: import_zod61.default.string().optional()
2762
3461
  }).optional();
2763
3462
 
2764
3463
  // src/user-presence-status-log/index.ts
2765
- var userPresenceStatusLogContract = (0, import_core24.initContract)().router(
3464
+ var userPresenceStatusLogContract = (0, import_core25.initContract)().router(
2766
3465
  {
2767
3466
  getUserPresenceStatusLog: {
2768
3467
  method: "GET",
@@ -2771,8 +3470,8 @@ var userPresenceStatusLogContract = (0, import_core24.initContract)().router(
2771
3470
  headers: DefaultHeaderSchema,
2772
3471
  responses: {
2773
3472
  200: WithPagination(UserPresenceStatusLogSchema),
2774
- 400: import_zod59.default.object({
2775
- message: import_zod59.default.string()
3473
+ 400: import_zod62.default.object({
3474
+ message: import_zod62.default.string()
2776
3475
  }),
2777
3476
  401: DefaultUnauthorizedSchema,
2778
3477
  500: DefaultErrorResponseSchema
@@ -2784,43 +3483,43 @@ var userPresenceStatusLogContract = (0, import_core24.initContract)().router(
2784
3483
  );
2785
3484
 
2786
3485
  // src/widget/index.ts
2787
- var import_core25 = require("@ts-rest/core");
2788
- var import_zod62 = __toESM(require("zod"));
3486
+ var import_core26 = require("@ts-rest/core");
3487
+ var import_zod65 = __toESM(require("zod"));
2789
3488
 
2790
3489
  // src/widget/schema.ts
2791
- var import_zod60 = __toESM(require("zod"));
2792
- var FieldsSchema = import_zod60.default.object({ data: import_zod60.default.array(import_zod60.default.string()) });
2793
- var WidgetPositionSchema = import_zod60.default.union([
2794
- import_zod60.default.literal("menu"),
2795
- import_zod60.default.literal("ticket_detail"),
2796
- import_zod60.default.literal("contact_detail")
3490
+ var import_zod63 = __toESM(require("zod"));
3491
+ var FieldsSchema = import_zod63.default.object({ data: import_zod63.default.array(import_zod63.default.string()) });
3492
+ var WidgetPositionSchema = import_zod63.default.union([
3493
+ import_zod63.default.literal("menu"),
3494
+ import_zod63.default.literal("ticket_detail"),
3495
+ import_zod63.default.literal("contact_detail")
2797
3496
  ]);
2798
3497
  var WidgetSchema = DefaultEntitySchema.extend({
2799
- name: import_zod60.default.string(),
2800
- description: import_zod60.default.string().nullable(),
3498
+ name: import_zod63.default.string(),
3499
+ description: import_zod63.default.string().nullable(),
2801
3500
  position: WidgetPositionSchema.nullable(),
2802
3501
  fields: FieldsSchema,
2803
- url: import_zod60.default.string()
3502
+ url: import_zod63.default.string()
2804
3503
  });
2805
3504
 
2806
3505
  // src/widget/validation.ts
2807
- var import_zod61 = __toESM(require("zod"));
2808
- var CreateWidgetSchema = import_zod61.default.object({
2809
- name: import_zod61.default.string(),
2810
- description: import_zod61.default.string(),
2811
- url: import_zod61.default.string(),
3506
+ var import_zod64 = __toESM(require("zod"));
3507
+ var CreateWidgetSchema = import_zod64.default.object({
3508
+ name: import_zod64.default.string(),
3509
+ description: import_zod64.default.string(),
3510
+ url: import_zod64.default.string(),
2812
3511
  position: WidgetPositionSchema,
2813
- fields: import_zod61.default.object({
3512
+ fields: import_zod64.default.object({
2814
3513
  data: (
2815
3514
  // Array of attribute system names
2816
- import_zod61.default.array(import_zod61.default.string())
3515
+ import_zod64.default.array(import_zod64.default.string())
2817
3516
  )
2818
3517
  }).optional()
2819
3518
  });
2820
3519
  var UpdateWidgetSchema = CreateWidgetSchema;
2821
3520
 
2822
3521
  // src/widget/index.ts
2823
- var widgetContract = (0, import_core25.initContract)().router(
3522
+ var widgetContract = (0, import_core26.initContract)().router(
2824
3523
  {
2825
3524
  createWidget: {
2826
3525
  method: "POST",
@@ -2831,8 +3530,8 @@ var widgetContract = (0, import_core25.initContract)().router(
2831
3530
  201: DefaultSuccessResponseSchema.extend({
2832
3531
  widget: WidgetSchema
2833
3532
  }),
2834
- 400: import_zod62.default.object({
2835
- message: import_zod62.default.string()
3533
+ 400: import_zod65.default.object({
3534
+ message: import_zod65.default.string()
2836
3535
  }),
2837
3536
  401: DefaultUnauthorizedSchema,
2838
3537
  500: DefaultErrorResponseSchema
@@ -2842,17 +3541,17 @@ var widgetContract = (0, import_core25.initContract)().router(
2842
3541
  getWidgets: {
2843
3542
  method: "GET",
2844
3543
  path: "",
2845
- query: import_zod62.default.object({
2846
- page: import_zod62.default.coerce.number().default(1),
2847
- pageSize: import_zod62.default.coerce.number().default(10),
2848
- keyword: import_zod62.default.coerce.string().optional()
3544
+ query: import_zod65.default.object({
3545
+ page: import_zod65.default.coerce.number().default(1),
3546
+ pageSize: import_zod65.default.coerce.number().default(10),
3547
+ keyword: import_zod65.default.coerce.string().optional()
2849
3548
  }).optional(),
2850
3549
  headers: DefaultHeaderSchema,
2851
3550
  responses: {
2852
3551
  200: WithPagination(WidgetSchema),
2853
3552
  500: DefaultErrorResponseSchema,
2854
- 400: import_zod62.default.object({
2855
- message: import_zod62.default.string()
3553
+ 400: import_zod65.default.object({
3554
+ message: import_zod65.default.string()
2856
3555
  }),
2857
3556
  401: DefaultUnauthorizedSchema
2858
3557
  },
@@ -2863,9 +3562,9 @@ var widgetContract = (0, import_core25.initContract)().router(
2863
3562
  path: "/menu",
2864
3563
  headers: DefaultHeaderSchema,
2865
3564
  responses: {
2866
- 200: import_zod62.default.array(WidgetSchema),
2867
- 400: import_zod62.default.object({
2868
- message: import_zod62.default.string()
3565
+ 200: import_zod65.default.array(WidgetSchema),
3566
+ 400: import_zod65.default.object({
3567
+ message: import_zod65.default.string()
2869
3568
  }),
2870
3569
  401: DefaultUnauthorizedSchema,
2871
3570
  500: DefaultErrorResponseSchema
@@ -2877,9 +3576,9 @@ var widgetContract = (0, import_core25.initContract)().router(
2877
3576
  path: "/ticket_detail",
2878
3577
  headers: DefaultHeaderSchema,
2879
3578
  responses: {
2880
- 200: import_zod62.default.array(WidgetSchema),
2881
- 400: import_zod62.default.object({
2882
- message: import_zod62.default.string()
3579
+ 200: import_zod65.default.array(WidgetSchema),
3580
+ 400: import_zod65.default.object({
3581
+ message: import_zod65.default.string()
2883
3582
  }),
2884
3583
  401: DefaultUnauthorizedSchema,
2885
3584
  500: DefaultErrorResponseSchema
@@ -2891,9 +3590,9 @@ var widgetContract = (0, import_core25.initContract)().router(
2891
3590
  path: "/contact_detail",
2892
3591
  headers: DefaultHeaderSchema,
2893
3592
  responses: {
2894
- 200: import_zod62.default.array(WidgetSchema),
2895
- 400: import_zod62.default.object({
2896
- message: import_zod62.default.string()
3593
+ 200: import_zod65.default.array(WidgetSchema),
3594
+ 400: import_zod65.default.object({
3595
+ message: import_zod65.default.string()
2897
3596
  }),
2898
3597
  401: DefaultUnauthorizedSchema,
2899
3598
  500: DefaultErrorResponseSchema
@@ -2903,12 +3602,12 @@ var widgetContract = (0, import_core25.initContract)().router(
2903
3602
  getWidgetById: {
2904
3603
  method: "GET",
2905
3604
  path: "/:id",
2906
- pathParams: import_zod62.default.object({ id: import_zod62.default.string() }),
3605
+ pathParams: import_zod65.default.object({ id: import_zod65.default.string() }),
2907
3606
  headers: DefaultHeaderSchema,
2908
3607
  responses: {
2909
3608
  200: WidgetSchema,
2910
- 400: import_zod62.default.object({
2911
- message: import_zod62.default.string()
3609
+ 400: import_zod65.default.object({
3610
+ message: import_zod65.default.string()
2912
3611
  }),
2913
3612
  401: DefaultUnauthorizedSchema,
2914
3613
  500: DefaultErrorResponseSchema
@@ -2942,14 +3641,14 @@ var widgetContract = (0, import_core25.initContract)().router(
2942
3641
  updateWidget: {
2943
3642
  method: "PATCH",
2944
3643
  path: "/:id",
2945
- pathParams: import_zod62.default.object({ id: import_zod62.default.string() }),
3644
+ pathParams: import_zod65.default.object({ id: import_zod65.default.string() }),
2946
3645
  headers: DefaultHeaderSchema,
2947
3646
  responses: {
2948
3647
  201: DefaultSuccessResponseSchema.extend({
2949
3648
  widget: WidgetSchema
2950
3649
  }),
2951
- 400: import_zod62.default.object({
2952
- message: import_zod62.default.string()
3650
+ 400: import_zod65.default.object({
3651
+ message: import_zod65.default.string()
2953
3652
  }),
2954
3653
  401: DefaultUnauthorizedSchema
2955
3654
  },
@@ -2959,11 +3658,11 @@ var widgetContract = (0, import_core25.initContract)().router(
2959
3658
  deleteWidget: {
2960
3659
  method: "DELETE",
2961
3660
  path: "/:id",
2962
- pathParams: import_zod62.default.object({ id: import_zod62.default.string() }),
3661
+ pathParams: import_zod65.default.object({ id: import_zod65.default.string() }),
2963
3662
  headers: DefaultHeaderSchema,
2964
3663
  body: null,
2965
3664
  responses: {
2966
- 200: DefaultSuccessResponseSchema.extend({ message: import_zod62.default.string() }),
3665
+ 200: DefaultSuccessResponseSchema.extend({ message: import_zod65.default.string() }),
2967
3666
  500: DefaultErrorResponseSchema
2968
3667
  },
2969
3668
  summary: "Delete a widget."
@@ -2973,33 +3672,33 @@ var widgetContract = (0, import_core25.initContract)().router(
2973
3672
  );
2974
3673
 
2975
3674
  // src/wrap-up-form/index.ts
2976
- var import_core26 = require("@ts-rest/core");
2977
- var import_zod65 = __toESM(require("zod"));
3675
+ var import_core27 = require("@ts-rest/core");
3676
+ var import_zod68 = __toESM(require("zod"));
2978
3677
 
2979
3678
  // src/wrap-up-form/schema.ts
2980
- var import_zod63 = __toESM(require("zod"));
3679
+ var import_zod66 = __toESM(require("zod"));
2981
3680
  var WrapUpFormSchema = DefaultEntitySchema.extend({
2982
- note: import_zod63.default.string().nullable(),
2983
- disposition: import_zod63.default.string().nullable(),
2984
- callFrom: import_zod63.default.string().nullable(),
2985
- callTo: import_zod63.default.string().nullable(),
2986
- tags: import_zod63.default.array(TagSchema)
3681
+ note: import_zod66.default.string().nullable(),
3682
+ disposition: import_zod66.default.string().nullable(),
3683
+ callFrom: import_zod66.default.string().nullable(),
3684
+ callTo: import_zod66.default.string().nullable(),
3685
+ tags: import_zod66.default.array(TagSchema)
2987
3686
  });
2988
3687
 
2989
3688
  // src/wrap-up-form/validation.ts
2990
- var import_zod64 = require("zod");
2991
- var CreateWrapUpFormSchema = import_zod64.z.object({
2992
- note: import_zod64.z.string().nullable().optional(),
2993
- disposition: import_zod64.z.string().nullable().optional(),
2994
- callFrom: import_zod64.z.string().nullable().optional(),
2995
- callTo: import_zod64.z.string().nullable().optional()
3689
+ var import_zod67 = require("zod");
3690
+ var CreateWrapUpFormSchema = import_zod67.z.object({
3691
+ note: import_zod67.z.string().nullable().optional(),
3692
+ disposition: import_zod67.z.string().nullable().optional(),
3693
+ callFrom: import_zod67.z.string().nullable().optional(),
3694
+ callTo: import_zod67.z.string().nullable().optional()
2996
3695
  });
2997
3696
  var UpdateWrapUpFormSchema = CreateWrapUpFormSchema.extend({
2998
- tags: import_zod64.z.array(import_zod64.z.string()).optional()
3697
+ tags: import_zod67.z.array(import_zod67.z.string()).optional()
2999
3698
  });
3000
3699
 
3001
3700
  // src/wrap-up-form/index.ts
3002
- var wrapUpFormContract = (0, import_core26.initContract)().router(
3701
+ var wrapUpFormContract = (0, import_core27.initContract)().router(
3003
3702
  {
3004
3703
  createWrapUpForm: {
3005
3704
  method: "POST",
@@ -3010,8 +3709,8 @@ var wrapUpFormContract = (0, import_core26.initContract)().router(
3010
3709
  201: DefaultSuccessResponseSchema.extend({
3011
3710
  wrapUpForm: WrapUpFormSchema
3012
3711
  }),
3013
- 400: import_zod65.default.object({
3014
- message: import_zod65.default.string()
3712
+ 400: import_zod68.default.object({
3713
+ message: import_zod68.default.string()
3015
3714
  }),
3016
3715
  401: DefaultUnauthorizedSchema,
3017
3716
  500: DefaultErrorResponseSchema
@@ -3021,15 +3720,15 @@ var wrapUpFormContract = (0, import_core26.initContract)().router(
3021
3720
  getWrapUpForms: {
3022
3721
  method: "GET",
3023
3722
  path: "",
3024
- query: import_zod65.default.object({
3025
- page: import_zod65.default.coerce.number().default(1),
3026
- pageSize: import_zod65.default.coerce.number().default(10)
3723
+ query: import_zod68.default.object({
3724
+ page: import_zod68.default.coerce.number().default(1),
3725
+ pageSize: import_zod68.default.coerce.number().default(10)
3027
3726
  }).optional(),
3028
3727
  headers: DefaultHeaderSchema,
3029
3728
  responses: {
3030
3729
  200: WithPagination(WrapUpFormSchema),
3031
- 400: import_zod65.default.object({
3032
- message: import_zod65.default.string()
3730
+ 400: import_zod68.default.object({
3731
+ message: import_zod68.default.string()
3033
3732
  }),
3034
3733
  401: DefaultUnauthorizedSchema,
3035
3734
  500: DefaultErrorResponseSchema
@@ -3039,15 +3738,15 @@ var wrapUpFormContract = (0, import_core26.initContract)().router(
3039
3738
  updateWrapUpForm: {
3040
3739
  method: "PATCH",
3041
3740
  path: "/:id",
3042
- pathParams: import_zod65.default.object({ id: import_zod65.default.string() }),
3741
+ pathParams: import_zod68.default.object({ id: import_zod68.default.string() }),
3043
3742
  headers: DefaultHeaderSchema,
3044
3743
  body: UpdateWrapUpFormSchema,
3045
3744
  responses: {
3046
3745
  201: DefaultSuccessResponseSchema.extend({
3047
3746
  wrapUpForm: WrapUpFormSchema
3048
3747
  }),
3049
- 400: import_zod65.default.object({
3050
- message: import_zod65.default.string()
3748
+ 400: import_zod68.default.object({
3749
+ message: import_zod68.default.string()
3051
3750
  }),
3052
3751
  401: DefaultUnauthorizedSchema,
3053
3752
  500: DefaultErrorResponseSchema
@@ -3059,7 +3758,7 @@ var wrapUpFormContract = (0, import_core26.initContract)().router(
3059
3758
  );
3060
3759
 
3061
3760
  // src/contract.ts
3062
- var apiContract = (0, import_core27.initContract)().router({
3761
+ var apiContract = (0, import_core28.initContract)().router({
3063
3762
  auth: authContract,
3064
3763
  mail: mailContract,
3065
3764
  cxLog: cxLogContract,
@@ -3078,13 +3777,14 @@ var apiContract = (0, import_core27.initContract)().router({
3078
3777
  aws: awsContract,
3079
3778
  agentPresenceStatus: telephonyAgentPresenceStatusContract,
3080
3779
  userPresenceStatusLog: userPresenceStatusLogContract,
3081
- contact: contactContract
3780
+ contact: contactContract,
3781
+ ticket: ticketContract
3082
3782
  });
3083
- var platformContract = (0, import_core27.initContract)().router({
3783
+ var platformContract = (0, import_core28.initContract)().router({
3084
3784
  line: lineContract,
3085
3785
  messenger: messengerContract
3086
3786
  });
3087
- var chatContract = (0, import_core27.initContract)().router({
3787
+ var chatContract = (0, import_core28.initContract)().router({
3088
3788
  main: mainChatContract
3089
3789
  });
3090
3790
  // Annotate the CommonJS export names for ESM import in node: