@kl1/contracts 1.0.39 → 1.0.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +711 -697
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +711 -697
- package/dist/index.mjs.map +1 -1
- package/dist/src/chat/index.d.ts +2662 -7811
- package/dist/src/chat/index.d.ts.map +1 -1
- package/dist/src/chat/schema.d.ts +10 -10
- package/dist/src/chat/validation.d.ts +77 -52
- package/dist/src/chat/validation.d.ts.map +1 -1
- package/dist/src/contract.d.ts +52276 -52979
- package/dist/src/contract.d.ts.map +1 -1
- package/dist/src/cx-log/index.d.ts +1616 -46
- package/dist/src/cx-log/index.d.ts.map +1 -1
- package/dist/src/cx-log/schema.d.ts +1551 -233
- package/dist/src/cx-log/schema.d.ts.map +1 -1
- package/dist/src/dashboard/index.d.ts +4 -1
- package/dist/src/dashboard/index.d.ts.map +1 -1
- package/dist/src/dashboard/schema.d.ts +50 -0
- package/dist/src/dashboard/schema.d.ts.map +1 -1
- package/dist/src/messenger/index.d.ts +8 -8
- package/dist/src/telephony-cdr/index.d.ts +2878 -0
- package/dist/src/telephony-cdr/index.d.ts.map +1 -1
- package/dist/src/telephony-cdr/schema.d.ts +1070 -4
- package/dist/src/telephony-cdr/schema.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
@@ -732,7 +732,7 @@ var channelContract = initContract5().router(
|
|
732
732
|
|
733
733
|
// src/chat/index.ts
|
734
734
|
import { initContract as initContract6 } from "@ts-rest/core";
|
735
|
-
import
|
735
|
+
import z30 from "zod";
|
736
736
|
|
737
737
|
// src/contact/schema.ts
|
738
738
|
import z21 from "zod";
|
@@ -846,10 +846,10 @@ var ContactSchema = z21.object({
|
|
846
846
|
});
|
847
847
|
|
848
848
|
// src/chat/schema.ts
|
849
|
-
import
|
849
|
+
import z27 from "zod";
|
850
850
|
|
851
851
|
// src/cx-log/schema.ts
|
852
|
-
import
|
852
|
+
import z26 from "zod";
|
853
853
|
|
854
854
|
// src/evaluate-form/schema.ts
|
855
855
|
import z22 from "zod";
|
@@ -860,82 +860,109 @@ var EvaluateFormSchema = DefaultEntitySchema.extend({
|
|
860
860
|
});
|
861
861
|
|
862
862
|
// src/telephony-cdr/schema.ts
|
863
|
+
import z24 from "zod";
|
864
|
+
|
865
|
+
// src/extension/schema.ts
|
863
866
|
import z23 from "zod";
|
867
|
+
var ExtensionSchema = z23.object({
|
868
|
+
id: z23.string().uuid(),
|
869
|
+
createdAt: z23.date(),
|
870
|
+
updatedAt: z23.date(),
|
871
|
+
deletedAt: z23.date().nullable(),
|
872
|
+
userId: z23.string().nullable(),
|
873
|
+
sipServerUrl: z23.string(),
|
874
|
+
sipUserName: z23.string(),
|
875
|
+
webphoneLoginUser: z23.string(),
|
876
|
+
extensionId: z23.coerce.number(),
|
877
|
+
extensionName: z23.string(),
|
878
|
+
telephonySignature: z23.string().nullable()
|
879
|
+
});
|
880
|
+
|
881
|
+
// src/telephony-cdr/schema.ts
|
864
882
|
var TelephonyCdrSchema = DefaultEntitySchema.extend({
|
865
|
-
uniqueCallId:
|
866
|
-
timeStart:
|
867
|
-
callFrom:
|
868
|
-
callTo:
|
869
|
-
callDuration:
|
870
|
-
talkDuration:
|
871
|
-
srcTrunkName:
|
872
|
-
dstTrunkName:
|
873
|
-
|
874
|
-
|
875
|
-
|
876
|
-
|
877
|
-
|
878
|
-
|
879
|
-
|
880
|
-
|
881
|
-
|
882
|
-
|
883
|
-
|
884
|
-
|
883
|
+
uniqueCallId: z24.string(),
|
884
|
+
timeStart: z24.string(),
|
885
|
+
callFrom: z24.string(),
|
886
|
+
callTo: z24.string(),
|
887
|
+
callDuration: z24.number().nullable(),
|
888
|
+
talkDuration: z24.number().nullable(),
|
889
|
+
srcTrunkName: z24.string().nullable(),
|
890
|
+
dstTrunkName: z24.string().nullable(),
|
891
|
+
contact: ContactSchema.optional(),
|
892
|
+
// TODO: refactor this zod schema using TelephonyQueue entity schema
|
893
|
+
telephonyQueue: DefaultEntitySchema.extend({
|
894
|
+
queueId: z24.number(),
|
895
|
+
queueName: z24.string(),
|
896
|
+
queueNumber: z24.string(),
|
897
|
+
maximumWaitingTime: z24.number()
|
898
|
+
}).optional().nullable(),
|
899
|
+
pinCode: z24.string().nullable(),
|
900
|
+
status: z24.string(),
|
901
|
+
type: z24.string(),
|
902
|
+
recording: z24.string().nullable(),
|
903
|
+
didNumber: z24.string().nullable(),
|
904
|
+
agentRingTime: z24.number().nullable(),
|
905
|
+
uploadId: z24.string().nullable(),
|
906
|
+
upload: UploadSchema.optional().nullable(),
|
907
|
+
serialNumber: z24.string().nullable(),
|
908
|
+
extensionId: z24.string().uuid().nullable(),
|
909
|
+
extension: ExtensionSchema.optional().nullable(),
|
910
|
+
telephonyQueueId: z24.string().uuid().nullable(),
|
911
|
+
contactId: z24.string().nullable()
|
885
912
|
});
|
886
913
|
|
887
914
|
// src/wrap-up-form/schema.ts
|
888
|
-
import
|
915
|
+
import z25 from "zod";
|
889
916
|
var WrapUpFormSchema = DefaultEntitySchema.extend({
|
890
|
-
note:
|
891
|
-
disposition:
|
892
|
-
callFrom:
|
893
|
-
callTo:
|
894
|
-
tags:
|
917
|
+
note: z25.string().nullable(),
|
918
|
+
disposition: z25.string().nullable(),
|
919
|
+
callFrom: z25.string().nullable(),
|
920
|
+
callTo: z25.string().nullable(),
|
921
|
+
tags: z25.array(TagSchema)
|
895
922
|
});
|
896
923
|
|
897
924
|
// src/cx-log/schema.ts
|
898
925
|
var CxLogSchema = DefaultEntitySchema.extend({
|
899
|
-
caseId:
|
900
|
-
entityId:
|
901
|
-
entityName:
|
902
|
-
contactId:
|
903
|
-
channel:
|
904
|
-
queueId:
|
905
|
-
agentId:
|
906
|
-
direction:
|
907
|
-
startedDate:
|
908
|
-
handledTime:
|
909
|
-
firstResponseTime:
|
910
|
-
disposition:
|
926
|
+
caseId: z26.number(),
|
927
|
+
entityId: z26.string().uuid(),
|
928
|
+
entityName: z26.string(),
|
929
|
+
contactId: z26.string().uuid().nullable(),
|
930
|
+
channel: z26.string().nullable(),
|
931
|
+
queueId: z26.string().uuid().nullable(),
|
932
|
+
agentId: z26.string().uuid().nullable(),
|
933
|
+
direction: z26.string().nullable(),
|
934
|
+
startedDate: z26.date().nullable(),
|
935
|
+
handledTime: z26.number().nullable(),
|
936
|
+
firstResponseTime: z26.number().nullable(),
|
937
|
+
disposition: z26.string().nullable(),
|
911
938
|
wrapUpForm: WrapUpFormSchema.nullable()
|
912
939
|
});
|
913
940
|
var CxLogSchemaWithRelations = DefaultEntitySchema.extend({
|
914
|
-
caseId:
|
915
|
-
entityId:
|
916
|
-
entityName:
|
917
|
-
channelType:
|
918
|
-
channel:
|
919
|
-
direction:
|
920
|
-
startedDate:
|
921
|
-
handledTime:
|
922
|
-
firstResponseTime:
|
923
|
-
disposition:
|
924
|
-
slaMeet:
|
941
|
+
caseId: z26.number(),
|
942
|
+
entityId: z26.string().uuid(),
|
943
|
+
entityName: z26.string(),
|
944
|
+
channelType: z26.string().nullable(),
|
945
|
+
channel: z26.string().nullable(),
|
946
|
+
direction: z26.string().nullable(),
|
947
|
+
startedDate: z26.string().nullable(),
|
948
|
+
handledTime: z26.string().nullable(),
|
949
|
+
firstResponseTime: z26.string().nullable(),
|
950
|
+
disposition: z26.string().nullable(),
|
951
|
+
slaMeet: z26.string().nullable(),
|
925
952
|
evaluateForm: EvaluateFormSchema.nullable(),
|
926
953
|
wrapUpForm: WrapUpFormSchema.nullable(),
|
927
|
-
room:
|
928
|
-
id:
|
929
|
-
createdAt:
|
930
|
-
updatedAt:
|
931
|
-
deletedAt:
|
932
|
-
lastMessage:
|
933
|
-
handleTime:
|
934
|
-
closeAt:
|
935
|
-
unreadCount:
|
936
|
-
firstResponseAt:
|
937
|
-
firstResponseTime:
|
938
|
-
isLatest:
|
954
|
+
room: z26.object({
|
955
|
+
id: z26.string().uuid(),
|
956
|
+
createdAt: z26.date(),
|
957
|
+
updatedAt: z26.date(),
|
958
|
+
deletedAt: z26.date().nullable(),
|
959
|
+
lastMessage: z26.string(),
|
960
|
+
handleTime: z26.number(),
|
961
|
+
closeAt: z26.date(),
|
962
|
+
unreadCount: z26.number(),
|
963
|
+
firstResponseAt: z26.date(),
|
964
|
+
firstResponseTime: z26.number(),
|
965
|
+
isLatest: z26.boolean(),
|
939
966
|
direction: MessageDirectionTypeSchema,
|
940
967
|
platformContact: PlatformContactSchema,
|
941
968
|
actor: UserSchema,
|
@@ -943,20 +970,20 @@ var CxLogSchemaWithRelations = DefaultEntitySchema.extend({
|
|
943
970
|
channel: ChannelSchema
|
944
971
|
}).nullable(),
|
945
972
|
telephonyCdr: TelephonyCdrSchema.nullable(),
|
946
|
-
queue:
|
947
|
-
queueName:
|
973
|
+
queue: z26.object({
|
974
|
+
queueName: z26.string().nullable().optional()
|
948
975
|
}).nullable(),
|
949
976
|
contact: ContactSchema.nullable(),
|
950
977
|
agent: UserSchema.nullable()
|
951
978
|
});
|
952
979
|
|
953
980
|
// src/chat/schema.ts
|
954
|
-
var MessageDirectionTypeSchema =
|
981
|
+
var MessageDirectionTypeSchema = z27.enum([
|
955
982
|
"incoming",
|
956
983
|
"outgoing",
|
957
984
|
"system"
|
958
985
|
]);
|
959
|
-
var MessageTypeSchema =
|
986
|
+
var MessageTypeSchema = z27.enum([
|
960
987
|
"text",
|
961
988
|
"image",
|
962
989
|
"video",
|
@@ -976,28 +1003,28 @@ var MessageTypeSchema = z26.enum([
|
|
976
1003
|
"updated",
|
977
1004
|
"started"
|
978
1005
|
]);
|
979
|
-
var MessageLocaleTypeSchema =
|
980
|
-
var PlatformContactMetadataSchema =
|
981
|
-
id:
|
982
|
-
name:
|
983
|
-
picture:
|
984
|
-
additionalCredentials:
|
1006
|
+
var MessageLocaleTypeSchema = z27.enum(["mm", "en", "th", ""]);
|
1007
|
+
var PlatformContactMetadataSchema = z27.object({
|
1008
|
+
id: z27.string(),
|
1009
|
+
name: z27.string(),
|
1010
|
+
picture: z27.string().optional(),
|
1011
|
+
additionalCredentials: z27.any()
|
985
1012
|
});
|
986
1013
|
var PlatformContactSchema = DefaultEntitySchema.extend({
|
987
|
-
channelId:
|
988
|
-
socialPlatformId:
|
1014
|
+
channelId: z27.string().uuid(),
|
1015
|
+
socialPlatformId: z27.string(),
|
989
1016
|
type: ChannelTypeSchema,
|
990
1017
|
metadata: PlatformContactMetadataSchema,
|
991
1018
|
contact: ContactSchema
|
992
1019
|
});
|
993
1020
|
var RoomSchema = DefaultEntitySchema.extend({
|
994
|
-
lastMessage:
|
995
|
-
handleTime:
|
996
|
-
closeAt:
|
997
|
-
unreadCount:
|
998
|
-
firstResponseAt:
|
999
|
-
firstResponseTime:
|
1000
|
-
isLatest:
|
1021
|
+
lastMessage: z27.string(),
|
1022
|
+
handleTime: z27.number(),
|
1023
|
+
closeAt: z27.date(),
|
1024
|
+
unreadCount: z27.number(),
|
1025
|
+
firstResponseAt: z27.date(),
|
1026
|
+
firstResponseTime: z27.number(),
|
1027
|
+
isLatest: z27.boolean(),
|
1001
1028
|
direction: MessageDirectionTypeSchema,
|
1002
1029
|
platformContact: PlatformContactSchema,
|
1003
1030
|
actor: UserSchema,
|
@@ -1006,167 +1033,173 @@ var RoomSchema = DefaultEntitySchema.extend({
|
|
1006
1033
|
cxlog: CxLogSchema
|
1007
1034
|
});
|
1008
1035
|
var MessageSchema = DefaultEntitySchema.extend({
|
1009
|
-
message:
|
1036
|
+
message: z27.string(),
|
1010
1037
|
direction: MessageDirectionTypeSchema,
|
1011
1038
|
type: MessageTypeSchema,
|
1012
|
-
readAt:
|
1013
|
-
metadata:
|
1014
|
-
platformId:
|
1015
|
-
platformMessageId:
|
1016
|
-
replyPlatformMessageId:
|
1017
|
-
template:
|
1039
|
+
readAt: z27.date(),
|
1040
|
+
metadata: z27.any(),
|
1041
|
+
platformId: z27.string(),
|
1042
|
+
platformMessageId: z27.string(),
|
1043
|
+
replyPlatformMessageId: z27.string(),
|
1044
|
+
template: z27.any(),
|
1018
1045
|
locale: MessageLocaleTypeSchema,
|
1019
|
-
url:
|
1020
|
-
previewUrl:
|
1021
|
-
imageSetId:
|
1046
|
+
url: z27.string(),
|
1047
|
+
previewUrl: z27.string(),
|
1048
|
+
imageSetId: z27.string(),
|
1022
1049
|
room: RoomSchema,
|
1023
1050
|
upload: UploadSchema,
|
1024
1051
|
actor: UserSchema,
|
1025
1052
|
assignee: UserSchema,
|
1026
1053
|
sender: UserSchema
|
1027
1054
|
});
|
1028
|
-
var UnreadCountsByAssigneeSchema =
|
1029
|
-
assigneeId:
|
1030
|
-
totalUnreadCount:
|
1055
|
+
var UnreadCountsByAssigneeSchema = z27.object({
|
1056
|
+
assigneeId: z27.string(),
|
1057
|
+
totalUnreadCount: z27.number()
|
1031
1058
|
});
|
1032
1059
|
|
1033
1060
|
// src/chat/validation.ts
|
1034
|
-
import
|
1061
|
+
import z29 from "zod";
|
1035
1062
|
|
1036
1063
|
// src/custom-field/schema.ts
|
1037
|
-
import
|
1064
|
+
import z28 from "zod";
|
1038
1065
|
var CustomFieldSchema = DefaultEntitySchema.extend({
|
1039
|
-
textValue:
|
1040
|
-
booleanValue:
|
1041
|
-
numberValue:
|
1042
|
-
dateValue:
|
1043
|
-
entityId:
|
1044
|
-
attributeId:
|
1066
|
+
textValue: z28.string().nullable(),
|
1067
|
+
booleanValue: z28.boolean().nullable(),
|
1068
|
+
numberValue: z28.number().nullable(),
|
1069
|
+
dateValue: z28.date().nullable(),
|
1070
|
+
entityId: z28.string().uuid(),
|
1071
|
+
attributeId: z28.string().uuid()
|
1045
1072
|
});
|
1046
1073
|
|
1047
1074
|
// src/chat/validation.ts
|
1048
|
-
var GetRoomsSchema =
|
1049
|
-
page:
|
1050
|
-
pageSize:
|
1051
|
-
|
1052
|
-
|
1053
|
-
|
1054
|
-
|
1055
|
-
keyword:
|
1056
|
-
|
1057
|
-
|
1058
|
-
name:
|
1059
|
-
address:
|
1060
|
-
contactGroups:
|
1061
|
-
selectedDate:
|
1062
|
-
customFields:
|
1063
|
-
tags:
|
1064
|
-
phone:
|
1065
|
-
email:
|
1066
|
-
notes:
|
1067
|
-
tab:
|
1068
|
-
|
1069
|
-
|
1070
|
-
|
1075
|
+
var GetRoomsSchema = z29.object({
|
1076
|
+
page: z29.coerce.number().positive().default(1),
|
1077
|
+
pageSize: z29.coerce.number().positive().default(20),
|
1078
|
+
contactTags: z29.string().array().optional(),
|
1079
|
+
contacts: z29.string().array().optional(),
|
1080
|
+
agents: z29.string().array().optional(),
|
1081
|
+
roomTags: z29.string().array().optional(),
|
1082
|
+
keyword: z29.string().optional(),
|
1083
|
+
companies: z29.string().array().optional(),
|
1084
|
+
channels: z29.string().array().optional(),
|
1085
|
+
name: z29.string().optional(),
|
1086
|
+
address: z29.string().optional(),
|
1087
|
+
contactGroups: z29.string().array().optional(),
|
1088
|
+
selectedDate: z29.string().optional(),
|
1089
|
+
customFields: z29.array(CustomFieldSchema).optional(),
|
1090
|
+
tags: z29.string().array().optional(),
|
1091
|
+
phone: z29.string().optional(),
|
1092
|
+
email: z29.string().optional(),
|
1093
|
+
notes: z29.string().optional(),
|
1094
|
+
tab: z29.string().optional(),
|
1095
|
+
type: z29.string().optional(),
|
1096
|
+
sorting: z29.string().optional().default("desc")
|
1097
|
+
});
|
1098
|
+
var UpdateRoomTagsAndNotesSchema = z29.object({
|
1099
|
+
note: z29.string().optional(),
|
1071
1100
|
tags: TagSchema.array().optional()
|
1072
1101
|
});
|
1073
1102
|
var UpdateRoomAttributesSchema = UpdateRoomTagsAndNotesSchema.extend({
|
1074
|
-
roomId:
|
1075
|
-
});
|
1076
|
-
var MessageAttachmentSchema =
|
1077
|
-
bucketName:
|
1078
|
-
fileKey:
|
1079
|
-
fileName:
|
1080
|
-
fileSize:
|
1081
|
-
url:
|
1082
|
-
fileType:
|
1083
|
-
thumbnailUrl:
|
1084
|
-
});
|
1085
|
-
var
|
1086
|
-
|
1103
|
+
roomId: z29.string().uuid()
|
1104
|
+
});
|
1105
|
+
var MessageAttachmentSchema = z29.object({
|
1106
|
+
bucketName: z29.string(),
|
1107
|
+
fileKey: z29.string(),
|
1108
|
+
fileName: z29.string(),
|
1109
|
+
fileSize: z29.number(),
|
1110
|
+
url: z29.string(),
|
1111
|
+
fileType: z29.string(),
|
1112
|
+
thumbnailUrl: z29.string().optional()
|
1113
|
+
});
|
1114
|
+
var StickerSchema = z29.object({
|
1115
|
+
packageId: z29.number().optional(),
|
1116
|
+
stickerId: z29.number().optional()
|
1117
|
+
});
|
1118
|
+
var SendMessageSchema = z29.object({
|
1119
|
+
roomId: z29.string().uuid(),
|
1087
1120
|
messageType: MessageTypeSchema,
|
1088
|
-
message:
|
1121
|
+
message: z29.string().optional(),
|
1089
1122
|
messageAttachments: MessageAttachmentSchema.optional(),
|
1090
1123
|
user: UserSchema.optional(),
|
1091
|
-
|
1092
|
-
stickerId: z28.number().optional()
|
1124
|
+
sticker: StickerSchema
|
1093
1125
|
});
|
1094
|
-
var SolveRoomSchema =
|
1095
|
-
roomId:
|
1096
|
-
disposition:
|
1126
|
+
var SolveRoomSchema = z29.object({
|
1127
|
+
roomId: z29.string(),
|
1128
|
+
disposition: z29.string()
|
1097
1129
|
});
|
1098
|
-
var UpdateAssigneeSchema =
|
1099
|
-
assigneeId:
|
1130
|
+
var UpdateAssigneeSchema = z29.object({
|
1131
|
+
assigneeId: z29.string().uuid(),
|
1132
|
+
roomId: z29.string()
|
1100
1133
|
});
|
1101
1134
|
var SearchRoomsSchema = DefaultQueryParamsSchema.extend({
|
1102
|
-
query:
|
1135
|
+
query: z29.string()
|
1103
1136
|
});
|
1104
|
-
var ChannelSchema2 =
|
1105
|
-
name:
|
1137
|
+
var ChannelSchema2 = z29.object({
|
1138
|
+
name: z29.string(),
|
1106
1139
|
type: ChannelTypeSchema,
|
1107
1140
|
metadata: ChannelMetadataSchema,
|
1108
|
-
platformId:
|
1109
|
-
brandName:
|
1141
|
+
platformId: z29.string(),
|
1142
|
+
brandName: z29.string(),
|
1110
1143
|
status: ChannelStatusTypeSchema,
|
1111
|
-
connectedUserName:
|
1112
|
-
connectedUserId:
|
1113
|
-
actor:
|
1114
|
-
id:
|
1115
|
-
name:
|
1116
|
-
email:
|
1117
|
-
address:
|
1118
|
-
phone:
|
1144
|
+
connectedUserName: z29.string().optional().nullable(),
|
1145
|
+
connectedUserId: z29.string().optional().nullable(),
|
1146
|
+
actor: z29.object({
|
1147
|
+
id: z29.string().uuid(),
|
1148
|
+
name: z29.string(),
|
1149
|
+
email: z29.string().email(),
|
1150
|
+
address: z29.string().nullable(),
|
1151
|
+
phone: z29.string().nullable()
|
1119
1152
|
}).optional()
|
1120
1153
|
});
|
1121
|
-
var SendMessageToPlatformSchema =
|
1122
|
-
room:
|
1123
|
-
id:
|
1124
|
-
lastMessage:
|
1125
|
-
handleTime:
|
1126
|
-
isLatest:
|
1154
|
+
var SendMessageToPlatformSchema = z29.object({
|
1155
|
+
room: z29.object({
|
1156
|
+
id: z29.string().uuid(),
|
1157
|
+
lastMessage: z29.string().optional(),
|
1158
|
+
handleTime: z29.number().optional(),
|
1159
|
+
isLatest: z29.boolean(),
|
1127
1160
|
direction: MessageDirectionTypeSchema,
|
1128
|
-
platformContact:
|
1129
|
-
channelId:
|
1130
|
-
socialPlatformId:
|
1161
|
+
platformContact: z29.object({
|
1162
|
+
channelId: z29.string().uuid(),
|
1163
|
+
socialPlatformId: z29.string().nullable(),
|
1131
1164
|
type: ChannelTypeSchema,
|
1132
1165
|
metadata: PlatformContactMetadataSchema,
|
1133
|
-
contact:
|
1134
|
-
name:
|
1135
|
-
address:
|
1136
|
-
channel:
|
1137
|
-
notes:
|
1138
|
-
contactProfile:
|
1139
|
-
socialProfileUrl:
|
1166
|
+
contact: z29.object({
|
1167
|
+
name: z29.string(),
|
1168
|
+
address: z29.string().nullable(),
|
1169
|
+
channel: z29.string().nullable(),
|
1170
|
+
notes: z29.string().nullable(),
|
1171
|
+
contactProfile: z29.string().nullable(),
|
1172
|
+
socialProfileUrl: z29.string().nullable()
|
1140
1173
|
})
|
1141
1174
|
}),
|
1142
|
-
actor:
|
1143
|
-
name:
|
1144
|
-
email:
|
1145
|
-
address:
|
1146
|
-
phone:
|
1175
|
+
actor: z29.object({
|
1176
|
+
name: z29.string(),
|
1177
|
+
email: z29.string().email(),
|
1178
|
+
address: z29.string().nullable(),
|
1179
|
+
phone: z29.string().nullable()
|
1147
1180
|
}).nullable(),
|
1148
1181
|
channel: ChannelSchema2
|
1149
1182
|
}),
|
1150
|
-
message:
|
1151
|
-
message:
|
1183
|
+
message: z29.object({
|
1184
|
+
message: z29.string().optional(),
|
1152
1185
|
direction: MessageDirectionTypeSchema,
|
1153
1186
|
type: MessageTypeSchema,
|
1154
|
-
readAt:
|
1155
|
-
metadata:
|
1156
|
-
platformId:
|
1157
|
-
platformMessageId:
|
1158
|
-
replyPlatformMessageId:
|
1159
|
-
template:
|
1187
|
+
readAt: z29.date().optional(),
|
1188
|
+
metadata: z29.any().optional(),
|
1189
|
+
platformId: z29.string().optional(),
|
1190
|
+
platformMessageId: z29.string().optional(),
|
1191
|
+
replyPlatformMessageId: z29.string().optional(),
|
1192
|
+
template: z29.any().optional(),
|
1160
1193
|
locale: MessageLocaleTypeSchema.optional(),
|
1161
|
-
url:
|
1162
|
-
previewUrl:
|
1163
|
-
imageSetId:
|
1194
|
+
url: z29.string().optional(),
|
1195
|
+
previewUrl: z29.string().optional(),
|
1196
|
+
imageSetId: z29.string().optional(),
|
1164
1197
|
upload: UploadSchema.optional(),
|
1165
|
-
sender:
|
1166
|
-
name:
|
1167
|
-
email:
|
1168
|
-
address:
|
1169
|
-
phone:
|
1198
|
+
sender: z29.object({
|
1199
|
+
name: z29.string(),
|
1200
|
+
email: z29.string().email(),
|
1201
|
+
address: z29.string().nullable(),
|
1202
|
+
phone: z29.string().nullable()
|
1170
1203
|
})
|
1171
1204
|
})
|
1172
1205
|
});
|
@@ -1178,28 +1211,28 @@ var ChannelServiceResponseSchema = DefaultSuccessResponseSchema.extend(
|
|
1178
1211
|
data: ChannelSchema2
|
1179
1212
|
}
|
1180
1213
|
);
|
1181
|
-
var ReceiveMessageSchema =
|
1182
|
-
message:
|
1183
|
-
message:
|
1214
|
+
var ReceiveMessageSchema = z29.object({
|
1215
|
+
message: z29.object({
|
1216
|
+
message: z29.string(),
|
1184
1217
|
direction: MessageDirectionTypeSchema,
|
1185
1218
|
type: MessageTypeSchema,
|
1186
|
-
metadata:
|
1187
|
-
platformId:
|
1188
|
-
platformMessageId:
|
1189
|
-
replyPlatformMessageId:
|
1190
|
-
template:
|
1219
|
+
metadata: z29.any(),
|
1220
|
+
platformId: z29.string(),
|
1221
|
+
platformMessageId: z29.string(),
|
1222
|
+
replyPlatformMessageId: z29.string().optional(),
|
1223
|
+
template: z29.any(),
|
1191
1224
|
locale: MessageLocaleTypeSchema.nullable(),
|
1192
|
-
url:
|
1193
|
-
previewUrl:
|
1194
|
-
imageSetId:
|
1195
|
-
room:
|
1196
|
-
lastMessage:
|
1197
|
-
handleTime:
|
1198
|
-
closeAt:
|
1199
|
-
unreadCount:
|
1200
|
-
firstResponseAt:
|
1201
|
-
firstResponseTime:
|
1202
|
-
isLatest:
|
1225
|
+
url: z29.string().optional(),
|
1226
|
+
previewUrl: z29.string().optional(),
|
1227
|
+
imageSetId: z29.string().optional(),
|
1228
|
+
room: z29.object({
|
1229
|
+
lastMessage: z29.string(),
|
1230
|
+
handleTime: z29.number(),
|
1231
|
+
closeAt: z29.date(),
|
1232
|
+
unreadCount: z29.number(),
|
1233
|
+
firstResponseAt: z29.date().nullable(),
|
1234
|
+
firstResponseTime: z29.number().nullable(),
|
1235
|
+
isLatest: z29.boolean(),
|
1203
1236
|
direction: MessageDirectionTypeSchema,
|
1204
1237
|
platformContact: PlatformContactSchema,
|
1205
1238
|
actor: UserSchema,
|
@@ -1229,9 +1262,9 @@ var receiveMessageContract = initContract6().router(
|
|
1229
1262
|
}
|
1230
1263
|
},
|
1231
1264
|
{
|
1232
|
-
baseHeaders:
|
1233
|
-
"x-code":
|
1234
|
-
"x-tenant":
|
1265
|
+
baseHeaders: z30.object({
|
1266
|
+
"x-code": z30.string().uuid(),
|
1267
|
+
"x-tenant": z30.string().uuid()
|
1235
1268
|
}),
|
1236
1269
|
pathPrefix: "message"
|
1237
1270
|
}
|
@@ -1243,11 +1276,11 @@ var mainChatContract = initContract6().router(
|
|
1243
1276
|
path: "/rooms",
|
1244
1277
|
responses: {
|
1245
1278
|
200: DefaultSuccessResponseSchema.extend({
|
1246
|
-
total:
|
1247
|
-
page:
|
1248
|
-
pageSize:
|
1249
|
-
data:
|
1250
|
-
unreadCountsByAssignee:
|
1279
|
+
total: z30.number(),
|
1280
|
+
page: z30.number(),
|
1281
|
+
pageSize: z30.number(),
|
1282
|
+
data: z30.array(RoomSchema),
|
1283
|
+
unreadCountsByAssignee: z30.array(UnreadCountsByAssigneeSchema)
|
1251
1284
|
}),
|
1252
1285
|
401: DefaultUnauthorizedSchema
|
1253
1286
|
},
|
@@ -1257,8 +1290,8 @@ var mainChatContract = initContract6().router(
|
|
1257
1290
|
getRoomContact: {
|
1258
1291
|
method: "GET",
|
1259
1292
|
path: "/contact/:contactId",
|
1260
|
-
pathParams:
|
1261
|
-
contactId:
|
1293
|
+
pathParams: z30.object({
|
1294
|
+
contactId: z30.string().uuid()
|
1262
1295
|
}),
|
1263
1296
|
responses: {
|
1264
1297
|
200: DefaultSuccessResponseSchema.extend({
|
@@ -1283,9 +1316,6 @@ var mainChatContract = initContract6().router(
|
|
1283
1316
|
path: "/message",
|
1284
1317
|
body: SendMessageSchema,
|
1285
1318
|
responses: {
|
1286
|
-
200: DefaultSuccessResponseSchema.extend({
|
1287
|
-
data: MessageSchema
|
1288
|
-
}),
|
1289
1319
|
500: DefaultErrorResponseSchema
|
1290
1320
|
},
|
1291
1321
|
summary: "Send message to room"
|
@@ -1293,32 +1323,32 @@ var mainChatContract = initContract6().router(
|
|
1293
1323
|
getRoomsByPlatformContactId: {
|
1294
1324
|
method: "GET",
|
1295
1325
|
path: "/rooms/:platformContactId",
|
1296
|
-
pathParams:
|
1297
|
-
platformContactId:
|
1326
|
+
pathParams: z30.object({
|
1327
|
+
platformContactId: z30.string()
|
1298
1328
|
}),
|
1299
1329
|
responses: {
|
1300
1330
|
200: DefaultSuccessResponseSchema.extend({
|
1301
|
-
data:
|
1302
|
-
|
1303
|
-
id:
|
1331
|
+
data: z30.array(
|
1332
|
+
z30.object({
|
1333
|
+
id: z30.string().uuid()
|
1304
1334
|
})
|
1305
1335
|
),
|
1306
|
-
total:
|
1336
|
+
total: z30.number()
|
1307
1337
|
})
|
1308
1338
|
}
|
1309
1339
|
},
|
1310
1340
|
getMessages: {
|
1311
1341
|
method: "GET",
|
1312
1342
|
path: "/message/:roomId",
|
1313
|
-
pathParams:
|
1314
|
-
roomId:
|
1343
|
+
pathParams: z30.object({
|
1344
|
+
roomId: z30.string().uuid()
|
1315
1345
|
}),
|
1316
1346
|
responses: {
|
1317
1347
|
200: DefaultSuccessResponseSchema.extend({
|
1318
|
-
total:
|
1319
|
-
page:
|
1320
|
-
pageSize:
|
1321
|
-
data:
|
1348
|
+
total: z30.number(),
|
1349
|
+
page: z30.number(),
|
1350
|
+
pageSize: z30.number(),
|
1351
|
+
data: z30.array(MessageSchema)
|
1322
1352
|
})
|
1323
1353
|
},
|
1324
1354
|
query: DefaultQueryParamsSchema,
|
@@ -1331,7 +1361,7 @@ var mainChatContract = initContract6().router(
|
|
1331
1361
|
responses: {
|
1332
1362
|
200: DefaultSuccessResponseSchema.extend({
|
1333
1363
|
data: RoomSchema.extend({
|
1334
|
-
solveMessage:
|
1364
|
+
solveMessage: z30.string()
|
1335
1365
|
})
|
1336
1366
|
}),
|
1337
1367
|
409: DefaultErrorResponseSchema
|
@@ -1352,8 +1382,8 @@ var mainChatContract = initContract6().router(
|
|
1352
1382
|
getRoom: {
|
1353
1383
|
method: "GET",
|
1354
1384
|
path: "/room/:roomId",
|
1355
|
-
pathParams:
|
1356
|
-
roomId:
|
1385
|
+
pathParams: z30.object({
|
1386
|
+
roomId: z30.string().uuid()
|
1357
1387
|
}),
|
1358
1388
|
responses: {
|
1359
1389
|
200: DefaultSuccessResponseSchema.extend({
|
@@ -1366,14 +1396,14 @@ var mainChatContract = initContract6().router(
|
|
1366
1396
|
createRoom: {
|
1367
1397
|
method: "POST",
|
1368
1398
|
path: "/room/create/:platformContactId",
|
1369
|
-
pathParams:
|
1370
|
-
platformContactId:
|
1399
|
+
pathParams: z30.object({
|
1400
|
+
platformContactId: z30.string().uuid()
|
1371
1401
|
}),
|
1372
1402
|
responses: {
|
1373
1403
|
200: DefaultSuccessResponseSchema.extend({
|
1374
1404
|
data: RoomSchema.extend({
|
1375
1405
|
contact: ContactSchema,
|
1376
|
-
openMessage:
|
1406
|
+
openMessage: z30.string()
|
1377
1407
|
})
|
1378
1408
|
})
|
1379
1409
|
},
|
@@ -1383,13 +1413,13 @@ var mainChatContract = initContract6().router(
|
|
1383
1413
|
readRoom: {
|
1384
1414
|
method: "POST",
|
1385
1415
|
path: "/room/:roomid/read",
|
1386
|
-
pathParams:
|
1387
|
-
roomId:
|
1416
|
+
pathParams: z30.object({
|
1417
|
+
roomId: z30.string().uuid()
|
1388
1418
|
}),
|
1389
1419
|
responses: {
|
1390
1420
|
200: DefaultSuccessResponseSchema.extend({
|
1391
1421
|
data: RoomSchema.extend({
|
1392
|
-
description:
|
1422
|
+
description: z30.string().nullable()
|
1393
1423
|
})
|
1394
1424
|
})
|
1395
1425
|
},
|
@@ -1401,10 +1431,10 @@ var mainChatContract = initContract6().router(
|
|
1401
1431
|
path: "/search",
|
1402
1432
|
responses: {
|
1403
1433
|
200: DefaultSuccessResponseSchema.extend({
|
1404
|
-
total:
|
1405
|
-
page:
|
1406
|
-
pageSize:
|
1407
|
-
data:
|
1434
|
+
total: z30.number(),
|
1435
|
+
page: z30.number(),
|
1436
|
+
pageSize: z30.number(),
|
1437
|
+
data: z30.array(RoomSchema)
|
1408
1438
|
})
|
1409
1439
|
},
|
1410
1440
|
query: SearchRoomsSchema,
|
@@ -1419,99 +1449,99 @@ var mainChatContract = initContract6().router(
|
|
1419
1449
|
|
1420
1450
|
// src/contact/index.ts
|
1421
1451
|
import { initContract as initContract7 } from "@ts-rest/core";
|
1422
|
-
import
|
1452
|
+
import z32 from "zod";
|
1423
1453
|
|
1424
1454
|
// src/contact/validation.ts
|
1425
|
-
import
|
1426
|
-
var BaseSchema =
|
1427
|
-
isRequired:
|
1428
|
-
attributeId:
|
1455
|
+
import z31 from "zod";
|
1456
|
+
var BaseSchema = z31.object({
|
1457
|
+
isRequired: z31.boolean(),
|
1458
|
+
attributeId: z31.string()
|
1429
1459
|
});
|
1430
1460
|
var SingleValue = {
|
1431
|
-
value:
|
1461
|
+
value: z31.string()
|
1432
1462
|
};
|
1433
1463
|
var ContactContractValidationSchema = {
|
1434
1464
|
create: {
|
1435
|
-
request:
|
1465
|
+
request: z31.object({
|
1436
1466
|
name: BaseSchema.extend(SingleValue),
|
1437
1467
|
email: BaseSchema.extend({
|
1438
|
-
value:
|
1439
|
-
|
1440
|
-
email:
|
1441
|
-
isPrimary:
|
1468
|
+
value: z31.array(
|
1469
|
+
z31.object({
|
1470
|
+
email: z31.string(),
|
1471
|
+
isPrimary: z31.boolean()
|
1442
1472
|
})
|
1443
1473
|
)
|
1444
1474
|
}),
|
1445
1475
|
channel: BaseSchema.extend(SingleValue),
|
1446
1476
|
address: BaseSchema.extend(SingleValue),
|
1447
1477
|
phone: BaseSchema.extend({
|
1448
|
-
value:
|
1449
|
-
|
1450
|
-
phone:
|
1451
|
-
isPrimary:
|
1478
|
+
value: z31.array(
|
1479
|
+
z31.object({
|
1480
|
+
phone: z31.string(),
|
1481
|
+
isPrimary: z31.boolean()
|
1452
1482
|
})
|
1453
1483
|
)
|
1454
1484
|
}).optional(),
|
1455
1485
|
notes: BaseSchema.extend(SingleValue),
|
1456
1486
|
tags: BaseSchema.extend({
|
1457
|
-
value:
|
1487
|
+
value: z31.array(z31.string())
|
1458
1488
|
}),
|
1459
1489
|
company: BaseSchema.extend(SingleValue),
|
1460
|
-
customFields:
|
1490
|
+
customFields: z31.array(
|
1461
1491
|
BaseSchema.extend({
|
1462
|
-
value:
|
1463
|
-
type:
|
1464
|
-
isDefaultAttribute:
|
1492
|
+
value: z31.union([z31.string(), z31.array(z31.string())]),
|
1493
|
+
type: z31.string(),
|
1494
|
+
isDefaultAttribute: z31.boolean()
|
1465
1495
|
})
|
1466
1496
|
)
|
1467
1497
|
}),
|
1468
|
-
response:
|
1498
|
+
response: z31.string()
|
1469
1499
|
},
|
1470
1500
|
getById: {
|
1471
|
-
request:
|
1472
|
-
id:
|
1501
|
+
request: z31.object({
|
1502
|
+
id: z31.string().uuid()
|
1473
1503
|
}),
|
1474
1504
|
response: ContactSchema
|
1475
1505
|
},
|
1476
1506
|
delete: {
|
1477
|
-
request:
|
1478
|
-
id:
|
1507
|
+
request: z31.object({
|
1508
|
+
id: z31.string().uuid()
|
1479
1509
|
}),
|
1480
|
-
response:
|
1510
|
+
response: z31.string()
|
1481
1511
|
},
|
1482
1512
|
getAll: {
|
1483
|
-
request:
|
1484
|
-
page:
|
1485
|
-
pageSize:
|
1486
|
-
keyword:
|
1487
|
-
company:
|
1488
|
-
name:
|
1489
|
-
address:
|
1490
|
-
channel:
|
1491
|
-
selectedDate:
|
1492
|
-
customFields:
|
1493
|
-
|
1494
|
-
attributeId:
|
1495
|
-
type:
|
1496
|
-
value:
|
1513
|
+
request: z31.object({
|
1514
|
+
page: z31.coerce.number().default(1),
|
1515
|
+
pageSize: z31.coerce.number().default(10),
|
1516
|
+
keyword: z31.string().optional(),
|
1517
|
+
company: z31.array(z31.string().uuid()),
|
1518
|
+
name: z31.string(),
|
1519
|
+
address: z31.string(),
|
1520
|
+
channel: z31.array(z31.string()),
|
1521
|
+
selectedDate: z31.string(),
|
1522
|
+
customFields: z31.array(
|
1523
|
+
z31.object({
|
1524
|
+
attributeId: z31.string().uuid(),
|
1525
|
+
type: z31.string(),
|
1526
|
+
value: z31.union([z31.string(), z31.array(z31.string())])
|
1497
1527
|
})
|
1498
1528
|
),
|
1499
|
-
tags:
|
1500
|
-
phone:
|
1501
|
-
email:
|
1502
|
-
notes:
|
1529
|
+
tags: z31.array(z31.string().uuid()),
|
1530
|
+
phone: z31.string(),
|
1531
|
+
email: z31.string(),
|
1532
|
+
notes: z31.string()
|
1503
1533
|
}).partial(),
|
1504
1534
|
response: {
|
1505
|
-
page:
|
1506
|
-
pageSize:
|
1507
|
-
total:
|
1508
|
-
lastPage:
|
1509
|
-
data:
|
1535
|
+
page: z31.number(),
|
1536
|
+
pageSize: z31.number(),
|
1537
|
+
total: z31.number(),
|
1538
|
+
lastPage: z31.number(),
|
1539
|
+
data: z31.array(ContactSchema)
|
1510
1540
|
}
|
1511
1541
|
},
|
1512
1542
|
createContactByPhone: {
|
1513
|
-
request:
|
1514
|
-
phoneNumber:
|
1543
|
+
request: z31.object({
|
1544
|
+
phoneNumber: z31.string().refine(
|
1515
1545
|
(value) => {
|
1516
1546
|
const numericValue = value.replace(/\s/g, "");
|
1517
1547
|
return /^\d+$/.test(numericValue);
|
@@ -1524,8 +1554,8 @@ var ContactContractValidationSchema = {
|
|
1524
1554
|
response: ContactSchema
|
1525
1555
|
},
|
1526
1556
|
updateContactByPhone: {
|
1527
|
-
request:
|
1528
|
-
phoneNumber:
|
1557
|
+
request: z31.object({
|
1558
|
+
phoneNumber: z31.string().refine(
|
1529
1559
|
(value) => {
|
1530
1560
|
const numericValue = value.replace(/\s/g, "");
|
1531
1561
|
return /^\d+$/.test(numericValue);
|
@@ -1538,68 +1568,68 @@ var ContactContractValidationSchema = {
|
|
1538
1568
|
response: ContactSchema
|
1539
1569
|
},
|
1540
1570
|
updateFromOngoingCall: {
|
1541
|
-
request:
|
1542
|
-
name:
|
1543
|
-
companyId:
|
1571
|
+
request: z31.object({
|
1572
|
+
name: z31.string(),
|
1573
|
+
companyId: z31.string().uuid()
|
1544
1574
|
}).partial(),
|
1545
1575
|
response: ContactSchema
|
1546
1576
|
},
|
1547
1577
|
merge: {
|
1548
|
-
request:
|
1549
|
-
primaryContactId:
|
1550
|
-
emails:
|
1551
|
-
|
1552
|
-
email:
|
1553
|
-
isPrimary:
|
1578
|
+
request: z31.object({
|
1579
|
+
primaryContactId: z31.string().uuid(),
|
1580
|
+
emails: z31.array(
|
1581
|
+
z31.object({
|
1582
|
+
email: z31.string(),
|
1583
|
+
isPrimary: z31.boolean()
|
1554
1584
|
})
|
1555
1585
|
),
|
1556
|
-
phones:
|
1557
|
-
|
1558
|
-
phone:
|
1559
|
-
isPrimary:
|
1586
|
+
phones: z31.array(
|
1587
|
+
z31.object({
|
1588
|
+
phone: z31.string(),
|
1589
|
+
isPrimary: z31.boolean()
|
1560
1590
|
})
|
1561
1591
|
),
|
1562
|
-
otherContacts:
|
1592
|
+
otherContacts: z31.array(z31.string().uuid())
|
1563
1593
|
}),
|
1564
1594
|
response: ContactSchema
|
1565
1595
|
},
|
1566
1596
|
checkContactPhone: {
|
1567
|
-
request:
|
1568
|
-
contactId:
|
1569
|
-
phoneNumber:
|
1597
|
+
request: z31.object({
|
1598
|
+
contactId: z31.string().uuid().optional(),
|
1599
|
+
phoneNumber: z31.string()
|
1570
1600
|
}),
|
1571
|
-
response:
|
1601
|
+
response: z31.boolean()
|
1572
1602
|
},
|
1573
1603
|
checkContactEmail: {
|
1574
|
-
request:
|
1575
|
-
contactId:
|
1576
|
-
email:
|
1604
|
+
request: z31.object({
|
1605
|
+
contactId: z31.string().uuid().optional(),
|
1606
|
+
email: z31.string()
|
1577
1607
|
}),
|
1578
|
-
response:
|
1608
|
+
response: z31.boolean()
|
1579
1609
|
},
|
1580
1610
|
filterContacts: {
|
1581
|
-
request:
|
1582
|
-
page:
|
1583
|
-
pageSize:
|
1584
|
-
keyword:
|
1611
|
+
request: z31.object({
|
1612
|
+
page: z31.coerce.number().default(1),
|
1613
|
+
pageSize: z31.coerce.number().default(10),
|
1614
|
+
keyword: z31.string()
|
1585
1615
|
}).partial(),
|
1586
1616
|
response: {
|
1587
|
-
page:
|
1588
|
-
pageSize:
|
1589
|
-
total:
|
1590
|
-
lastPage:
|
1591
|
-
data:
|
1617
|
+
page: z31.number(),
|
1618
|
+
pageSize: z31.number(),
|
1619
|
+
total: z31.number(),
|
1620
|
+
lastPage: z31.number(),
|
1621
|
+
data: z31.array(ContactSchema)
|
1592
1622
|
}
|
1593
1623
|
},
|
1594
1624
|
addAttachments: {
|
1595
|
-
request:
|
1596
|
-
attributeId:
|
1597
|
-
attachments:
|
1598
|
-
|
1599
|
-
bucketName:
|
1600
|
-
fileKey:
|
1601
|
-
fileName:
|
1602
|
-
fileSize:
|
1625
|
+
request: z31.object({
|
1626
|
+
attributeId: z31.string().uuid(),
|
1627
|
+
attachments: z31.array(
|
1628
|
+
z31.object({
|
1629
|
+
bucketName: z31.string(),
|
1630
|
+
fileKey: z31.string(),
|
1631
|
+
fileName: z31.string(),
|
1632
|
+
fileSize: z31.coerce.number()
|
1603
1633
|
})
|
1604
1634
|
).optional()
|
1605
1635
|
}),
|
@@ -1617,14 +1647,14 @@ var contactContract = initContract7().router(
|
|
1617
1647
|
201: DefaultSuccessResponseSchema.extend({
|
1618
1648
|
message: ContactContractValidationSchema.create.response
|
1619
1649
|
}),
|
1620
|
-
400:
|
1621
|
-
message:
|
1650
|
+
400: z32.object({
|
1651
|
+
message: z32.string()
|
1622
1652
|
}),
|
1623
|
-
409:
|
1624
|
-
message:
|
1653
|
+
409: z32.object({
|
1654
|
+
message: z32.string()
|
1625
1655
|
}),
|
1626
|
-
500:
|
1627
|
-
message:
|
1656
|
+
500: z32.object({
|
1657
|
+
message: z32.string()
|
1628
1658
|
}),
|
1629
1659
|
401: DefaultUnauthorizedSchema,
|
1630
1660
|
404: DefaultNotFoundSchema,
|
@@ -1641,14 +1671,14 @@ var contactContract = initContract7().router(
|
|
1641
1671
|
200: DefaultSuccessResponseSchema.extend(
|
1642
1672
|
ContactContractValidationSchema.getAll.response
|
1643
1673
|
),
|
1644
|
-
400:
|
1645
|
-
message:
|
1674
|
+
400: z32.object({
|
1675
|
+
message: z32.string()
|
1646
1676
|
}),
|
1647
|
-
409:
|
1648
|
-
message:
|
1677
|
+
409: z32.object({
|
1678
|
+
message: z32.string()
|
1649
1679
|
}),
|
1650
|
-
500:
|
1651
|
-
message:
|
1680
|
+
500: z32.object({
|
1681
|
+
message: z32.string()
|
1652
1682
|
}),
|
1653
1683
|
401: DefaultUnauthorizedSchema,
|
1654
1684
|
404: DefaultNotFoundSchema,
|
@@ -1664,14 +1694,14 @@ var contactContract = initContract7().router(
|
|
1664
1694
|
200: DefaultSuccessResponseSchema.extend(
|
1665
1695
|
ContactContractValidationSchema.filterContacts.response
|
1666
1696
|
),
|
1667
|
-
400:
|
1668
|
-
message:
|
1697
|
+
400: z32.object({
|
1698
|
+
message: z32.string()
|
1669
1699
|
}),
|
1670
|
-
409:
|
1671
|
-
message:
|
1700
|
+
409: z32.object({
|
1701
|
+
message: z32.string()
|
1672
1702
|
}),
|
1673
|
-
500:
|
1674
|
-
message:
|
1703
|
+
500: z32.object({
|
1704
|
+
message: z32.string()
|
1675
1705
|
}),
|
1676
1706
|
401: DefaultUnauthorizedSchema,
|
1677
1707
|
404: DefaultNotFoundSchema,
|
@@ -1687,14 +1717,14 @@ var contactContract = initContract7().router(
|
|
1687
1717
|
200: DefaultSuccessResponseSchema.extend({
|
1688
1718
|
data: ContactContractValidationSchema.getById.response
|
1689
1719
|
}),
|
1690
|
-
400:
|
1691
|
-
message:
|
1720
|
+
400: z32.object({
|
1721
|
+
message: z32.string()
|
1692
1722
|
}),
|
1693
|
-
409:
|
1694
|
-
message:
|
1723
|
+
409: z32.object({
|
1724
|
+
message: z32.string()
|
1695
1725
|
}),
|
1696
|
-
500:
|
1697
|
-
message:
|
1726
|
+
500: z32.object({
|
1727
|
+
message: z32.string()
|
1698
1728
|
}),
|
1699
1729
|
401: DefaultUnauthorizedSchema,
|
1700
1730
|
404: DefaultNotFoundSchema,
|
@@ -1711,14 +1741,14 @@ var contactContract = initContract7().router(
|
|
1711
1741
|
200: DefaultSuccessResponseSchema.extend({
|
1712
1742
|
message: ContactContractValidationSchema.delete.response
|
1713
1743
|
}),
|
1714
|
-
400:
|
1715
|
-
message:
|
1744
|
+
400: z32.object({
|
1745
|
+
message: z32.string()
|
1716
1746
|
}),
|
1717
|
-
409:
|
1718
|
-
message:
|
1747
|
+
409: z32.object({
|
1748
|
+
message: z32.string()
|
1719
1749
|
}),
|
1720
|
-
500:
|
1721
|
-
message:
|
1750
|
+
500: z32.object({
|
1751
|
+
message: z32.string()
|
1722
1752
|
}),
|
1723
1753
|
401: DefaultUnauthorizedSchema,
|
1724
1754
|
404: DefaultNotFoundSchema,
|
@@ -1734,14 +1764,14 @@ var contactContract = initContract7().router(
|
|
1734
1764
|
201: DefaultSuccessResponseSchema.extend({
|
1735
1765
|
data: ContactContractValidationSchema.createContactByPhone.response
|
1736
1766
|
}),
|
1737
|
-
400:
|
1738
|
-
message:
|
1767
|
+
400: z32.object({
|
1768
|
+
message: z32.string()
|
1739
1769
|
}),
|
1740
|
-
409:
|
1741
|
-
message:
|
1770
|
+
409: z32.object({
|
1771
|
+
message: z32.string()
|
1742
1772
|
}),
|
1743
|
-
500:
|
1744
|
-
message:
|
1773
|
+
500: z32.object({
|
1774
|
+
message: z32.string()
|
1745
1775
|
}),
|
1746
1776
|
401: DefaultUnauthorizedSchema,
|
1747
1777
|
404: DefaultNotFoundSchema,
|
@@ -1757,14 +1787,14 @@ var contactContract = initContract7().router(
|
|
1757
1787
|
201: DefaultSuccessResponseSchema.extend({
|
1758
1788
|
data: ContactContractValidationSchema.updateFromOngoingCall.response
|
1759
1789
|
}),
|
1760
|
-
400:
|
1761
|
-
message:
|
1790
|
+
400: z32.object({
|
1791
|
+
message: z32.string()
|
1762
1792
|
}),
|
1763
|
-
409:
|
1764
|
-
message:
|
1793
|
+
409: z32.object({
|
1794
|
+
message: z32.string()
|
1765
1795
|
}),
|
1766
|
-
500:
|
1767
|
-
message:
|
1796
|
+
500: z32.object({
|
1797
|
+
message: z32.string()
|
1768
1798
|
}),
|
1769
1799
|
401: DefaultUnauthorizedSchema,
|
1770
1800
|
404: DefaultNotFoundSchema,
|
@@ -1780,14 +1810,14 @@ var contactContract = initContract7().router(
|
|
1780
1810
|
200: DefaultSuccessResponseSchema.extend({
|
1781
1811
|
data: ContactContractValidationSchema.merge.response
|
1782
1812
|
}),
|
1783
|
-
400:
|
1784
|
-
message:
|
1813
|
+
400: z32.object({
|
1814
|
+
message: z32.string()
|
1785
1815
|
}),
|
1786
|
-
409:
|
1787
|
-
message:
|
1816
|
+
409: z32.object({
|
1817
|
+
message: z32.string()
|
1788
1818
|
}),
|
1789
|
-
500:
|
1790
|
-
message:
|
1819
|
+
500: z32.object({
|
1820
|
+
message: z32.string()
|
1791
1821
|
}),
|
1792
1822
|
401: DefaultUnauthorizedSchema,
|
1793
1823
|
404: DefaultNotFoundSchema,
|
@@ -1803,14 +1833,14 @@ var contactContract = initContract7().router(
|
|
1803
1833
|
200: DefaultSuccessResponseSchema.extend({
|
1804
1834
|
existed: ContactContractValidationSchema.checkContactPhone.response
|
1805
1835
|
}),
|
1806
|
-
400:
|
1807
|
-
message:
|
1836
|
+
400: z32.object({
|
1837
|
+
message: z32.string()
|
1808
1838
|
}),
|
1809
|
-
409:
|
1810
|
-
message:
|
1839
|
+
409: z32.object({
|
1840
|
+
message: z32.string()
|
1811
1841
|
}),
|
1812
|
-
500:
|
1813
|
-
message:
|
1842
|
+
500: z32.object({
|
1843
|
+
message: z32.string()
|
1814
1844
|
}),
|
1815
1845
|
401: DefaultUnauthorizedSchema,
|
1816
1846
|
404: DefaultNotFoundSchema,
|
@@ -1826,14 +1856,14 @@ var contactContract = initContract7().router(
|
|
1826
1856
|
200: DefaultSuccessResponseSchema.extend({
|
1827
1857
|
existed: ContactContractValidationSchema.checkContactEmail.response
|
1828
1858
|
}),
|
1829
|
-
400:
|
1830
|
-
message:
|
1859
|
+
400: z32.object({
|
1860
|
+
message: z32.string()
|
1831
1861
|
}),
|
1832
|
-
409:
|
1833
|
-
message:
|
1862
|
+
409: z32.object({
|
1863
|
+
message: z32.string()
|
1834
1864
|
}),
|
1835
|
-
500:
|
1836
|
-
message:
|
1865
|
+
500: z32.object({
|
1866
|
+
message: z32.string()
|
1837
1867
|
}),
|
1838
1868
|
401: DefaultUnauthorizedSchema,
|
1839
1869
|
404: DefaultNotFoundSchema,
|
@@ -1845,21 +1875,21 @@ var contactContract = initContract7().router(
|
|
1845
1875
|
addAttachments: {
|
1846
1876
|
method: "POST",
|
1847
1877
|
path: "/:id/attachments",
|
1848
|
-
pathParams:
|
1849
|
-
id:
|
1878
|
+
pathParams: z32.object({
|
1879
|
+
id: z32.string().uuid()
|
1850
1880
|
}),
|
1851
1881
|
responses: {
|
1852
1882
|
201: DefaultSuccessResponseSchema.extend({
|
1853
1883
|
message: ContactContractValidationSchema.addAttachments.response
|
1854
1884
|
}),
|
1855
|
-
400:
|
1856
|
-
message:
|
1885
|
+
400: z32.object({
|
1886
|
+
message: z32.string()
|
1857
1887
|
}),
|
1858
|
-
409:
|
1859
|
-
message:
|
1888
|
+
409: z32.object({
|
1889
|
+
message: z32.string()
|
1860
1890
|
}),
|
1861
|
-
500:
|
1862
|
-
message:
|
1891
|
+
500: z32.object({
|
1892
|
+
message: z32.string()
|
1863
1893
|
}),
|
1864
1894
|
401: DefaultUnauthorizedSchema,
|
1865
1895
|
404: DefaultNotFoundSchema,
|
@@ -1876,14 +1906,14 @@ var contactContract = initContract7().router(
|
|
1876
1906
|
200: DefaultSuccessResponseSchema.extend({
|
1877
1907
|
data: ContactContractValidationSchema.getById.response
|
1878
1908
|
}),
|
1879
|
-
400:
|
1880
|
-
message:
|
1909
|
+
400: z32.object({
|
1910
|
+
message: z32.string()
|
1881
1911
|
}),
|
1882
|
-
409:
|
1883
|
-
message:
|
1912
|
+
409: z32.object({
|
1913
|
+
message: z32.string()
|
1884
1914
|
}),
|
1885
|
-
500:
|
1886
|
-
message:
|
1915
|
+
500: z32.object({
|
1916
|
+
message: z32.string()
|
1887
1917
|
}),
|
1888
1918
|
401: DefaultUnauthorizedSchema,
|
1889
1919
|
404: DefaultNotFoundSchema,
|
@@ -1900,63 +1930,63 @@ var contactContract = initContract7().router(
|
|
1900
1930
|
|
1901
1931
|
// src/ticket/index.ts
|
1902
1932
|
import { initContract as initContract8 } from "@ts-rest/core";
|
1903
|
-
import
|
1933
|
+
import z35 from "zod";
|
1904
1934
|
|
1905
1935
|
// src/ticket/schema.ts
|
1906
|
-
import
|
1936
|
+
import z33 from "zod";
|
1907
1937
|
var TicketCustomFieldSchema = DefaultEntitySchema.extend({
|
1908
|
-
textValue:
|
1909
|
-
booleanValue:
|
1910
|
-
numberValue:
|
1911
|
-
dateValue:
|
1938
|
+
textValue: z33.string().nullable(),
|
1939
|
+
booleanValue: z33.boolean().nullable(),
|
1940
|
+
numberValue: z33.coerce.number().nullable(),
|
1941
|
+
dateValue: z33.date().nullable(),
|
1912
1942
|
attribute: AttributeSchema.omit({ options: true, group: true }),
|
1913
|
-
uploads:
|
1914
|
-
});
|
1915
|
-
var TicketEntityTypesSchema =
|
1916
|
-
id:
|
1917
|
-
createdAt:
|
1918
|
-
updatedAt:
|
1919
|
-
deletedAt:
|
1920
|
-
entity:
|
1921
|
-
description:
|
1922
|
-
});
|
1923
|
-
var TicketActivitySchema =
|
1924
|
-
id:
|
1925
|
-
createdAt:
|
1926
|
-
updatedAt:
|
1927
|
-
deletedAt:
|
1928
|
-
entityId:
|
1929
|
-
description:
|
1943
|
+
uploads: z33.array(UploadSchema)
|
1944
|
+
});
|
1945
|
+
var TicketEntityTypesSchema = z33.object({
|
1946
|
+
id: z33.string().uuid(),
|
1947
|
+
createdAt: z33.date(),
|
1948
|
+
updatedAt: z33.date(),
|
1949
|
+
deletedAt: z33.date().nullable(),
|
1950
|
+
entity: z33.string(),
|
1951
|
+
description: z33.string().nullable()
|
1952
|
+
});
|
1953
|
+
var TicketActivitySchema = z33.object({
|
1954
|
+
id: z33.string().uuid(),
|
1955
|
+
createdAt: z33.date(),
|
1956
|
+
updatedAt: z33.date(),
|
1957
|
+
deletedAt: z33.date().nullable(),
|
1958
|
+
entityId: z33.string(),
|
1959
|
+
description: z33.string(),
|
1930
1960
|
entityType: TicketEntityTypesSchema
|
1931
1961
|
});
|
1932
1962
|
var TicketSchema = DefaultEntitySchema.extend({
|
1933
|
-
title:
|
1934
|
-
description:
|
1935
|
-
type:
|
1936
|
-
channel:
|
1937
|
-
priority:
|
1938
|
-
status:
|
1939
|
-
contactId:
|
1940
|
-
creatorId:
|
1941
|
-
assigneeId:
|
1963
|
+
title: z33.string(),
|
1964
|
+
description: z33.string().nullable(),
|
1965
|
+
type: z33.string(),
|
1966
|
+
channel: z33.string(),
|
1967
|
+
priority: z33.string(),
|
1968
|
+
status: z33.string(),
|
1969
|
+
contactId: z33.string().uuid(),
|
1970
|
+
creatorId: z33.string().uuid(),
|
1971
|
+
assigneeId: z33.string().uuid(),
|
1942
1972
|
assignee: UserSchema,
|
1943
|
-
reasonToAssign:
|
1944
|
-
ticketNumber:
|
1945
|
-
customFields:
|
1946
|
-
tags:
|
1947
|
-
categories:
|
1973
|
+
reasonToAssign: z33.string().nullable(),
|
1974
|
+
ticketNumber: z33.coerce.number().optional(),
|
1975
|
+
customFields: z33.array(TicketCustomFieldSchema),
|
1976
|
+
tags: z33.array(TagSchema),
|
1977
|
+
categories: z33.array(CategorySchema),
|
1948
1978
|
contact: ContactSchema
|
1949
1979
|
});
|
1950
|
-
var TicketCountByContactSchema =
|
1951
|
-
total:
|
1952
|
-
open:
|
1953
|
-
pending:
|
1954
|
-
closed:
|
1955
|
-
solved:
|
1980
|
+
var TicketCountByContactSchema = z33.object({
|
1981
|
+
total: z33.coerce.number(),
|
1982
|
+
open: z33.coerce.number(),
|
1983
|
+
pending: z33.coerce.number(),
|
1984
|
+
closed: z33.coerce.number(),
|
1985
|
+
solved: z33.coerce.number()
|
1956
1986
|
});
|
1957
1987
|
|
1958
1988
|
// src/ticket/validation.ts
|
1959
|
-
import
|
1989
|
+
import z34 from "zod";
|
1960
1990
|
var addErrorMessage = (field) => {
|
1961
1991
|
return field.refine(
|
1962
1992
|
({ isRequired, value }) => {
|
@@ -1974,106 +2004,106 @@ var addErrorMessage = (field) => {
|
|
1974
2004
|
}
|
1975
2005
|
);
|
1976
2006
|
};
|
1977
|
-
var BaseSchema2 =
|
1978
|
-
isRequired:
|
1979
|
-
attributeId:
|
2007
|
+
var BaseSchema2 = z34.object({
|
2008
|
+
isRequired: z34.boolean(),
|
2009
|
+
attributeId: z34.string()
|
1980
2010
|
});
|
1981
2011
|
var SingleValue2 = addErrorMessage(
|
1982
2012
|
BaseSchema2.extend({
|
1983
|
-
value:
|
2013
|
+
value: z34.string()
|
1984
2014
|
})
|
1985
2015
|
);
|
1986
|
-
var CreateTicketValidationSchema =
|
2016
|
+
var CreateTicketValidationSchema = z34.object({
|
1987
2017
|
title: SingleValue2,
|
1988
2018
|
description: SingleValue2,
|
1989
2019
|
status: SingleValue2,
|
1990
2020
|
type: SingleValue2,
|
1991
2021
|
priority: SingleValue2,
|
1992
2022
|
contact: SingleValue2,
|
1993
|
-
assignee:
|
1994
|
-
isRequired:
|
1995
|
-
attributeId:
|
1996
|
-
value:
|
2023
|
+
assignee: z34.object({
|
2024
|
+
isRequired: z34.boolean(),
|
2025
|
+
attributeId: z34.string(),
|
2026
|
+
value: z34.string()
|
1997
2027
|
}),
|
1998
2028
|
channel: SingleValue2,
|
1999
|
-
tags: addErrorMessage(BaseSchema2.extend({ value:
|
2000
|
-
categories: BaseSchema2.extend({ value:
|
2001
|
-
customFields:
|
2029
|
+
tags: addErrorMessage(BaseSchema2.extend({ value: z34.array(z34.string()) })),
|
2030
|
+
categories: BaseSchema2.extend({ value: z34.array(z34.string()) }),
|
2031
|
+
customFields: z34.array(
|
2002
2032
|
addErrorMessage(
|
2003
2033
|
BaseSchema2.extend({
|
2004
|
-
value:
|
2005
|
-
type:
|
2006
|
-
isDefaultAttribute:
|
2034
|
+
value: z34.union([z34.string(), z34.array(z34.string())]),
|
2035
|
+
type: z34.string(),
|
2036
|
+
isDefaultAttribute: z34.boolean()
|
2007
2037
|
})
|
2008
2038
|
)
|
2009
2039
|
),
|
2010
|
-
reasonToAssign:
|
2040
|
+
reasonToAssign: z34.object({ value: z34.string() }).optional()
|
2011
2041
|
});
|
2012
2042
|
var UpdateTicketValidationSchema = CreateTicketValidationSchema;
|
2013
|
-
var TicketAttachmentRecordSchema =
|
2014
|
-
bucketName:
|
2015
|
-
fileKey:
|
2016
|
-
fileName:
|
2017
|
-
fileSize:
|
2018
|
-
url:
|
2019
|
-
});
|
2020
|
-
var CreateTicketAttachmentRecordsSchema =
|
2021
|
-
ticketId:
|
2022
|
-
attributeId:
|
2023
|
-
ticketAttachmentRecords:
|
2024
|
-
});
|
2025
|
-
var TicketParamsSchema =
|
2026
|
-
page:
|
2027
|
-
pageSize:
|
2028
|
-
});
|
2029
|
-
var CustomFieldQuery =
|
2030
|
-
attributeId:
|
2031
|
-
type:
|
2032
|
-
value:
|
2033
|
-
});
|
2034
|
-
var GetAllTicketQuerySchema =
|
2035
|
-
page:
|
2036
|
-
pageSize:
|
2037
|
-
agent:
|
2038
|
-
selectedDate:
|
2039
|
-
keyword:
|
2040
|
-
title:
|
2041
|
-
description:
|
2042
|
-
status:
|
2043
|
-
priority:
|
2044
|
-
channel:
|
2045
|
-
type:
|
2046
|
-
ticketType:
|
2047
|
-
contact:
|
2048
|
-
tags:
|
2049
|
-
categories:
|
2050
|
-
customFields:
|
2051
|
-
|
2052
|
-
attributeId:
|
2053
|
-
type:
|
2054
|
-
value:
|
2043
|
+
var TicketAttachmentRecordSchema = z34.object({
|
2044
|
+
bucketName: z34.string(),
|
2045
|
+
fileKey: z34.string(),
|
2046
|
+
fileName: z34.string(),
|
2047
|
+
fileSize: z34.coerce.number(),
|
2048
|
+
url: z34.string()
|
2049
|
+
});
|
2050
|
+
var CreateTicketAttachmentRecordsSchema = z34.object({
|
2051
|
+
ticketId: z34.string(),
|
2052
|
+
attributeId: z34.string(),
|
2053
|
+
ticketAttachmentRecords: z34.array(TicketAttachmentRecordSchema)
|
2054
|
+
});
|
2055
|
+
var TicketParamsSchema = z34.object({
|
2056
|
+
page: z34.coerce.number().default(1),
|
2057
|
+
pageSize: z34.coerce.number().default(10)
|
2058
|
+
});
|
2059
|
+
var CustomFieldQuery = z34.object({
|
2060
|
+
attributeId: z34.string(),
|
2061
|
+
type: z34.string(),
|
2062
|
+
value: z34.union([z34.string(), z34.array(z34.string())])
|
2063
|
+
});
|
2064
|
+
var GetAllTicketQuerySchema = z34.object({
|
2065
|
+
page: z34.string().transform((value) => Number(value)),
|
2066
|
+
pageSize: z34.string().transform((value) => Number(value)),
|
2067
|
+
agent: z34.array(z34.string()),
|
2068
|
+
selectedDate: z34.string(),
|
2069
|
+
keyword: z34.string(),
|
2070
|
+
title: z34.string(),
|
2071
|
+
description: z34.string(),
|
2072
|
+
status: z34.array(z34.string()),
|
2073
|
+
priority: z34.array(z34.string()),
|
2074
|
+
channel: z34.array(z34.string()),
|
2075
|
+
type: z34.array(z34.string()),
|
2076
|
+
ticketType: z34.array(z34.string()),
|
2077
|
+
contact: z34.array(z34.string()),
|
2078
|
+
tags: z34.array(z34.string()),
|
2079
|
+
categories: z34.array(z34.string()),
|
2080
|
+
customFields: z34.array(
|
2081
|
+
z34.object({
|
2082
|
+
attributeId: z34.string().uuid(),
|
2083
|
+
type: z34.string(),
|
2084
|
+
value: z34.union([z34.string(), z34.array(z34.string())])
|
2055
2085
|
})
|
2056
2086
|
)
|
2057
2087
|
}).partial();
|
2058
|
-
var ExportAllTicketQuerySchema =
|
2059
|
-
agent:
|
2060
|
-
selectedDate:
|
2061
|
-
keyword:
|
2062
|
-
title:
|
2063
|
-
description:
|
2064
|
-
status:
|
2065
|
-
priority:
|
2066
|
-
channel:
|
2067
|
-
type:
|
2068
|
-
ticketType:
|
2069
|
-
contact:
|
2070
|
-
tags:
|
2071
|
-
categories:
|
2072
|
-
customFields:
|
2073
|
-
|
2074
|
-
attributeId:
|
2075
|
-
type:
|
2076
|
-
value:
|
2088
|
+
var ExportAllTicketQuerySchema = z34.object({
|
2089
|
+
agent: z34.array(z34.string()),
|
2090
|
+
selectedDate: z34.string(),
|
2091
|
+
keyword: z34.string(),
|
2092
|
+
title: z34.string(),
|
2093
|
+
description: z34.string(),
|
2094
|
+
status: z34.array(z34.string()),
|
2095
|
+
priority: z34.array(z34.string()),
|
2096
|
+
channel: z34.array(z34.string()),
|
2097
|
+
type: z34.array(z34.string()),
|
2098
|
+
ticketType: z34.array(z34.string()),
|
2099
|
+
contact: z34.array(z34.string()),
|
2100
|
+
tags: z34.array(z34.string()),
|
2101
|
+
categories: z34.array(z34.string()),
|
2102
|
+
customFields: z34.array(
|
2103
|
+
z34.object({
|
2104
|
+
attributeId: z34.string().uuid(),
|
2105
|
+
type: z34.string(),
|
2106
|
+
value: z34.union([z34.string(), z34.array(z34.string())])
|
2077
2107
|
})
|
2078
2108
|
)
|
2079
2109
|
}).partial();
|
@@ -2089,14 +2119,14 @@ var ticketContract = initContract8().router(
|
|
2089
2119
|
201: DefaultSuccessResponseSchema.extend({
|
2090
2120
|
data: TicketSchema
|
2091
2121
|
}),
|
2092
|
-
400:
|
2093
|
-
message:
|
2122
|
+
400: z35.object({
|
2123
|
+
message: z35.string()
|
2094
2124
|
}),
|
2095
|
-
409:
|
2096
|
-
message:
|
2125
|
+
409: z35.object({
|
2126
|
+
message: z35.string()
|
2097
2127
|
}),
|
2098
|
-
500:
|
2099
|
-
message:
|
2128
|
+
500: z35.object({
|
2129
|
+
message: z35.string()
|
2100
2130
|
}),
|
2101
2131
|
401: DefaultUnauthorizedSchema,
|
2102
2132
|
404: DefaultNotFoundSchema,
|
@@ -2117,8 +2147,8 @@ var ticketContract = initContract8().router(
|
|
2117
2147
|
TicketSchema
|
2118
2148
|
)
|
2119
2149
|
}),
|
2120
|
-
400:
|
2121
|
-
message:
|
2150
|
+
400: z35.object({
|
2151
|
+
message: z35.string()
|
2122
2152
|
}),
|
2123
2153
|
401: DefaultUnauthorizedSchema,
|
2124
2154
|
500: DefaultErrorResponseSchema
|
@@ -2128,14 +2158,14 @@ var ticketContract = initContract8().router(
|
|
2128
2158
|
getTicketById: {
|
2129
2159
|
method: "GET",
|
2130
2160
|
path: "/:id",
|
2131
|
-
pathParams:
|
2161
|
+
pathParams: z35.object({ id: z35.string() }),
|
2132
2162
|
headers: DefaultHeaderSchema,
|
2133
2163
|
responses: {
|
2134
2164
|
200: DefaultSuccessResponseSchema.extend({
|
2135
2165
|
data: TicketSchema
|
2136
2166
|
}),
|
2137
|
-
400:
|
2138
|
-
message:
|
2167
|
+
400: z35.object({
|
2168
|
+
message: z35.string()
|
2139
2169
|
}),
|
2140
2170
|
401: DefaultUnauthorizedSchema,
|
2141
2171
|
500: DefaultErrorResponseSchema
|
@@ -2145,15 +2175,15 @@ var ticketContract = initContract8().router(
|
|
2145
2175
|
getTicketByContactId: {
|
2146
2176
|
method: "GET",
|
2147
2177
|
path: "/contact/:id",
|
2148
|
-
pathParams:
|
2178
|
+
pathParams: z35.object({ id: z35.string() }),
|
2149
2179
|
query: TicketParamsSchema,
|
2150
2180
|
headers: DefaultHeaderSchema,
|
2151
2181
|
responses: {
|
2152
2182
|
200: DefaultSuccessResponseSchema.extend({
|
2153
2183
|
data: WithPagination(TicketSchema)
|
2154
2184
|
}),
|
2155
|
-
400:
|
2156
|
-
message:
|
2185
|
+
400: z35.object({
|
2186
|
+
message: z35.string()
|
2157
2187
|
}),
|
2158
2188
|
401: DefaultUnauthorizedSchema,
|
2159
2189
|
500: DefaultErrorResponseSchema
|
@@ -2163,21 +2193,21 @@ var ticketContract = initContract8().router(
|
|
2163
2193
|
updateTicket: {
|
2164
2194
|
method: "PATCH",
|
2165
2195
|
path: "/:id",
|
2166
|
-
pathParams:
|
2196
|
+
pathParams: z35.object({ id: z35.string() }),
|
2167
2197
|
body: UpdateTicketValidationSchema,
|
2168
2198
|
headers: DefaultHeaderSchema,
|
2169
2199
|
responses: {
|
2170
2200
|
201: DefaultSuccessResponseSchema.extend({
|
2171
2201
|
message: TicketSchema
|
2172
2202
|
}),
|
2173
|
-
400:
|
2174
|
-
message:
|
2203
|
+
400: z35.object({
|
2204
|
+
message: z35.string()
|
2175
2205
|
}),
|
2176
|
-
409:
|
2177
|
-
message:
|
2206
|
+
409: z35.object({
|
2207
|
+
message: z35.string()
|
2178
2208
|
}),
|
2179
|
-
500:
|
2180
|
-
message:
|
2209
|
+
500: z35.object({
|
2210
|
+
message: z35.string()
|
2181
2211
|
}),
|
2182
2212
|
401: DefaultUnauthorizedSchema,
|
2183
2213
|
404: DefaultNotFoundSchema,
|
@@ -2188,11 +2218,11 @@ var ticketContract = initContract8().router(
|
|
2188
2218
|
deleteTicket: {
|
2189
2219
|
method: "DELETE",
|
2190
2220
|
path: "/:id",
|
2191
|
-
pathParams:
|
2221
|
+
pathParams: z35.object({ id: z35.string() }),
|
2192
2222
|
headers: DefaultHeaderSchema,
|
2193
2223
|
body: null,
|
2194
2224
|
responses: {
|
2195
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2225
|
+
200: DefaultSuccessResponseSchema.extend({ message: z35.string() }),
|
2196
2226
|
500: DefaultErrorResponseSchema
|
2197
2227
|
},
|
2198
2228
|
summary: "Delete a extension."
|
@@ -2200,19 +2230,19 @@ var ticketContract = initContract8().router(
|
|
2200
2230
|
updateDescription: {
|
2201
2231
|
method: "PATCH",
|
2202
2232
|
path: "/description/update/:id",
|
2203
|
-
pathParams:
|
2204
|
-
body:
|
2233
|
+
pathParams: z35.object({ id: z35.string() }),
|
2234
|
+
body: z35.object({ description: z35.string() }),
|
2205
2235
|
headers: DefaultHeaderSchema,
|
2206
2236
|
responses: {
|
2207
|
-
201: DefaultSuccessResponseSchema.extend({ message:
|
2208
|
-
400:
|
2209
|
-
message:
|
2237
|
+
201: DefaultSuccessResponseSchema.extend({ message: z35.string() }),
|
2238
|
+
400: z35.object({
|
2239
|
+
message: z35.string()
|
2210
2240
|
}),
|
2211
|
-
409:
|
2212
|
-
message:
|
2241
|
+
409: z35.object({
|
2242
|
+
message: z35.string()
|
2213
2243
|
}),
|
2214
|
-
500:
|
2215
|
-
message:
|
2244
|
+
500: z35.object({
|
2245
|
+
message: z35.string()
|
2216
2246
|
}),
|
2217
2247
|
401: DefaultUnauthorizedSchema,
|
2218
2248
|
404: DefaultNotFoundSchema,
|
@@ -2223,19 +2253,19 @@ var ticketContract = initContract8().router(
|
|
2223
2253
|
updateTitle: {
|
2224
2254
|
method: "PATCH",
|
2225
2255
|
path: "/title/update/:id",
|
2226
|
-
pathParams:
|
2227
|
-
body:
|
2256
|
+
pathParams: z35.object({ id: z35.string() }),
|
2257
|
+
body: z35.object({ title: z35.string() }),
|
2228
2258
|
headers: DefaultHeaderSchema,
|
2229
2259
|
responses: {
|
2230
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2231
|
-
400:
|
2232
|
-
message:
|
2260
|
+
200: DefaultSuccessResponseSchema.extend({ message: z35.string() }),
|
2261
|
+
400: z35.object({
|
2262
|
+
message: z35.string()
|
2233
2263
|
}),
|
2234
|
-
409:
|
2235
|
-
message:
|
2264
|
+
409: z35.object({
|
2265
|
+
message: z35.string()
|
2236
2266
|
}),
|
2237
|
-
500:
|
2238
|
-
message:
|
2267
|
+
500: z35.object({
|
2268
|
+
message: z35.string()
|
2239
2269
|
}),
|
2240
2270
|
401: DefaultUnauthorizedSchema,
|
2241
2271
|
404: DefaultNotFoundSchema,
|
@@ -2246,19 +2276,19 @@ var ticketContract = initContract8().router(
|
|
2246
2276
|
updateType: {
|
2247
2277
|
method: "PATCH",
|
2248
2278
|
path: "/type/update/:id",
|
2249
|
-
pathParams:
|
2250
|
-
body:
|
2279
|
+
pathParams: z35.object({ id: z35.string() }),
|
2280
|
+
body: z35.object({ type: z35.string() }),
|
2251
2281
|
headers: DefaultHeaderSchema,
|
2252
2282
|
responses: {
|
2253
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2254
|
-
400:
|
2255
|
-
message:
|
2283
|
+
200: DefaultSuccessResponseSchema.extend({ message: z35.string() }),
|
2284
|
+
400: z35.object({
|
2285
|
+
message: z35.string()
|
2256
2286
|
}),
|
2257
|
-
409:
|
2258
|
-
message:
|
2287
|
+
409: z35.object({
|
2288
|
+
message: z35.string()
|
2259
2289
|
}),
|
2260
|
-
500:
|
2261
|
-
message:
|
2290
|
+
500: z35.object({
|
2291
|
+
message: z35.string()
|
2262
2292
|
}),
|
2263
2293
|
401: DefaultUnauthorizedSchema,
|
2264
2294
|
404: DefaultNotFoundSchema,
|
@@ -2269,19 +2299,19 @@ var ticketContract = initContract8().router(
|
|
2269
2299
|
updateStatus: {
|
2270
2300
|
method: "PATCH",
|
2271
2301
|
path: "/status/update/:id",
|
2272
|
-
pathParams:
|
2273
|
-
body:
|
2302
|
+
pathParams: z35.object({ id: z35.string() }),
|
2303
|
+
body: z35.object({ status: z35.string() }),
|
2274
2304
|
headers: DefaultHeaderSchema,
|
2275
2305
|
responses: {
|
2276
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2277
|
-
400:
|
2278
|
-
message:
|
2306
|
+
200: DefaultSuccessResponseSchema.extend({ message: z35.string() }),
|
2307
|
+
400: z35.object({
|
2308
|
+
message: z35.string()
|
2279
2309
|
}),
|
2280
|
-
409:
|
2281
|
-
message:
|
2310
|
+
409: z35.object({
|
2311
|
+
message: z35.string()
|
2282
2312
|
}),
|
2283
|
-
500:
|
2284
|
-
message:
|
2313
|
+
500: z35.object({
|
2314
|
+
message: z35.string()
|
2285
2315
|
}),
|
2286
2316
|
401: DefaultUnauthorizedSchema,
|
2287
2317
|
404: DefaultNotFoundSchema,
|
@@ -2292,19 +2322,19 @@ var ticketContract = initContract8().router(
|
|
2292
2322
|
updatePriority: {
|
2293
2323
|
method: "PATCH",
|
2294
2324
|
path: "/priority/update/:id",
|
2295
|
-
pathParams:
|
2296
|
-
body:
|
2325
|
+
pathParams: z35.object({ id: z35.string() }),
|
2326
|
+
body: z35.object({ priority: z35.string() }),
|
2297
2327
|
headers: DefaultHeaderSchema,
|
2298
2328
|
responses: {
|
2299
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2300
|
-
400:
|
2301
|
-
message:
|
2329
|
+
200: DefaultSuccessResponseSchema.extend({ message: z35.string() }),
|
2330
|
+
400: z35.object({
|
2331
|
+
message: z35.string()
|
2302
2332
|
}),
|
2303
|
-
409:
|
2304
|
-
message:
|
2333
|
+
409: z35.object({
|
2334
|
+
message: z35.string()
|
2305
2335
|
}),
|
2306
|
-
500:
|
2307
|
-
message:
|
2336
|
+
500: z35.object({
|
2337
|
+
message: z35.string()
|
2308
2338
|
}),
|
2309
2339
|
401: DefaultUnauthorizedSchema,
|
2310
2340
|
404: DefaultNotFoundSchema,
|
@@ -2315,19 +2345,19 @@ var ticketContract = initContract8().router(
|
|
2315
2345
|
updateChannel: {
|
2316
2346
|
method: "PATCH",
|
2317
2347
|
path: "/channel/update/:id",
|
2318
|
-
pathParams:
|
2319
|
-
body:
|
2348
|
+
pathParams: z35.object({ id: z35.string() }),
|
2349
|
+
body: z35.object({ channel: z35.string() }),
|
2320
2350
|
headers: DefaultHeaderSchema,
|
2321
2351
|
responses: {
|
2322
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2323
|
-
400:
|
2324
|
-
message:
|
2352
|
+
200: DefaultSuccessResponseSchema.extend({ message: z35.string() }),
|
2353
|
+
400: z35.object({
|
2354
|
+
message: z35.string()
|
2325
2355
|
}),
|
2326
|
-
409:
|
2327
|
-
message:
|
2356
|
+
409: z35.object({
|
2357
|
+
message: z35.string()
|
2328
2358
|
}),
|
2329
|
-
500:
|
2330
|
-
message:
|
2359
|
+
500: z35.object({
|
2360
|
+
message: z35.string()
|
2331
2361
|
}),
|
2332
2362
|
401: DefaultUnauthorizedSchema,
|
2333
2363
|
404: DefaultNotFoundSchema,
|
@@ -2338,19 +2368,19 @@ var ticketContract = initContract8().router(
|
|
2338
2368
|
updateTags: {
|
2339
2369
|
method: "PATCH",
|
2340
2370
|
path: "/tags/update/:id",
|
2341
|
-
pathParams:
|
2342
|
-
body:
|
2371
|
+
pathParams: z35.object({ id: z35.string() }),
|
2372
|
+
body: z35.object({ tags: z35.array(z35.string()) }),
|
2343
2373
|
headers: DefaultHeaderSchema,
|
2344
2374
|
responses: {
|
2345
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2346
|
-
400:
|
2347
|
-
message:
|
2375
|
+
200: DefaultSuccessResponseSchema.extend({ message: z35.string() }),
|
2376
|
+
400: z35.object({
|
2377
|
+
message: z35.string()
|
2348
2378
|
}),
|
2349
|
-
409:
|
2350
|
-
message:
|
2379
|
+
409: z35.object({
|
2380
|
+
message: z35.string()
|
2351
2381
|
}),
|
2352
|
-
500:
|
2353
|
-
message:
|
2382
|
+
500: z35.object({
|
2383
|
+
message: z35.string()
|
2354
2384
|
}),
|
2355
2385
|
401: DefaultUnauthorizedSchema,
|
2356
2386
|
404: DefaultNotFoundSchema,
|
@@ -2361,21 +2391,21 @@ var ticketContract = initContract8().router(
|
|
2361
2391
|
changeAssignee: {
|
2362
2392
|
method: "PATCH",
|
2363
2393
|
path: "/assignee/update/:id",
|
2364
|
-
pathParams:
|
2365
|
-
body:
|
2394
|
+
pathParams: z35.object({ id: z35.string() }),
|
2395
|
+
body: z35.object({ ticketId: z35.string(), assigneeId: z35.string() }),
|
2366
2396
|
headers: DefaultHeaderSchema,
|
2367
2397
|
responses: {
|
2368
2398
|
200: DefaultSuccessResponseSchema.extend({
|
2369
2399
|
data: TicketSchema
|
2370
2400
|
}),
|
2371
|
-
400:
|
2372
|
-
message:
|
2401
|
+
400: z35.object({
|
2402
|
+
message: z35.string()
|
2373
2403
|
}),
|
2374
|
-
409:
|
2375
|
-
message:
|
2404
|
+
409: z35.object({
|
2405
|
+
message: z35.string()
|
2376
2406
|
}),
|
2377
|
-
500:
|
2378
|
-
message:
|
2407
|
+
500: z35.object({
|
2408
|
+
message: z35.string()
|
2379
2409
|
}),
|
2380
2410
|
401: DefaultUnauthorizedSchema,
|
2381
2411
|
404: DefaultNotFoundSchema,
|
@@ -2386,14 +2416,14 @@ var ticketContract = initContract8().router(
|
|
2386
2416
|
getTicketCountByContact: {
|
2387
2417
|
method: "GET",
|
2388
2418
|
path: "/ticket_count/contact/:id",
|
2389
|
-
pathParams:
|
2419
|
+
pathParams: z35.object({ id: z35.string() }),
|
2390
2420
|
headers: DefaultHeaderSchema,
|
2391
2421
|
responses: {
|
2392
2422
|
200: DefaultSuccessResponseSchema.extend({
|
2393
2423
|
data: TicketCountByContactSchema
|
2394
2424
|
}),
|
2395
|
-
400:
|
2396
|
-
message:
|
2425
|
+
400: z35.object({
|
2426
|
+
message: z35.string()
|
2397
2427
|
}),
|
2398
2428
|
401: DefaultUnauthorizedSchema,
|
2399
2429
|
500: DefaultErrorResponseSchema
|
@@ -2409,14 +2439,14 @@ var ticketContract = initContract8().router(
|
|
2409
2439
|
201: DefaultSuccessResponseSchema.extend({
|
2410
2440
|
data: TicketCustomFieldSchema
|
2411
2441
|
}),
|
2412
|
-
400:
|
2413
|
-
message:
|
2442
|
+
400: z35.object({
|
2443
|
+
message: z35.string()
|
2414
2444
|
}),
|
2415
|
-
409:
|
2416
|
-
message:
|
2445
|
+
409: z35.object({
|
2446
|
+
message: z35.string()
|
2417
2447
|
}),
|
2418
|
-
500:
|
2419
|
-
message:
|
2448
|
+
500: z35.object({
|
2449
|
+
message: z35.string()
|
2420
2450
|
}),
|
2421
2451
|
401: DefaultUnauthorizedSchema,
|
2422
2452
|
404: DefaultNotFoundSchema,
|
@@ -2441,45 +2471,45 @@ var ticketContract = initContract8().router(
|
|
2441
2471
|
|
2442
2472
|
// src/cx-log/index.ts
|
2443
2473
|
import { initContract as initContract9 } from "@ts-rest/core";
|
2444
|
-
import
|
2474
|
+
import z37 from "zod";
|
2445
2475
|
|
2446
2476
|
// src/cx-log/validation.ts
|
2447
|
-
import
|
2448
|
-
var sentimentScoreSchema =
|
2449
|
-
|
2450
|
-
|
2477
|
+
import z36 from "zod";
|
2478
|
+
var sentimentScoreSchema = z36.union([
|
2479
|
+
z36.literal("positive"),
|
2480
|
+
z36.literal("negative")
|
2451
2481
|
]);
|
2452
|
-
var CustomFieldQueryParamsSchema =
|
2453
|
-
attributeId:
|
2454
|
-
value:
|
2455
|
-
type:
|
2482
|
+
var CustomFieldQueryParamsSchema = z36.object({
|
2483
|
+
attributeId: z36.string(),
|
2484
|
+
value: z36.union([z36.string(), z36.array(z36.string())]),
|
2485
|
+
type: z36.string().optional()
|
2456
2486
|
});
|
2457
2487
|
var GetAllCxLogQueryParamsSchema = DefaultQueryParamsSchema.extend({
|
2458
|
-
contactId:
|
2459
|
-
caseId:
|
2460
|
-
channelIds:
|
2461
|
-
queueId:
|
2462
|
-
agentIds:
|
2463
|
-
direction:
|
2464
|
-
disposition:
|
2465
|
-
sentimentScore:
|
2466
|
-
csatScore:
|
2467
|
-
sla:
|
2468
|
-
tags:
|
2488
|
+
contactId: z36.string().uuid(),
|
2489
|
+
caseId: z36.string(),
|
2490
|
+
channelIds: z36.array(z36.string().uuid()),
|
2491
|
+
queueId: z36.array(z36.string()),
|
2492
|
+
agentIds: z36.array(z36.string()),
|
2493
|
+
direction: z36.array(z36.union([z36.literal("inbound"), z36.literal("outbound")])),
|
2494
|
+
disposition: z36.array(z36.string()),
|
2495
|
+
sentimentScore: z36.array(sentimentScoreSchema),
|
2496
|
+
csatScore: z36.string(),
|
2497
|
+
sla: z36.array(z36.union([z36.literal("meet"), z36.literal("unmeet")])),
|
2498
|
+
tags: z36.array(z36.string()),
|
2469
2499
|
// General tags
|
2470
2500
|
// Default contact attributes
|
2471
|
-
name:
|
2472
|
-
contactLabels:
|
2473
|
-
email:
|
2474
|
-
channel:
|
2475
|
-
phone:
|
2476
|
-
notes:
|
2477
|
-
address:
|
2478
|
-
company:
|
2501
|
+
name: z36.string(),
|
2502
|
+
contactLabels: z36.array(z36.string()),
|
2503
|
+
email: z36.string(),
|
2504
|
+
channel: z36.array(z36.string()),
|
2505
|
+
phone: z36.string(),
|
2506
|
+
notes: z36.string(),
|
2507
|
+
address: z36.string(),
|
2508
|
+
company: z36.array(z36.string()),
|
2479
2509
|
// Custom fields
|
2480
|
-
customFields:
|
2510
|
+
customFields: z36.array(CustomFieldQueryParamsSchema),
|
2481
2511
|
// Date filter
|
2482
|
-
selectedDate:
|
2512
|
+
selectedDate: z36.string()
|
2483
2513
|
}).partial().optional();
|
2484
2514
|
|
2485
2515
|
// src/cx-log/index.ts
|
@@ -2490,10 +2520,10 @@ var cxLogContract = initContract9().router({
|
|
2490
2520
|
headers: DefaultHeaderSchema,
|
2491
2521
|
responses: {
|
2492
2522
|
200: DefaultSuccessResponseSchema.extend({
|
2493
|
-
total:
|
2494
|
-
page:
|
2495
|
-
pageSize:
|
2496
|
-
cxLogs:
|
2523
|
+
total: z37.number(),
|
2524
|
+
page: z37.number(),
|
2525
|
+
pageSize: z37.number(),
|
2526
|
+
cxLogs: z37.array(CxLogSchemaWithRelations)
|
2497
2527
|
}),
|
2498
2528
|
401: DefaultUnauthorizedSchema
|
2499
2529
|
},
|
@@ -2517,22 +2547,6 @@ var cxLogContract = initContract9().router({
|
|
2517
2547
|
import { initContract as initContract10 } from "@ts-rest/core";
|
2518
2548
|
import z39 from "zod";
|
2519
2549
|
|
2520
|
-
// src/extension/schema.ts
|
2521
|
-
import z37 from "zod";
|
2522
|
-
var ExtensionSchema = z37.object({
|
2523
|
-
id: z37.string().uuid(),
|
2524
|
-
createdAt: z37.date(),
|
2525
|
-
updatedAt: z37.date(),
|
2526
|
-
deletedAt: z37.date().nullable(),
|
2527
|
-
userId: z37.string().nullable(),
|
2528
|
-
sipServerUrl: z37.string(),
|
2529
|
-
sipUserName: z37.string(),
|
2530
|
-
webphoneLoginUser: z37.string(),
|
2531
|
-
extensionId: z37.coerce.number(),
|
2532
|
-
extensionName: z37.string(),
|
2533
|
-
telephonySignature: z37.string().nullable()
|
2534
|
-
});
|
2535
|
-
|
2536
2550
|
// src/extension/validation.ts
|
2537
2551
|
import { z as z38 } from "zod";
|
2538
2552
|
var CreateExtensionSchema = z38.object({
|
@@ -5014,7 +5028,7 @@ var telephonyCdrContract = initContract32().router(
|
|
5014
5028
|
total: z84.number(),
|
5015
5029
|
page: z84.number(),
|
5016
5030
|
pageSize: z84.number(),
|
5017
|
-
telephonyCdrs: z84.array(
|
5031
|
+
telephonyCdrs: z84.array(TelephonyCdrSchema)
|
5018
5032
|
}),
|
5019
5033
|
401: DefaultUnauthorizedSchema
|
5020
5034
|
},
|
@@ -5030,7 +5044,7 @@ var telephonyCdrContract = initContract32().router(
|
|
5030
5044
|
total: z84.number(),
|
5031
5045
|
page: z84.number(),
|
5032
5046
|
pageSize: z84.number(),
|
5033
|
-
telephonyCdrs: z84.array(
|
5047
|
+
telephonyCdrs: z84.array(TelephonyCdrSchema)
|
5034
5048
|
}),
|
5035
5049
|
401: DefaultUnauthorizedSchema
|
5036
5050
|
},
|