@kl1/contracts 1.0.35 → 1.0.36
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 +973 -927
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +972 -927
- package/dist/index.mjs.map +1 -1
- package/dist/src/activity-log/index.d.ts +17 -10
- package/dist/src/activity-log/index.d.ts.map +1 -1
- package/dist/src/activity-log/schema.d.ts +17 -10
- package/dist/src/activity-log/schema.d.ts.map +1 -1
- package/dist/src/auth/index.d.ts +17 -10
- package/dist/src/auth/index.d.ts.map +1 -1
- package/dist/src/channel/index.d.ts +92 -56
- package/dist/src/channel/index.d.ts.map +1 -1
- package/dist/src/channel/schema.d.ts +18 -12
- package/dist/src/channel/schema.d.ts.map +1 -1
- package/dist/src/chat/index.d.ts +1068 -656
- package/dist/src/chat/index.d.ts.map +1 -1
- package/dist/src/chat/schema.d.ts +183 -110
- package/dist/src/chat/schema.d.ts.map +1 -1
- package/dist/src/chat/validation.d.ts +306 -188
- package/dist/src/chat/validation.d.ts.map +1 -1
- package/dist/src/comment/index.d.ts +965 -88
- package/dist/src/comment/index.d.ts.map +1 -1
- package/dist/src/comment/schema.d.ts +275 -24
- package/dist/src/comment/schema.d.ts.map +1 -1
- package/dist/src/contract.d.ts +10251 -6745
- package/dist/src/contract.d.ts.map +1 -1
- package/dist/src/cx-log/index.d.ts +116 -72
- package/dist/src/cx-log/index.d.ts.map +1 -1
- package/dist/src/cx-log/schema.d.ts +92 -56
- package/dist/src/cx-log/schema.d.ts.map +1 -1
- package/dist/src/extension/index.d.ts +29 -120
- package/dist/src/extension/index.d.ts.map +1 -1
- package/dist/src/extension/schema.d.ts +3 -0
- package/dist/src/extension/schema.d.ts.map +1 -1
- package/dist/src/extension/validation.d.ts +6 -0
- package/dist/src/extension/validation.d.ts.map +1 -1
- package/dist/src/messenger/index.d.ts +162 -100
- package/dist/src/messenger/index.d.ts.map +1 -1
- package/dist/src/telephony-agent-presence-status/index.d.ts +57 -34
- package/dist/src/telephony-agent-presence-status/index.d.ts.map +1 -1
- package/dist/src/telephony-agent-presence-status/schema.d.ts +17 -10
- package/dist/src/telephony-agent-presence-status/schema.d.ts.map +1 -1
- package/dist/src/telephony-extension/index.d.ts +2 -0
- package/dist/src/telephony-extension/index.d.ts.map +1 -1
- package/dist/src/ticket/index.d.ts +3794 -1641
- package/dist/src/ticket/index.d.ts.map +1 -1
- package/dist/src/ticket/schema.d.ts +177 -0
- package/dist/src/ticket/schema.d.ts.map +1 -1
- package/dist/src/user/index.d.ts +57 -34
- package/dist/src/user/index.d.ts.map +1 -1
- package/dist/src/user/schema.d.ts +11 -6
- package/dist/src/user/schema.d.ts.map +1 -1
- package/dist/src/user-presence-status-log/index.d.ts +12 -8
- package/dist/src/user-presence-status-log/index.d.ts.map +1 -1
- package/dist/src/user-presence-status-log/schema.d.ts +17 -10
- package/dist/src/user-presence-status-log/schema.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
@@ -197,68 +197,65 @@ var attributeContract = initContract().router(
|
|
197
197
|
|
198
198
|
// src/auth/index.ts
|
199
199
|
import { initContract as initContract2 } from "@ts-rest/core";
|
200
|
-
import { z as
|
200
|
+
import { z as z8 } from "zod";
|
201
201
|
|
202
202
|
// src/user/schema.ts
|
203
|
-
import
|
203
|
+
import z7 from "zod";
|
204
204
|
|
205
|
-
// src/
|
205
|
+
// src/role/schema.ts
|
206
|
+
import z6 from "zod";
|
207
|
+
|
208
|
+
// src/permission/schema.ts
|
206
209
|
import z5 from "zod";
|
207
|
-
var
|
210
|
+
var PermissionSchema = z5.object({
|
208
211
|
id: z5.string().uuid(),
|
209
212
|
createdAt: z5.date(),
|
210
213
|
updatedAt: z5.date(),
|
211
214
|
deletedAt: z5.date().nullable(),
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
extensionId: z5.coerce.number(),
|
216
|
-
extensionName: z5.string(),
|
217
|
-
telephonySignature: z5.string().nullable()
|
215
|
+
systemName: z5.string(),
|
216
|
+
displayName: z5.string(),
|
217
|
+
description: z5.string().nullable()
|
218
218
|
});
|
219
219
|
|
220
220
|
// src/role/schema.ts
|
221
|
-
|
222
|
-
|
223
|
-
// src/permission/schema.ts
|
224
|
-
import z6 from "zod";
|
225
|
-
var PermissionSchema = z6.object({
|
221
|
+
var RoleSchema = z6.object({
|
226
222
|
id: z6.string().uuid(),
|
227
223
|
createdAt: z6.date(),
|
228
224
|
updatedAt: z6.date(),
|
229
225
|
deletedAt: z6.date().nullable(),
|
230
226
|
systemName: z6.string(),
|
231
227
|
displayName: z6.string(),
|
232
|
-
description: z6.string().nullable()
|
228
|
+
description: z6.string().nullable(),
|
229
|
+
permissions: z6.array(PermissionSchema)
|
233
230
|
});
|
234
231
|
|
235
|
-
// src/
|
236
|
-
var
|
232
|
+
// src/user/schema.ts
|
233
|
+
var UserSchema = z7.object({
|
237
234
|
id: z7.string().uuid(),
|
238
235
|
createdAt: z7.date(),
|
239
236
|
updatedAt: z7.date(),
|
240
237
|
deletedAt: z7.date().nullable(),
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
238
|
+
name: z7.string(),
|
239
|
+
email: z7.string().email(),
|
240
|
+
emailVerifiedAt: z7.date().nullable(),
|
241
|
+
password: z7.string(),
|
242
|
+
address: z7.string().nullable(),
|
243
|
+
phone: z7.string().nullable(),
|
244
|
+
notificationCount: z7.number().nullable(),
|
245
|
+
roles: z7.array(RoleSchema),
|
246
|
+
extension: z7.object({
|
247
|
+
id: z7.string().uuid(),
|
248
|
+
createdAt: z7.date(),
|
249
|
+
updatedAt: z7.date(),
|
250
|
+
deletedAt: z7.date().nullable(),
|
251
|
+
userId: z7.string().nullable(),
|
252
|
+
sipServerUrl: z7.string(),
|
253
|
+
sipUserName: z7.string(),
|
254
|
+
webphoneLoginUser: z7.string(),
|
255
|
+
extensionId: z7.coerce.number(),
|
256
|
+
extensionName: z7.string(),
|
257
|
+
telephonySignature: z7.string().nullable()
|
258
|
+
})
|
262
259
|
});
|
263
260
|
|
264
261
|
// src/auth/index.ts
|
@@ -270,8 +267,8 @@ var authContract = initContract2().router(
|
|
270
267
|
headers: DefaultHeaderSchema,
|
271
268
|
responses: {
|
272
269
|
200: DefaultSuccessResponseSchema.extend({
|
273
|
-
accessToken:
|
274
|
-
refreshToken:
|
270
|
+
accessToken: z8.string(),
|
271
|
+
refreshToken: z8.string()
|
275
272
|
}),
|
276
273
|
401: DefaultUnauthorizedSchema,
|
277
274
|
404: DefaultNotFoundSchema,
|
@@ -285,8 +282,8 @@ var authContract = initContract2().router(
|
|
285
282
|
path: "/exchange-token",
|
286
283
|
responses: {
|
287
284
|
200: DefaultSuccessResponseSchema.extend({
|
288
|
-
accessToken:
|
289
|
-
refreshToken:
|
285
|
+
accessToken: z8.string(),
|
286
|
+
refreshToken: z8.string()
|
290
287
|
}),
|
291
288
|
401: DefaultUnauthorizedSchema,
|
292
289
|
404: DefaultNotFoundSchema,
|
@@ -302,7 +299,7 @@ var authContract = initContract2().router(
|
|
302
299
|
headers: DefaultHeaderSchema,
|
303
300
|
responses: {
|
304
301
|
200: DefaultSuccessResponseSchema.extend({
|
305
|
-
message:
|
302
|
+
message: z8.string()
|
306
303
|
}),
|
307
304
|
401: DefaultUnauthorizedSchema,
|
308
305
|
404: DefaultNotFoundSchema,
|
@@ -330,9 +327,9 @@ var authContract = initContract2().router(
|
|
330
327
|
path: "/user/role",
|
331
328
|
headers: DefaultHeaderSchema,
|
332
329
|
responses: {
|
333
|
-
200:
|
334
|
-
400:
|
335
|
-
message:
|
330
|
+
200: z8.array(z8.string()),
|
331
|
+
400: z8.object({
|
332
|
+
message: z8.string()
|
336
333
|
}),
|
337
334
|
401: DefaultUnauthorizedSchema
|
338
335
|
},
|
@@ -346,28 +343,28 @@ var authContract = initContract2().router(
|
|
346
343
|
import { initContract as initContract3 } from "@ts-rest/core";
|
347
344
|
|
348
345
|
// src/aws/validation.ts
|
349
|
-
import
|
346
|
+
import z9 from "zod";
|
350
347
|
var AwsContractsValidationSchema = {
|
351
348
|
generatePresignedUrl: {
|
352
|
-
input:
|
353
|
-
fileName:
|
354
|
-
fileType:
|
355
|
-
moduleName:
|
349
|
+
input: z9.object({
|
350
|
+
fileName: z9.string(),
|
351
|
+
fileType: z9.string(),
|
352
|
+
moduleName: z9.string()
|
356
353
|
}),
|
357
|
-
output:
|
358
|
-
fileName:
|
359
|
-
fileKey:
|
360
|
-
bucketName:
|
361
|
-
url:
|
362
|
-
cfUrl:
|
354
|
+
output: z9.object({
|
355
|
+
fileName: z9.string(),
|
356
|
+
fileKey: z9.string(),
|
357
|
+
bucketName: z9.string(),
|
358
|
+
url: z9.string(),
|
359
|
+
cfUrl: z9.string().nullable()
|
363
360
|
})
|
364
361
|
},
|
365
362
|
generateSignedUrl: {
|
366
|
-
input:
|
367
|
-
fileKey:
|
363
|
+
input: z9.object({
|
364
|
+
fileKey: z9.string()
|
368
365
|
}),
|
369
|
-
output:
|
370
|
-
url:
|
366
|
+
output: z9.object({
|
367
|
+
url: z9.string()
|
371
368
|
})
|
372
369
|
}
|
373
370
|
};
|
@@ -409,72 +406,72 @@ var awsContract = initContract3().router(
|
|
409
406
|
|
410
407
|
// src/category/index.ts
|
411
408
|
import { initContract as initContract4 } from "@ts-rest/core";
|
412
|
-
import
|
409
|
+
import z13 from "zod";
|
413
410
|
|
414
411
|
// utils.ts
|
415
|
-
import { z as
|
416
|
-
var PaginationSchema =
|
417
|
-
page:
|
418
|
-
pageSize:
|
419
|
-
total:
|
420
|
-
lastPage:
|
412
|
+
import { z as z10 } from "zod";
|
413
|
+
var PaginationSchema = z10.object({
|
414
|
+
page: z10.number().default(1),
|
415
|
+
pageSize: z10.number().default(10),
|
416
|
+
total: z10.number(),
|
417
|
+
lastPage: z10.number().optional().nullable()
|
421
418
|
});
|
422
419
|
var WithPagination = (dataSchema) => {
|
423
420
|
return PaginationSchema.extend({
|
424
|
-
data:
|
421
|
+
data: z10.array(dataSchema)
|
425
422
|
});
|
426
423
|
};
|
427
424
|
|
428
425
|
// src/category/schema.ts
|
429
|
-
import { z as
|
430
|
-
var CategoryLevelSchema =
|
431
|
-
|
432
|
-
|
433
|
-
|
426
|
+
import { z as z11 } from "zod";
|
427
|
+
var CategoryLevelSchema = z11.union([
|
428
|
+
z11.literal(1),
|
429
|
+
z11.literal(2),
|
430
|
+
z11.literal(3)
|
434
431
|
]);
|
435
432
|
var CategorySchema = DefaultEntitySchema.extend({
|
436
|
-
value:
|
433
|
+
value: z11.string(),
|
437
434
|
level: CategoryLevelSchema,
|
438
|
-
parentId:
|
439
|
-
childCategoryList:
|
440
|
-
|
441
|
-
id:
|
442
|
-
value:
|
435
|
+
parentId: z11.string().nullable(),
|
436
|
+
childCategoryList: z11.array(
|
437
|
+
z11.object({
|
438
|
+
id: z11.string(),
|
439
|
+
value: z11.string(),
|
443
440
|
level: CategoryLevelSchema,
|
444
|
-
parentId:
|
445
|
-
childCategoryList:
|
446
|
-
|
447
|
-
id:
|
448
|
-
value:
|
441
|
+
parentId: z11.string().nullable(),
|
442
|
+
childCategoryList: z11.array(
|
443
|
+
z11.object({
|
444
|
+
id: z11.string(),
|
445
|
+
value: z11.string(),
|
449
446
|
level: CategoryLevelSchema,
|
450
|
-
parentId:
|
451
|
-
childCategoryList:
|
447
|
+
parentId: z11.string().nullable(),
|
448
|
+
childCategoryList: z11.array(z11.any())
|
452
449
|
// This is an empty array.
|
453
450
|
})
|
454
451
|
)
|
455
452
|
})
|
456
453
|
)
|
457
454
|
});
|
458
|
-
var CategoryLevelObjectSchema =
|
459
|
-
id:
|
460
|
-
name:
|
455
|
+
var CategoryLevelObjectSchema = z11.object({
|
456
|
+
id: z11.string(),
|
457
|
+
name: z11.string(),
|
461
458
|
level: CategoryLevelSchema
|
462
459
|
});
|
463
460
|
|
464
461
|
// src/category/validation.ts
|
465
|
-
import { z as
|
466
|
-
var CreateCategorySchema =
|
467
|
-
value:
|
462
|
+
import { z as z12 } from "zod";
|
463
|
+
var CreateCategorySchema = z12.object({
|
464
|
+
value: z12.string(),
|
468
465
|
level: CategoryLevelSchema,
|
469
|
-
parentId:
|
466
|
+
parentId: z12.string().nullable()
|
470
467
|
});
|
471
|
-
var UpdateCategorySchema =
|
472
|
-
var CreateCategoryLevelSchema =
|
473
|
-
name:
|
468
|
+
var UpdateCategorySchema = z12.object({ value: z12.string() });
|
469
|
+
var CreateCategoryLevelSchema = z12.object({
|
470
|
+
name: z12.string(),
|
474
471
|
level: CategoryLevelSchema
|
475
472
|
});
|
476
|
-
var UpdateCategoryLevelSchema =
|
477
|
-
name:
|
473
|
+
var UpdateCategoryLevelSchema = z12.object({
|
474
|
+
name: z12.string(),
|
478
475
|
level: CategoryLevelSchema
|
479
476
|
});
|
480
477
|
|
@@ -496,9 +493,9 @@ var categoryContract = initContract4().router(
|
|
496
493
|
getCategories: {
|
497
494
|
method: "GET",
|
498
495
|
path: "",
|
499
|
-
query:
|
500
|
-
page:
|
501
|
-
pageSize:
|
496
|
+
query: z13.object({
|
497
|
+
page: z13.coerce.number(),
|
498
|
+
pageSize: z13.coerce.number()
|
502
499
|
}).partial().optional(),
|
503
500
|
headers: DefaultHeaderSchema,
|
504
501
|
responses: {
|
@@ -509,7 +506,7 @@ var categoryContract = initContract4().router(
|
|
509
506
|
updateCategory: {
|
510
507
|
method: "PATCH",
|
511
508
|
path: "/:id",
|
512
|
-
pathParams:
|
509
|
+
pathParams: z13.object({ id: z13.string() }),
|
513
510
|
headers: DefaultHeaderSchema,
|
514
511
|
body: UpdateCategorySchema,
|
515
512
|
responses: {
|
@@ -520,12 +517,12 @@ var categoryContract = initContract4().router(
|
|
520
517
|
deleteCategory: {
|
521
518
|
method: "DELETE",
|
522
519
|
path: "/:id",
|
523
|
-
pathParams:
|
520
|
+
pathParams: z13.object({ id: z13.string() }),
|
524
521
|
headers: DefaultHeaderSchema,
|
525
|
-
body:
|
522
|
+
body: z13.any().optional(),
|
526
523
|
responses: {
|
527
524
|
200: DefaultSuccessResponseSchema.extend({
|
528
|
-
message:
|
525
|
+
message: z13.string().optional()
|
529
526
|
}),
|
530
527
|
500: DefaultErrorResponseSchema
|
531
528
|
}
|
@@ -547,7 +544,7 @@ var categoryContract = initContract4().router(
|
|
547
544
|
path: "/level",
|
548
545
|
responses: {
|
549
546
|
200: DefaultSuccessResponseSchema.extend({
|
550
|
-
data:
|
547
|
+
data: z13.array(CategoryLevelObjectSchema)
|
551
548
|
}),
|
552
549
|
500: DefaultErrorResponseSchema
|
553
550
|
}
|
@@ -555,7 +552,7 @@ var categoryContract = initContract4().router(
|
|
555
552
|
updateCategoryLevel: {
|
556
553
|
method: "PATCH",
|
557
554
|
path: "/level/:id",
|
558
|
-
pathParams:
|
555
|
+
pathParams: z13.object({ id: z13.string() }),
|
559
556
|
headers: DefaultHeaderSchema,
|
560
557
|
body: UpdateCategoryLevelSchema,
|
561
558
|
responses: {
|
@@ -573,43 +570,43 @@ var categoryContract = initContract4().router(
|
|
573
570
|
|
574
571
|
// src/channel/index.ts
|
575
572
|
import { initContract as initContract5 } from "@ts-rest/core";
|
576
|
-
import
|
573
|
+
import z17 from "zod";
|
577
574
|
|
578
575
|
// src/messenger/validation.ts
|
579
|
-
import
|
580
|
-
var GetFacebookPagesSchema =
|
581
|
-
data:
|
582
|
-
|
576
|
+
import z14 from "zod";
|
577
|
+
var GetFacebookPagesSchema = z14.object({
|
578
|
+
data: z14.array(
|
579
|
+
z14.object({
|
583
580
|
// biome-ignore lint/style/useNamingConvention: <explanation>
|
584
|
-
access_token:
|
585
|
-
category:
|
581
|
+
access_token: z14.string(),
|
582
|
+
category: z14.string(),
|
586
583
|
// biome-ignore lint/style/useNamingConvention: <explanation>
|
587
|
-
category_list:
|
588
|
-
|
589
|
-
id:
|
590
|
-
name:
|
584
|
+
category_list: z14.array(
|
585
|
+
z14.object({
|
586
|
+
id: z14.string(),
|
587
|
+
name: z14.string()
|
591
588
|
})
|
592
589
|
),
|
593
|
-
id:
|
594
|
-
name:
|
595
|
-
tasks:
|
590
|
+
id: z14.string(),
|
591
|
+
name: z14.string(),
|
592
|
+
tasks: z14.string().array()
|
596
593
|
})
|
597
594
|
),
|
598
|
-
paging:
|
599
|
-
cursors:
|
600
|
-
before:
|
601
|
-
after:
|
595
|
+
paging: z14.object({
|
596
|
+
cursors: z14.object({
|
597
|
+
before: z14.string().optional(),
|
598
|
+
after: z14.string().optional()
|
602
599
|
})
|
603
600
|
}).optional()
|
604
601
|
});
|
605
|
-
var GetFacebookPagesQuerySchema =
|
606
|
-
accessToken:
|
607
|
-
userId:
|
602
|
+
var GetFacebookPagesQuerySchema = z14.object({
|
603
|
+
accessToken: z14.string(),
|
604
|
+
userId: z14.string()
|
608
605
|
});
|
609
606
|
|
610
607
|
// src/channel/schema.ts
|
611
|
-
import
|
612
|
-
var ChannelTypeSchema =
|
608
|
+
import z15 from "zod";
|
609
|
+
var ChannelTypeSchema = z15.enum([
|
613
610
|
"whatsapp",
|
614
611
|
"messenger",
|
615
612
|
"telegram",
|
@@ -620,39 +617,39 @@ var ChannelTypeSchema = z16.enum([
|
|
620
617
|
"lazada",
|
621
618
|
"instagram"
|
622
619
|
]);
|
623
|
-
var ChannelStatusTypeSchema =
|
624
|
-
|
620
|
+
var ChannelStatusTypeSchema = z15.union([
|
621
|
+
z15.literal(true),
|
625
622
|
// on
|
626
|
-
|
623
|
+
z15.literal(false)
|
627
624
|
// off
|
628
625
|
]);
|
629
|
-
var ChannelMetadataSchema =
|
630
|
-
id:
|
631
|
-
name:
|
632
|
-
accessToken:
|
633
|
-
additionalCredentials:
|
626
|
+
var ChannelMetadataSchema = z15.object({
|
627
|
+
id: z15.string(),
|
628
|
+
name: z15.string(),
|
629
|
+
accessToken: z15.string(),
|
630
|
+
additionalCredentials: z15.any().optional()
|
634
631
|
});
|
635
632
|
var ChannelSchema = DefaultEntitySchema.extend({
|
636
|
-
name:
|
633
|
+
name: z15.string(),
|
637
634
|
type: ChannelTypeSchema,
|
638
635
|
metadata: ChannelMetadataSchema,
|
639
|
-
brandName:
|
640
|
-
platformId:
|
636
|
+
brandName: z15.string(),
|
637
|
+
platformId: z15.string(),
|
641
638
|
status: ChannelStatusTypeSchema,
|
642
|
-
isReloginRequired:
|
643
|
-
connectedUserName:
|
644
|
-
connectedUserId:
|
639
|
+
isReloginRequired: z15.boolean(),
|
640
|
+
connectedUserName: z15.string(),
|
641
|
+
connectedUserId: z15.string(),
|
645
642
|
actor: UserSchema
|
646
643
|
}).partial().optional();
|
647
644
|
|
648
645
|
// src/channel/validation.ts
|
649
|
-
import
|
650
|
-
var ConnectChannelSchema =
|
651
|
-
name:
|
646
|
+
import z16 from "zod";
|
647
|
+
var ConnectChannelSchema = z16.object({
|
648
|
+
name: z16.string(),
|
652
649
|
type: ChannelTypeSchema,
|
653
650
|
metadata: ChannelMetadataSchema,
|
654
|
-
platformId:
|
655
|
-
connectedUserId:
|
651
|
+
platformId: z16.string(),
|
652
|
+
connectedUserId: z16.string()
|
656
653
|
});
|
657
654
|
|
658
655
|
// src/channel/index.ts
|
@@ -691,8 +688,8 @@ var channelContract = initContract5().router(
|
|
691
688
|
disconnectChannel: {
|
692
689
|
method: "POST",
|
693
690
|
path: "/disconnect/:channelId",
|
694
|
-
pathParams:
|
695
|
-
channelId:
|
691
|
+
pathParams: z17.object({
|
692
|
+
channelId: z17.string().uuid()
|
696
693
|
}),
|
697
694
|
responses: {
|
698
695
|
200: DefaultSuccessResponseSchema.extend({
|
@@ -735,210 +732,210 @@ var channelContract = initContract5().router(
|
|
735
732
|
|
736
733
|
// src/chat/index.ts
|
737
734
|
import { initContract as initContract6 } from "@ts-rest/core";
|
738
|
-
import
|
735
|
+
import z29 from "zod";
|
739
736
|
|
740
737
|
// src/contact/schema.ts
|
741
|
-
import
|
738
|
+
import z21 from "zod";
|
742
739
|
|
743
740
|
// src/tag/schema.ts
|
744
|
-
import
|
741
|
+
import z18 from "zod";
|
745
742
|
var TagSchema = DefaultEntitySchema.extend({
|
746
|
-
name:
|
743
|
+
name: z18.string()
|
747
744
|
});
|
748
|
-
var TagGroupSchema =
|
749
|
-
|
750
|
-
|
745
|
+
var TagGroupSchema = z18.union([
|
746
|
+
z18.literal("general"),
|
747
|
+
z18.literal("contact")
|
751
748
|
]);
|
752
749
|
|
753
750
|
// src/company/schema.ts
|
754
|
-
import
|
751
|
+
import z19 from "zod";
|
755
752
|
var CompanyCustomFieldSchema = DefaultEntitySchema.extend({
|
756
|
-
textValue:
|
757
|
-
booleanValue:
|
758
|
-
numberValue:
|
759
|
-
dateValue:
|
753
|
+
textValue: z19.string().nullable(),
|
754
|
+
booleanValue: z19.boolean().nullable(),
|
755
|
+
numberValue: z19.number().nullable(),
|
756
|
+
dateValue: z19.date().nullable(),
|
760
757
|
attribute: AttributeSchema.omit({ options: true, group: true })
|
761
758
|
});
|
762
759
|
var CompanySchema = DefaultEntitySchema.extend({
|
763
|
-
name:
|
764
|
-
phone:
|
765
|
-
address:
|
766
|
-
industry:
|
767
|
-
customFields:
|
760
|
+
name: z19.string().optional(),
|
761
|
+
phone: z19.string().nullable().optional(),
|
762
|
+
address: z19.string().nullable().optional(),
|
763
|
+
industry: z19.string().nullable().optional(),
|
764
|
+
customFields: z19.array(CompanyCustomFieldSchema).optional()
|
768
765
|
});
|
769
766
|
|
770
767
|
// src/upload/schema.ts
|
771
|
-
import
|
768
|
+
import z20 from "zod";
|
772
769
|
var UploadSchema = DefaultEntitySchema.extend({
|
773
|
-
bucketName:
|
774
|
-
fileName:
|
775
|
-
fileSize:
|
776
|
-
fileKey:
|
777
|
-
fileUrl:
|
770
|
+
bucketName: z20.string(),
|
771
|
+
fileName: z20.string(),
|
772
|
+
fileSize: z20.number(),
|
773
|
+
fileKey: z20.string(),
|
774
|
+
fileUrl: z20.string().nullable()
|
778
775
|
});
|
779
776
|
|
780
777
|
// src/contact/schema.ts
|
781
|
-
var ContactPhonesSchema =
|
782
|
-
id:
|
783
|
-
createdAt:
|
784
|
-
updatedAt:
|
785
|
-
deletedAt:
|
786
|
-
phone:
|
787
|
-
isPrimary:
|
788
|
-
});
|
789
|
-
var ContactEmailsSchema =
|
790
|
-
id:
|
791
|
-
createdAt:
|
792
|
-
updatedAt:
|
793
|
-
deletedAt:
|
794
|
-
email:
|
795
|
-
isPrimary:
|
796
|
-
});
|
797
|
-
var ContactCustomFieldSchema =
|
798
|
-
id:
|
799
|
-
createdAt:
|
800
|
-
updatedAt:
|
801
|
-
deletedAt:
|
802
|
-
textValue:
|
803
|
-
booleanValue:
|
804
|
-
numberValue:
|
805
|
-
dateValue:
|
778
|
+
var ContactPhonesSchema = z21.object({
|
779
|
+
id: z21.string().uuid(),
|
780
|
+
createdAt: z21.date(),
|
781
|
+
updatedAt: z21.date(),
|
782
|
+
deletedAt: z21.date().nullable(),
|
783
|
+
phone: z21.string(),
|
784
|
+
isPrimary: z21.boolean()
|
785
|
+
});
|
786
|
+
var ContactEmailsSchema = z21.object({
|
787
|
+
id: z21.string().uuid(),
|
788
|
+
createdAt: z21.date(),
|
789
|
+
updatedAt: z21.date(),
|
790
|
+
deletedAt: z21.date().nullable(),
|
791
|
+
email: z21.string(),
|
792
|
+
isPrimary: z21.boolean()
|
793
|
+
});
|
794
|
+
var ContactCustomFieldSchema = z21.object({
|
795
|
+
id: z21.string().uuid(),
|
796
|
+
createdAt: z21.date(),
|
797
|
+
updatedAt: z21.date(),
|
798
|
+
deletedAt: z21.date().nullable(),
|
799
|
+
textValue: z21.string().nullable(),
|
800
|
+
booleanValue: z21.boolean().nullable(),
|
801
|
+
numberValue: z21.number().nullable(),
|
802
|
+
dateValue: z21.date().nullable(),
|
806
803
|
attribute: AttributeSchema.omit({ options: true, group: true }),
|
807
|
-
uploads:
|
804
|
+
uploads: z21.array(
|
808
805
|
DefaultEntitySchema.extend({
|
809
|
-
customFieldId:
|
806
|
+
customFieldId: z21.string(),
|
810
807
|
upload: UploadSchema
|
811
808
|
})
|
812
809
|
)
|
813
810
|
});
|
814
|
-
var ContactEntityTypesSchema =
|
815
|
-
id:
|
816
|
-
createdAt:
|
817
|
-
updatedAt:
|
818
|
-
deletedAt:
|
819
|
-
entity:
|
820
|
-
description:
|
821
|
-
});
|
822
|
-
var ContactActivitySchema =
|
823
|
-
id:
|
824
|
-
createdAt:
|
825
|
-
updatedAt:
|
826
|
-
deletedAt:
|
827
|
-
entityId:
|
828
|
-
description:
|
811
|
+
var ContactEntityTypesSchema = z21.object({
|
812
|
+
id: z21.string().uuid(),
|
813
|
+
createdAt: z21.date(),
|
814
|
+
updatedAt: z21.date(),
|
815
|
+
deletedAt: z21.date().nullable(),
|
816
|
+
entity: z21.string(),
|
817
|
+
description: z21.string().nullable()
|
818
|
+
});
|
819
|
+
var ContactActivitySchema = z21.object({
|
820
|
+
id: z21.string().uuid(),
|
821
|
+
createdAt: z21.date(),
|
822
|
+
updatedAt: z21.date(),
|
823
|
+
deletedAt: z21.date().nullable(),
|
824
|
+
entityId: z21.string(),
|
825
|
+
description: z21.string(),
|
829
826
|
entityType: ContactEntityTypesSchema
|
830
827
|
});
|
831
|
-
var ContactSchema =
|
832
|
-
id:
|
833
|
-
createdAt:
|
834
|
-
updatedAt:
|
835
|
-
deletedAt:
|
836
|
-
name:
|
837
|
-
address:
|
838
|
-
channel:
|
839
|
-
notes:
|
840
|
-
contactProfile:
|
841
|
-
socialProfileUrl:
|
842
|
-
tags:
|
828
|
+
var ContactSchema = z21.object({
|
829
|
+
id: z21.string().uuid(),
|
830
|
+
createdAt: z21.date(),
|
831
|
+
updatedAt: z21.date(),
|
832
|
+
deletedAt: z21.date().nullable(),
|
833
|
+
name: z21.string(),
|
834
|
+
address: z21.string().nullable(),
|
835
|
+
channel: z21.string().nullable(),
|
836
|
+
notes: z21.string().nullable(),
|
837
|
+
contactProfile: z21.string().nullable(),
|
838
|
+
socialProfileUrl: z21.string().nullable(),
|
839
|
+
tags: z21.array(TagSchema),
|
843
840
|
company: CompanySchema.omit({ customFields: true }).nullable(),
|
844
841
|
// room: z.array(RoomSchema).optional(),
|
845
|
-
customFields:
|
846
|
-
contactEmails:
|
847
|
-
contactPhones:
|
848
|
-
activityLogs:
|
842
|
+
customFields: z21.array(ContactCustomFieldSchema),
|
843
|
+
contactEmails: z21.array(ContactEmailsSchema),
|
844
|
+
contactPhones: z21.array(ContactPhonesSchema),
|
845
|
+
activityLogs: z21.array(ContactActivitySchema).optional()
|
849
846
|
});
|
850
847
|
|
851
848
|
// src/chat/schema.ts
|
852
|
-
import
|
849
|
+
import z26 from "zod";
|
853
850
|
|
854
851
|
// src/cx-log/schema.ts
|
855
|
-
import
|
852
|
+
import z25 from "zod";
|
856
853
|
|
857
854
|
// src/evaluate-form/schema.ts
|
858
|
-
import
|
855
|
+
import z22 from "zod";
|
859
856
|
var EvaluateFormSchema = DefaultEntitySchema.extend({
|
860
|
-
cxLogId:
|
861
|
-
sentimentScore:
|
862
|
-
csatScore:
|
857
|
+
cxLogId: z22.string().uuid(),
|
858
|
+
sentimentScore: z22.string().nullable().optional(),
|
859
|
+
csatScore: z22.string().nullable().optional()
|
863
860
|
});
|
864
861
|
|
865
862
|
// src/telephony-cdr/schema.ts
|
866
|
-
import
|
863
|
+
import z23 from "zod";
|
867
864
|
var TelephonyCdrSchema = DefaultEntitySchema.extend({
|
868
|
-
uniqueCallId:
|
869
|
-
timeStart:
|
870
|
-
callFrom:
|
871
|
-
callTo:
|
872
|
-
callDuration:
|
873
|
-
talkDuration:
|
874
|
-
srcTrunkName:
|
875
|
-
dstTrunkName:
|
876
|
-
pinCode:
|
877
|
-
status:
|
878
|
-
type:
|
879
|
-
recording:
|
880
|
-
didNumber:
|
881
|
-
agentRingTime:
|
882
|
-
uploadId:
|
865
|
+
uniqueCallId: z23.string(),
|
866
|
+
timeStart: z23.string(),
|
867
|
+
callFrom: z23.string(),
|
868
|
+
callTo: z23.string(),
|
869
|
+
callDuration: z23.number().nullable(),
|
870
|
+
talkDuration: z23.number().nullable(),
|
871
|
+
srcTrunkName: z23.string().nullable(),
|
872
|
+
dstTrunkName: z23.string().nullable(),
|
873
|
+
pinCode: z23.string().nullable(),
|
874
|
+
status: z23.string(),
|
875
|
+
type: z23.string(),
|
876
|
+
recording: z23.string().nullable(),
|
877
|
+
didNumber: z23.string().nullable(),
|
878
|
+
agentRingTime: z23.number().nullable(),
|
879
|
+
uploadId: z23.string().nullable(),
|
883
880
|
upload: UploadSchema.optional(),
|
884
|
-
serialNumber:
|
885
|
-
extensionId:
|
886
|
-
telephonyQueueId:
|
887
|
-
contactId:
|
881
|
+
serialNumber: z23.string().nullable(),
|
882
|
+
extensionId: z23.string().uuid().nullable(),
|
883
|
+
telephonyQueueId: z23.string().uuid().nullable(),
|
884
|
+
contactId: z23.string().nullable()
|
888
885
|
});
|
889
886
|
|
890
887
|
// src/wrap-up-form/schema.ts
|
891
|
-
import
|
888
|
+
import z24 from "zod";
|
892
889
|
var WrapUpFormSchema = DefaultEntitySchema.extend({
|
893
|
-
note:
|
894
|
-
disposition:
|
895
|
-
callFrom:
|
896
|
-
callTo:
|
897
|
-
tags:
|
890
|
+
note: z24.string().nullable(),
|
891
|
+
disposition: z24.string().nullable(),
|
892
|
+
callFrom: z24.string().nullable(),
|
893
|
+
callTo: z24.string().nullable(),
|
894
|
+
tags: z24.array(TagSchema)
|
898
895
|
});
|
899
896
|
|
900
897
|
// src/cx-log/schema.ts
|
901
898
|
var CxLogSchema = DefaultEntitySchema.extend({
|
902
|
-
caseId:
|
903
|
-
entityId:
|
904
|
-
entityName:
|
905
|
-
contactId:
|
906
|
-
channel:
|
907
|
-
queueId:
|
908
|
-
agentId:
|
909
|
-
direction:
|
910
|
-
startedDate:
|
911
|
-
handledTime:
|
912
|
-
firstResponseTime:
|
913
|
-
disposition:
|
899
|
+
caseId: z25.number(),
|
900
|
+
entityId: z25.string().uuid(),
|
901
|
+
entityName: z25.string(),
|
902
|
+
contactId: z25.string().uuid().nullable(),
|
903
|
+
channel: z25.string().nullable(),
|
904
|
+
queueId: z25.string().uuid().nullable(),
|
905
|
+
agentId: z25.string().uuid().nullable(),
|
906
|
+
direction: z25.string().nullable(),
|
907
|
+
startedDate: z25.date().nullable(),
|
908
|
+
handledTime: z25.number().nullable(),
|
909
|
+
firstResponseTime: z25.number().nullable(),
|
910
|
+
disposition: z25.string().nullable(),
|
914
911
|
wrapUpForm: WrapUpFormSchema.nullable()
|
915
912
|
});
|
916
913
|
var CxLogSchemaWithRelations = DefaultEntitySchema.extend({
|
917
|
-
caseId:
|
918
|
-
entityId:
|
919
|
-
entityName:
|
920
|
-
channelType:
|
921
|
-
channel:
|
922
|
-
direction:
|
923
|
-
startedDate:
|
924
|
-
handledTime:
|
925
|
-
firstResponseTime:
|
926
|
-
disposition:
|
927
|
-
slaMeet:
|
914
|
+
caseId: z25.number(),
|
915
|
+
entityId: z25.string().uuid(),
|
916
|
+
entityName: z25.string(),
|
917
|
+
channelType: z25.string().nullable(),
|
918
|
+
channel: z25.string().nullable(),
|
919
|
+
direction: z25.string().nullable(),
|
920
|
+
startedDate: z25.string().nullable(),
|
921
|
+
handledTime: z25.string().nullable(),
|
922
|
+
firstResponseTime: z25.string().nullable(),
|
923
|
+
disposition: z25.string().nullable(),
|
924
|
+
slaMeet: z25.string().nullable(),
|
928
925
|
evaluateForm: EvaluateFormSchema.nullable(),
|
929
926
|
wrapUpForm: WrapUpFormSchema.nullable(),
|
930
|
-
room:
|
931
|
-
id:
|
932
|
-
createdAt:
|
933
|
-
updatedAt:
|
934
|
-
deletedAt:
|
935
|
-
lastMessage:
|
936
|
-
handleTime:
|
937
|
-
closeAt:
|
938
|
-
unreadCount:
|
939
|
-
firstResponseAt:
|
940
|
-
firstResponseTime:
|
941
|
-
isLatest:
|
927
|
+
room: z25.object({
|
928
|
+
id: z25.string().uuid(),
|
929
|
+
createdAt: z25.date(),
|
930
|
+
updatedAt: z25.date(),
|
931
|
+
deletedAt: z25.date().nullable(),
|
932
|
+
lastMessage: z25.string(),
|
933
|
+
handleTime: z25.number(),
|
934
|
+
closeAt: z25.date(),
|
935
|
+
unreadCount: z25.number(),
|
936
|
+
firstResponseAt: z25.date(),
|
937
|
+
firstResponseTime: z25.number(),
|
938
|
+
isLatest: z25.boolean(),
|
942
939
|
direction: MessageDirectionTypeSchema,
|
943
940
|
platformContact: PlatformContactSchema,
|
944
941
|
actor: UserSchema,
|
@@ -946,20 +943,20 @@ var CxLogSchemaWithRelations = DefaultEntitySchema.extend({
|
|
946
943
|
channel: ChannelSchema
|
947
944
|
}).nullable(),
|
948
945
|
telephonyCdr: TelephonyCdrSchema.nullable(),
|
949
|
-
queue:
|
950
|
-
queueName:
|
946
|
+
queue: z25.object({
|
947
|
+
queueName: z25.string().nullable().optional()
|
951
948
|
}).nullable(),
|
952
949
|
contact: ContactSchema.nullable(),
|
953
950
|
agent: UserSchema.nullable()
|
954
951
|
});
|
955
952
|
|
956
953
|
// src/chat/schema.ts
|
957
|
-
var MessageDirectionTypeSchema =
|
954
|
+
var MessageDirectionTypeSchema = z26.enum([
|
958
955
|
"incoming",
|
959
956
|
"outgoing",
|
960
957
|
"system"
|
961
958
|
]);
|
962
|
-
var MessageTypeSchema =
|
959
|
+
var MessageTypeSchema = z26.enum([
|
963
960
|
"text",
|
964
961
|
"image",
|
965
962
|
"video",
|
@@ -979,28 +976,28 @@ var MessageTypeSchema = z27.enum([
|
|
979
976
|
"updated",
|
980
977
|
"started"
|
981
978
|
]);
|
982
|
-
var MessageLocaleTypeSchema =
|
983
|
-
var PlatformContactMetadataSchema =
|
984
|
-
id:
|
985
|
-
name:
|
986
|
-
picture:
|
987
|
-
additionalCredentials:
|
979
|
+
var MessageLocaleTypeSchema = z26.enum(["mm", "en", "th", ""]);
|
980
|
+
var PlatformContactMetadataSchema = z26.object({
|
981
|
+
id: z26.string(),
|
982
|
+
name: z26.string(),
|
983
|
+
picture: z26.string().optional(),
|
984
|
+
additionalCredentials: z26.any()
|
988
985
|
});
|
989
986
|
var PlatformContactSchema = DefaultEntitySchema.extend({
|
990
|
-
channelId:
|
991
|
-
socialPlatformId:
|
987
|
+
channelId: z26.string().uuid(),
|
988
|
+
socialPlatformId: z26.string(),
|
992
989
|
type: ChannelTypeSchema,
|
993
990
|
metadata: PlatformContactMetadataSchema,
|
994
991
|
contact: ContactSchema
|
995
992
|
});
|
996
993
|
var RoomSchema = DefaultEntitySchema.extend({
|
997
|
-
lastMessage:
|
998
|
-
handleTime:
|
999
|
-
closeAt:
|
1000
|
-
unreadCount:
|
1001
|
-
firstResponseAt:
|
1002
|
-
firstResponseTime:
|
1003
|
-
isLatest:
|
994
|
+
lastMessage: z26.string(),
|
995
|
+
handleTime: z26.number(),
|
996
|
+
closeAt: z26.date(),
|
997
|
+
unreadCount: z26.number(),
|
998
|
+
firstResponseAt: z26.date(),
|
999
|
+
firstResponseTime: z26.number(),
|
1000
|
+
isLatest: z26.boolean(),
|
1004
1001
|
direction: MessageDirectionTypeSchema,
|
1005
1002
|
platformContact: PlatformContactSchema,
|
1006
1003
|
actor: UserSchema,
|
@@ -1009,167 +1006,167 @@ var RoomSchema = DefaultEntitySchema.extend({
|
|
1009
1006
|
cxlog: CxLogSchema
|
1010
1007
|
});
|
1011
1008
|
var MessageSchema = DefaultEntitySchema.extend({
|
1012
|
-
message:
|
1009
|
+
message: z26.string(),
|
1013
1010
|
direction: MessageDirectionTypeSchema,
|
1014
1011
|
type: MessageTypeSchema,
|
1015
|
-
readAt:
|
1016
|
-
metadata:
|
1017
|
-
platformId:
|
1018
|
-
platformMessageId:
|
1019
|
-
replyPlatformMessageId:
|
1020
|
-
template:
|
1012
|
+
readAt: z26.date(),
|
1013
|
+
metadata: z26.any(),
|
1014
|
+
platformId: z26.string(),
|
1015
|
+
platformMessageId: z26.string(),
|
1016
|
+
replyPlatformMessageId: z26.string(),
|
1017
|
+
template: z26.any(),
|
1021
1018
|
locale: MessageLocaleTypeSchema,
|
1022
|
-
url:
|
1023
|
-
previewUrl:
|
1024
|
-
imageSetId:
|
1019
|
+
url: z26.string(),
|
1020
|
+
previewUrl: z26.string(),
|
1021
|
+
imageSetId: z26.string(),
|
1025
1022
|
room: RoomSchema,
|
1026
1023
|
upload: UploadSchema,
|
1027
1024
|
actor: UserSchema,
|
1028
1025
|
assignee: UserSchema,
|
1029
1026
|
sender: UserSchema
|
1030
1027
|
});
|
1031
|
-
var UnreadCountsByAssigneeSchema =
|
1032
|
-
assigneeId:
|
1033
|
-
totalUnreadCount:
|
1028
|
+
var UnreadCountsByAssigneeSchema = z26.object({
|
1029
|
+
assigneeId: z26.string(),
|
1030
|
+
totalUnreadCount: z26.number()
|
1034
1031
|
});
|
1035
1032
|
|
1036
1033
|
// src/chat/validation.ts
|
1037
|
-
import
|
1034
|
+
import z28 from "zod";
|
1038
1035
|
|
1039
1036
|
// src/custom-field/schema.ts
|
1040
|
-
import
|
1037
|
+
import z27 from "zod";
|
1041
1038
|
var CustomFieldSchema = DefaultEntitySchema.extend({
|
1042
|
-
textValue:
|
1043
|
-
booleanValue:
|
1044
|
-
numberValue:
|
1045
|
-
dateValue:
|
1046
|
-
entityId:
|
1047
|
-
attributeId:
|
1039
|
+
textValue: z27.string().nullable(),
|
1040
|
+
booleanValue: z27.boolean().nullable(),
|
1041
|
+
numberValue: z27.number().nullable(),
|
1042
|
+
dateValue: z27.date().nullable(),
|
1043
|
+
entityId: z27.string().uuid(),
|
1044
|
+
attributeId: z27.string().uuid()
|
1048
1045
|
});
|
1049
1046
|
|
1050
1047
|
// src/chat/validation.ts
|
1051
|
-
var GetRoomsSchema =
|
1052
|
-
page:
|
1053
|
-
pageSize:
|
1054
|
-
contactTagIds:
|
1055
|
-
contactIds:
|
1056
|
-
agentIds:
|
1057
|
-
roomTagIds:
|
1058
|
-
keyword:
|
1059
|
-
company:
|
1060
|
-
channel:
|
1061
|
-
name:
|
1062
|
-
address:
|
1063
|
-
contactGroups:
|
1064
|
-
selectedDate:
|
1065
|
-
customFields:
|
1066
|
-
tags:
|
1067
|
-
phone:
|
1068
|
-
email:
|
1069
|
-
notes:
|
1070
|
-
tab:
|
1071
|
-
});
|
1072
|
-
var UpdateRoomTagsAndNotesSchema =
|
1073
|
-
note:
|
1048
|
+
var GetRoomsSchema = z28.object({
|
1049
|
+
page: z28.coerce.number().positive().default(1),
|
1050
|
+
pageSize: z28.coerce.number().positive().default(20),
|
1051
|
+
contactTagIds: z28.string().array().optional(),
|
1052
|
+
contactIds: z28.string().array().optional(),
|
1053
|
+
agentIds: z28.string().array().optional(),
|
1054
|
+
roomTagIds: z28.string().array().optional(),
|
1055
|
+
keyword: z28.string().optional(),
|
1056
|
+
company: z28.string().array().optional(),
|
1057
|
+
channel: z28.string().array().optional(),
|
1058
|
+
name: z28.string().optional(),
|
1059
|
+
address: z28.string().optional(),
|
1060
|
+
contactGroups: z28.string().array().optional(),
|
1061
|
+
selectedDate: z28.string().optional(),
|
1062
|
+
customFields: z28.array(CustomFieldSchema).optional(),
|
1063
|
+
tags: z28.string().array().optional(),
|
1064
|
+
phone: z28.string().optional(),
|
1065
|
+
email: z28.string().optional(),
|
1066
|
+
notes: z28.string().optional(),
|
1067
|
+
tab: z28.string().optional()
|
1068
|
+
});
|
1069
|
+
var UpdateRoomTagsAndNotesSchema = z28.object({
|
1070
|
+
note: z28.string().optional(),
|
1074
1071
|
tags: TagSchema.array().optional()
|
1075
1072
|
});
|
1076
1073
|
var UpdateRoomAttributesSchema = UpdateRoomTagsAndNotesSchema.extend({
|
1077
|
-
roomId:
|
1078
|
-
});
|
1079
|
-
var MessageAttachmentSchema =
|
1080
|
-
bucketName:
|
1081
|
-
fileKey:
|
1082
|
-
fileName:
|
1083
|
-
fileSize:
|
1084
|
-
url:
|
1074
|
+
roomId: z28.string().uuid()
|
1075
|
+
});
|
1076
|
+
var MessageAttachmentSchema = z28.object({
|
1077
|
+
bucketName: z28.string(),
|
1078
|
+
fileKey: z28.string(),
|
1079
|
+
fileName: z28.string(),
|
1080
|
+
fileSize: z28.number(),
|
1081
|
+
url: z28.string(),
|
1085
1082
|
fileType: MessageTypeSchema,
|
1086
|
-
thumbnailUrl:
|
1083
|
+
thumbnailUrl: z28.string().optional()
|
1087
1084
|
});
|
1088
|
-
var SendMessageSchema =
|
1089
|
-
roomId:
|
1085
|
+
var SendMessageSchema = z28.object({
|
1086
|
+
roomId: z28.string().uuid(),
|
1090
1087
|
messageType: MessageTypeSchema,
|
1091
|
-
message:
|
1088
|
+
message: z28.string().optional(),
|
1092
1089
|
messageAttachments: MessageAttachmentSchema.optional(),
|
1093
1090
|
user: UserSchema.optional(),
|
1094
|
-
packageId:
|
1095
|
-
stickerId:
|
1091
|
+
packageId: z28.number().optional(),
|
1092
|
+
stickerId: z28.number().optional()
|
1096
1093
|
});
|
1097
|
-
var SolveRoomSchema =
|
1098
|
-
roomId:
|
1099
|
-
disposition:
|
1094
|
+
var SolveRoomSchema = z28.object({
|
1095
|
+
roomId: z28.string(),
|
1096
|
+
disposition: z28.string()
|
1100
1097
|
});
|
1101
1098
|
var UpdateAssigneeSchema = SolveRoomSchema.extend({
|
1102
|
-
assigneeId:
|
1099
|
+
assigneeId: z28.string().uuid()
|
1103
1100
|
});
|
1104
1101
|
var SearchRoomsSchema = DefaultQueryParamsSchema.extend({
|
1105
|
-
query:
|
1102
|
+
query: z28.string()
|
1106
1103
|
});
|
1107
|
-
var ChannelSchema2 =
|
1108
|
-
name:
|
1104
|
+
var ChannelSchema2 = z28.object({
|
1105
|
+
name: z28.string(),
|
1109
1106
|
type: ChannelTypeSchema,
|
1110
1107
|
metadata: ChannelMetadataSchema,
|
1111
|
-
platformId:
|
1112
|
-
brandName:
|
1108
|
+
platformId: z28.string(),
|
1109
|
+
brandName: z28.string(),
|
1113
1110
|
status: ChannelStatusTypeSchema,
|
1114
|
-
connectedUserName:
|
1115
|
-
connectedUserId:
|
1116
|
-
actor:
|
1117
|
-
id:
|
1118
|
-
name:
|
1119
|
-
email:
|
1120
|
-
address:
|
1121
|
-
phone:
|
1111
|
+
connectedUserName: z28.string().optional().nullable(),
|
1112
|
+
connectedUserId: z28.string().optional().nullable(),
|
1113
|
+
actor: z28.object({
|
1114
|
+
id: z28.string().uuid(),
|
1115
|
+
name: z28.string(),
|
1116
|
+
email: z28.string().email(),
|
1117
|
+
address: z28.string().nullable(),
|
1118
|
+
phone: z28.string().nullable()
|
1122
1119
|
})
|
1123
1120
|
});
|
1124
|
-
var SendMessageToPlatformSchema =
|
1125
|
-
room:
|
1126
|
-
id:
|
1127
|
-
lastMessage:
|
1128
|
-
handleTime:
|
1129
|
-
isLatest:
|
1121
|
+
var SendMessageToPlatformSchema = z28.object({
|
1122
|
+
room: z28.object({
|
1123
|
+
id: z28.string().uuid(),
|
1124
|
+
lastMessage: z28.string().optional(),
|
1125
|
+
handleTime: z28.number().optional(),
|
1126
|
+
isLatest: z28.boolean(),
|
1130
1127
|
direction: MessageDirectionTypeSchema,
|
1131
|
-
platformContact:
|
1132
|
-
channelId:
|
1133
|
-
socialPlatformId:
|
1128
|
+
platformContact: z28.object({
|
1129
|
+
channelId: z28.string().uuid(),
|
1130
|
+
socialPlatformId: z28.string().nullable(),
|
1134
1131
|
type: ChannelTypeSchema,
|
1135
1132
|
metadata: PlatformContactMetadataSchema,
|
1136
|
-
contact:
|
1137
|
-
name:
|
1138
|
-
address:
|
1139
|
-
channel:
|
1140
|
-
notes:
|
1141
|
-
contactProfile:
|
1142
|
-
socialProfileUrl:
|
1133
|
+
contact: z28.object({
|
1134
|
+
name: z28.string(),
|
1135
|
+
address: z28.string().nullable(),
|
1136
|
+
channel: z28.string().nullable(),
|
1137
|
+
notes: z28.string().nullable(),
|
1138
|
+
contactProfile: z28.string().nullable(),
|
1139
|
+
socialProfileUrl: z28.string().nullable()
|
1143
1140
|
})
|
1144
1141
|
}),
|
1145
|
-
actor:
|
1146
|
-
name:
|
1147
|
-
email:
|
1148
|
-
address:
|
1149
|
-
phone:
|
1142
|
+
actor: z28.object({
|
1143
|
+
name: z28.string(),
|
1144
|
+
email: z28.string().email(),
|
1145
|
+
address: z28.string().nullable(),
|
1146
|
+
phone: z28.string().nullable()
|
1150
1147
|
}).nullable(),
|
1151
1148
|
channel: ChannelSchema2
|
1152
1149
|
}),
|
1153
|
-
message:
|
1154
|
-
message:
|
1150
|
+
message: z28.object({
|
1151
|
+
message: z28.string().optional(),
|
1155
1152
|
direction: MessageDirectionTypeSchema,
|
1156
1153
|
type: MessageTypeSchema,
|
1157
|
-
readAt:
|
1158
|
-
metadata:
|
1159
|
-
platformId:
|
1160
|
-
platformMessageId:
|
1161
|
-
replyPlatformMessageId:
|
1162
|
-
template:
|
1154
|
+
readAt: z28.date().optional(),
|
1155
|
+
metadata: z28.any().optional(),
|
1156
|
+
platformId: z28.string().optional(),
|
1157
|
+
platformMessageId: z28.string().optional(),
|
1158
|
+
replyPlatformMessageId: z28.string().optional(),
|
1159
|
+
template: z28.any().optional(),
|
1163
1160
|
locale: MessageLocaleTypeSchema.optional(),
|
1164
|
-
url:
|
1165
|
-
previewUrl:
|
1166
|
-
imageSetId:
|
1161
|
+
url: z28.string().optional(),
|
1162
|
+
previewUrl: z28.string().optional(),
|
1163
|
+
imageSetId: z28.string().optional(),
|
1167
1164
|
upload: UploadSchema.optional(),
|
1168
|
-
sender:
|
1169
|
-
name:
|
1170
|
-
email:
|
1171
|
-
address:
|
1172
|
-
phone:
|
1165
|
+
sender: z28.object({
|
1166
|
+
name: z28.string(),
|
1167
|
+
email: z28.string().email(),
|
1168
|
+
address: z28.string().nullable(),
|
1169
|
+
phone: z28.string().nullable()
|
1173
1170
|
})
|
1174
1171
|
})
|
1175
1172
|
});
|
@@ -1181,28 +1178,28 @@ var ChannelServiceResponseSchema = DefaultSuccessResponseSchema.extend(
|
|
1181
1178
|
data: ChannelSchema2
|
1182
1179
|
}
|
1183
1180
|
);
|
1184
|
-
var ReceiveMessageSchema =
|
1185
|
-
message:
|
1186
|
-
message:
|
1181
|
+
var ReceiveMessageSchema = z28.object({
|
1182
|
+
message: z28.object({
|
1183
|
+
message: z28.string(),
|
1187
1184
|
direction: MessageDirectionTypeSchema,
|
1188
1185
|
type: MessageTypeSchema,
|
1189
|
-
metadata:
|
1190
|
-
platformId:
|
1191
|
-
platformMessageId:
|
1192
|
-
replyPlatformMessageId:
|
1193
|
-
template:
|
1186
|
+
metadata: z28.any(),
|
1187
|
+
platformId: z28.string(),
|
1188
|
+
platformMessageId: z28.string(),
|
1189
|
+
replyPlatformMessageId: z28.string().optional(),
|
1190
|
+
template: z28.any(),
|
1194
1191
|
locale: MessageLocaleTypeSchema.nullable(),
|
1195
|
-
url:
|
1196
|
-
previewUrl:
|
1197
|
-
imageSetId:
|
1198
|
-
room:
|
1199
|
-
lastMessage:
|
1200
|
-
handleTime:
|
1201
|
-
closeAt:
|
1202
|
-
unreadCount:
|
1203
|
-
firstResponseAt:
|
1204
|
-
firstResponseTime:
|
1205
|
-
isLatest:
|
1192
|
+
url: z28.string().optional(),
|
1193
|
+
previewUrl: z28.string().optional(),
|
1194
|
+
imageSetId: z28.string().optional(),
|
1195
|
+
room: z28.object({
|
1196
|
+
lastMessage: z28.string(),
|
1197
|
+
handleTime: z28.number(),
|
1198
|
+
closeAt: z28.date(),
|
1199
|
+
unreadCount: z28.number(),
|
1200
|
+
firstResponseAt: z28.date().nullable(),
|
1201
|
+
firstResponseTime: z28.number().nullable(),
|
1202
|
+
isLatest: z28.boolean(),
|
1206
1203
|
direction: MessageDirectionTypeSchema,
|
1207
1204
|
platformContact: PlatformContactSchema,
|
1208
1205
|
actor: UserSchema,
|
@@ -1232,9 +1229,9 @@ var receiveMessageContract = initContract6().router(
|
|
1232
1229
|
}
|
1233
1230
|
},
|
1234
1231
|
{
|
1235
|
-
baseHeaders:
|
1236
|
-
"x-code":
|
1237
|
-
"x-tenant":
|
1232
|
+
baseHeaders: z29.object({
|
1233
|
+
"x-code": z29.string().uuid(),
|
1234
|
+
"x-tenant": z29.string().uuid()
|
1238
1235
|
}),
|
1239
1236
|
pathPrefix: "message"
|
1240
1237
|
}
|
@@ -1246,11 +1243,11 @@ var mainChatContract = initContract6().router(
|
|
1246
1243
|
path: "/rooms",
|
1247
1244
|
responses: {
|
1248
1245
|
200: DefaultSuccessResponseSchema.extend({
|
1249
|
-
total:
|
1250
|
-
page:
|
1251
|
-
pageSize:
|
1252
|
-
data:
|
1253
|
-
unreadCountsByAssignee:
|
1246
|
+
total: z29.number(),
|
1247
|
+
page: z29.number(),
|
1248
|
+
pageSize: z29.number(),
|
1249
|
+
data: z29.array(RoomSchema),
|
1250
|
+
unreadCountsByAssignee: z29.array(UnreadCountsByAssigneeSchema)
|
1254
1251
|
}),
|
1255
1252
|
401: DefaultUnauthorizedSchema
|
1256
1253
|
},
|
@@ -1260,8 +1257,8 @@ var mainChatContract = initContract6().router(
|
|
1260
1257
|
getRoomContact: {
|
1261
1258
|
method: "GET",
|
1262
1259
|
path: "/contact/:contactId",
|
1263
|
-
pathParams:
|
1264
|
-
contactId:
|
1260
|
+
pathParams: z29.object({
|
1261
|
+
contactId: z29.string().uuid()
|
1265
1262
|
}),
|
1266
1263
|
responses: {
|
1267
1264
|
200: DefaultSuccessResponseSchema.extend({
|
@@ -1296,32 +1293,32 @@ var mainChatContract = initContract6().router(
|
|
1296
1293
|
getRoomsByPlatformContactId: {
|
1297
1294
|
method: "GET",
|
1298
1295
|
path: "/rooms/:platformContactId",
|
1299
|
-
pathParams:
|
1300
|
-
platformContactId:
|
1296
|
+
pathParams: z29.object({
|
1297
|
+
platformContactId: z29.string()
|
1301
1298
|
}),
|
1302
1299
|
responses: {
|
1303
1300
|
200: DefaultSuccessResponseSchema.extend({
|
1304
|
-
data:
|
1305
|
-
|
1306
|
-
id:
|
1301
|
+
data: z29.array(
|
1302
|
+
z29.object({
|
1303
|
+
id: z29.string().uuid()
|
1307
1304
|
})
|
1308
1305
|
),
|
1309
|
-
total:
|
1306
|
+
total: z29.number()
|
1310
1307
|
})
|
1311
1308
|
}
|
1312
1309
|
},
|
1313
1310
|
getMessages: {
|
1314
1311
|
method: "GET",
|
1315
1312
|
path: "/message/:roomId",
|
1316
|
-
pathParams:
|
1317
|
-
roomId:
|
1313
|
+
pathParams: z29.object({
|
1314
|
+
roomId: z29.string().uuid()
|
1318
1315
|
}),
|
1319
1316
|
responses: {
|
1320
1317
|
200: DefaultSuccessResponseSchema.extend({
|
1321
|
-
total:
|
1322
|
-
page:
|
1323
|
-
pageSize:
|
1324
|
-
data:
|
1318
|
+
total: z29.number(),
|
1319
|
+
page: z29.number(),
|
1320
|
+
pageSize: z29.number(),
|
1321
|
+
data: z29.array(MessageSchema)
|
1325
1322
|
})
|
1326
1323
|
},
|
1327
1324
|
query: DefaultQueryParamsSchema,
|
@@ -1334,7 +1331,7 @@ var mainChatContract = initContract6().router(
|
|
1334
1331
|
responses: {
|
1335
1332
|
200: DefaultSuccessResponseSchema.extend({
|
1336
1333
|
data: RoomSchema.extend({
|
1337
|
-
solveMessage:
|
1334
|
+
solveMessage: z29.string()
|
1338
1335
|
})
|
1339
1336
|
}),
|
1340
1337
|
409: DefaultErrorResponseSchema
|
@@ -1355,8 +1352,8 @@ var mainChatContract = initContract6().router(
|
|
1355
1352
|
getRoom: {
|
1356
1353
|
method: "GET",
|
1357
1354
|
path: "/room/:roomId",
|
1358
|
-
pathParams:
|
1359
|
-
roomId:
|
1355
|
+
pathParams: z29.object({
|
1356
|
+
roomId: z29.string().uuid()
|
1360
1357
|
}),
|
1361
1358
|
responses: {
|
1362
1359
|
200: DefaultSuccessResponseSchema.extend({
|
@@ -1369,14 +1366,14 @@ var mainChatContract = initContract6().router(
|
|
1369
1366
|
createRoom: {
|
1370
1367
|
method: "POST",
|
1371
1368
|
path: "/room/create/:platformContactId",
|
1372
|
-
pathParams:
|
1373
|
-
platformContactId:
|
1369
|
+
pathParams: z29.object({
|
1370
|
+
platformContactId: z29.string().uuid()
|
1374
1371
|
}),
|
1375
1372
|
responses: {
|
1376
1373
|
200: DefaultSuccessResponseSchema.extend({
|
1377
1374
|
data: RoomSchema.extend({
|
1378
1375
|
contact: ContactSchema,
|
1379
|
-
openMessage:
|
1376
|
+
openMessage: z29.string()
|
1380
1377
|
})
|
1381
1378
|
})
|
1382
1379
|
},
|
@@ -1386,13 +1383,13 @@ var mainChatContract = initContract6().router(
|
|
1386
1383
|
readRoom: {
|
1387
1384
|
method: "POST",
|
1388
1385
|
path: "/room/:roomid/read",
|
1389
|
-
pathParams:
|
1390
|
-
roomId:
|
1386
|
+
pathParams: z29.object({
|
1387
|
+
roomId: z29.string().uuid()
|
1391
1388
|
}),
|
1392
1389
|
responses: {
|
1393
1390
|
200: DefaultSuccessResponseSchema.extend({
|
1394
1391
|
data: RoomSchema.extend({
|
1395
|
-
description:
|
1392
|
+
description: z29.string().nullable()
|
1396
1393
|
})
|
1397
1394
|
})
|
1398
1395
|
},
|
@@ -1404,10 +1401,10 @@ var mainChatContract = initContract6().router(
|
|
1404
1401
|
path: "/search",
|
1405
1402
|
responses: {
|
1406
1403
|
200: DefaultSuccessResponseSchema.extend({
|
1407
|
-
total:
|
1408
|
-
page:
|
1409
|
-
pageSize:
|
1410
|
-
data:
|
1404
|
+
total: z29.number(),
|
1405
|
+
page: z29.number(),
|
1406
|
+
pageSize: z29.number(),
|
1407
|
+
data: z29.array(RoomSchema)
|
1411
1408
|
})
|
1412
1409
|
},
|
1413
1410
|
query: SearchRoomsSchema,
|
@@ -1422,99 +1419,99 @@ var mainChatContract = initContract6().router(
|
|
1422
1419
|
|
1423
1420
|
// src/contact/index.ts
|
1424
1421
|
import { initContract as initContract7 } from "@ts-rest/core";
|
1425
|
-
import
|
1422
|
+
import z31 from "zod";
|
1426
1423
|
|
1427
1424
|
// src/contact/validation.ts
|
1428
|
-
import
|
1429
|
-
var BaseSchema =
|
1430
|
-
isRequired:
|
1431
|
-
attributeId:
|
1425
|
+
import z30 from "zod";
|
1426
|
+
var BaseSchema = z30.object({
|
1427
|
+
isRequired: z30.boolean(),
|
1428
|
+
attributeId: z30.string()
|
1432
1429
|
});
|
1433
1430
|
var SingleValue = {
|
1434
|
-
value:
|
1431
|
+
value: z30.string()
|
1435
1432
|
};
|
1436
1433
|
var ContactContractValidationSchema = {
|
1437
1434
|
create: {
|
1438
|
-
request:
|
1435
|
+
request: z30.object({
|
1439
1436
|
name: BaseSchema.extend(SingleValue),
|
1440
1437
|
email: BaseSchema.extend({
|
1441
|
-
value:
|
1442
|
-
|
1443
|
-
email:
|
1444
|
-
isPrimary:
|
1438
|
+
value: z30.array(
|
1439
|
+
z30.object({
|
1440
|
+
email: z30.string(),
|
1441
|
+
isPrimary: z30.boolean()
|
1445
1442
|
})
|
1446
1443
|
)
|
1447
1444
|
}),
|
1448
1445
|
channel: BaseSchema.extend(SingleValue),
|
1449
1446
|
address: BaseSchema.extend(SingleValue),
|
1450
1447
|
phone: BaseSchema.extend({
|
1451
|
-
value:
|
1452
|
-
|
1453
|
-
phone:
|
1454
|
-
isPrimary:
|
1448
|
+
value: z30.array(
|
1449
|
+
z30.object({
|
1450
|
+
phone: z30.string(),
|
1451
|
+
isPrimary: z30.boolean()
|
1455
1452
|
})
|
1456
1453
|
)
|
1457
1454
|
}).optional(),
|
1458
1455
|
notes: BaseSchema.extend(SingleValue),
|
1459
1456
|
tags: BaseSchema.extend({
|
1460
|
-
value:
|
1457
|
+
value: z30.array(z30.string())
|
1461
1458
|
}),
|
1462
1459
|
company: BaseSchema.extend(SingleValue),
|
1463
|
-
customFields:
|
1460
|
+
customFields: z30.array(
|
1464
1461
|
BaseSchema.extend({
|
1465
|
-
value:
|
1466
|
-
type:
|
1467
|
-
isDefaultAttribute:
|
1462
|
+
value: z30.union([z30.string(), z30.array(z30.string())]),
|
1463
|
+
type: z30.string(),
|
1464
|
+
isDefaultAttribute: z30.boolean()
|
1468
1465
|
})
|
1469
1466
|
)
|
1470
1467
|
}),
|
1471
|
-
response:
|
1468
|
+
response: z30.string()
|
1472
1469
|
},
|
1473
1470
|
getById: {
|
1474
|
-
request:
|
1475
|
-
id:
|
1471
|
+
request: z30.object({
|
1472
|
+
id: z30.string().uuid()
|
1476
1473
|
}),
|
1477
1474
|
response: ContactSchema
|
1478
1475
|
},
|
1479
1476
|
delete: {
|
1480
|
-
request:
|
1481
|
-
id:
|
1477
|
+
request: z30.object({
|
1478
|
+
id: z30.string().uuid()
|
1482
1479
|
}),
|
1483
|
-
response:
|
1480
|
+
response: z30.string()
|
1484
1481
|
},
|
1485
1482
|
getAll: {
|
1486
|
-
request:
|
1487
|
-
page:
|
1488
|
-
pageSize:
|
1489
|
-
keyword:
|
1490
|
-
company:
|
1491
|
-
name:
|
1492
|
-
address:
|
1493
|
-
channel:
|
1494
|
-
selectedDate:
|
1495
|
-
customFields:
|
1496
|
-
|
1497
|
-
attributeId:
|
1498
|
-
type:
|
1499
|
-
value:
|
1483
|
+
request: z30.object({
|
1484
|
+
page: z30.coerce.number().default(1),
|
1485
|
+
pageSize: z30.coerce.number().default(10),
|
1486
|
+
keyword: z30.string().optional(),
|
1487
|
+
company: z30.array(z30.string().uuid()),
|
1488
|
+
name: z30.string(),
|
1489
|
+
address: z30.string(),
|
1490
|
+
channel: z30.array(z30.string()),
|
1491
|
+
selectedDate: z30.string(),
|
1492
|
+
customFields: z30.array(
|
1493
|
+
z30.object({
|
1494
|
+
attributeId: z30.string().uuid(),
|
1495
|
+
type: z30.string(),
|
1496
|
+
value: z30.union([z30.string(), z30.array(z30.string())])
|
1500
1497
|
})
|
1501
1498
|
),
|
1502
|
-
tags:
|
1503
|
-
phone:
|
1504
|
-
email:
|
1505
|
-
notes:
|
1499
|
+
tags: z30.array(z30.string().uuid()),
|
1500
|
+
phone: z30.string(),
|
1501
|
+
email: z30.string(),
|
1502
|
+
notes: z30.string()
|
1506
1503
|
}).partial(),
|
1507
1504
|
response: {
|
1508
|
-
page:
|
1509
|
-
pageSize:
|
1510
|
-
total:
|
1511
|
-
lastPage:
|
1512
|
-
data:
|
1505
|
+
page: z30.number(),
|
1506
|
+
pageSize: z30.number(),
|
1507
|
+
total: z30.number(),
|
1508
|
+
lastPage: z30.number(),
|
1509
|
+
data: z30.array(ContactSchema)
|
1513
1510
|
}
|
1514
1511
|
},
|
1515
1512
|
createContactByPhone: {
|
1516
|
-
request:
|
1517
|
-
phoneNumber:
|
1513
|
+
request: z30.object({
|
1514
|
+
phoneNumber: z30.string().refine(
|
1518
1515
|
(value) => {
|
1519
1516
|
const numericValue = value.replace(/\s/g, "");
|
1520
1517
|
return /^\d+$/.test(numericValue);
|
@@ -1527,8 +1524,8 @@ var ContactContractValidationSchema = {
|
|
1527
1524
|
response: ContactSchema
|
1528
1525
|
},
|
1529
1526
|
updateContactByPhone: {
|
1530
|
-
request:
|
1531
|
-
phoneNumber:
|
1527
|
+
request: z30.object({
|
1528
|
+
phoneNumber: z30.string().refine(
|
1532
1529
|
(value) => {
|
1533
1530
|
const numericValue = value.replace(/\s/g, "");
|
1534
1531
|
return /^\d+$/.test(numericValue);
|
@@ -1541,68 +1538,68 @@ var ContactContractValidationSchema = {
|
|
1541
1538
|
response: ContactSchema
|
1542
1539
|
},
|
1543
1540
|
updateFromOngoingCall: {
|
1544
|
-
request:
|
1545
|
-
name:
|
1546
|
-
companyId:
|
1541
|
+
request: z30.object({
|
1542
|
+
name: z30.string(),
|
1543
|
+
companyId: z30.string().uuid()
|
1547
1544
|
}).partial(),
|
1548
1545
|
response: ContactSchema
|
1549
1546
|
},
|
1550
1547
|
merge: {
|
1551
|
-
request:
|
1552
|
-
primaryContactId:
|
1553
|
-
emails:
|
1554
|
-
|
1555
|
-
email:
|
1556
|
-
isPrimary:
|
1548
|
+
request: z30.object({
|
1549
|
+
primaryContactId: z30.string().uuid(),
|
1550
|
+
emails: z30.array(
|
1551
|
+
z30.object({
|
1552
|
+
email: z30.string(),
|
1553
|
+
isPrimary: z30.boolean()
|
1557
1554
|
})
|
1558
1555
|
),
|
1559
|
-
phones:
|
1560
|
-
|
1561
|
-
phone:
|
1562
|
-
isPrimary:
|
1556
|
+
phones: z30.array(
|
1557
|
+
z30.object({
|
1558
|
+
phone: z30.string(),
|
1559
|
+
isPrimary: z30.boolean()
|
1563
1560
|
})
|
1564
1561
|
),
|
1565
|
-
otherContacts:
|
1562
|
+
otherContacts: z30.array(z30.string().uuid())
|
1566
1563
|
}),
|
1567
1564
|
response: ContactSchema
|
1568
1565
|
},
|
1569
1566
|
checkContactPhone: {
|
1570
|
-
request:
|
1571
|
-
contactId:
|
1572
|
-
phoneNumber:
|
1567
|
+
request: z30.object({
|
1568
|
+
contactId: z30.string().uuid().optional(),
|
1569
|
+
phoneNumber: z30.string()
|
1573
1570
|
}),
|
1574
|
-
response:
|
1571
|
+
response: z30.boolean()
|
1575
1572
|
},
|
1576
1573
|
checkContactEmail: {
|
1577
|
-
request:
|
1578
|
-
contactId:
|
1579
|
-
email:
|
1574
|
+
request: z30.object({
|
1575
|
+
contactId: z30.string().uuid().optional(),
|
1576
|
+
email: z30.string()
|
1580
1577
|
}),
|
1581
|
-
response:
|
1578
|
+
response: z30.boolean()
|
1582
1579
|
},
|
1583
1580
|
filterContacts: {
|
1584
|
-
request:
|
1585
|
-
page:
|
1586
|
-
pageSize:
|
1587
|
-
keyword:
|
1581
|
+
request: z30.object({
|
1582
|
+
page: z30.coerce.number().default(1),
|
1583
|
+
pageSize: z30.coerce.number().default(10),
|
1584
|
+
keyword: z30.string()
|
1588
1585
|
}).partial(),
|
1589
1586
|
response: {
|
1590
|
-
page:
|
1591
|
-
pageSize:
|
1592
|
-
total:
|
1593
|
-
lastPage:
|
1594
|
-
data:
|
1587
|
+
page: z30.number(),
|
1588
|
+
pageSize: z30.number(),
|
1589
|
+
total: z30.number(),
|
1590
|
+
lastPage: z30.number(),
|
1591
|
+
data: z30.array(ContactSchema)
|
1595
1592
|
}
|
1596
1593
|
},
|
1597
1594
|
addAttachments: {
|
1598
|
-
request:
|
1599
|
-
attributeId:
|
1600
|
-
attachments:
|
1601
|
-
|
1602
|
-
bucketName:
|
1603
|
-
fileKey:
|
1604
|
-
fileName:
|
1605
|
-
fileSize:
|
1595
|
+
request: z30.object({
|
1596
|
+
attributeId: z30.string().uuid(),
|
1597
|
+
attachments: z30.array(
|
1598
|
+
z30.object({
|
1599
|
+
bucketName: z30.string(),
|
1600
|
+
fileKey: z30.string(),
|
1601
|
+
fileName: z30.string(),
|
1602
|
+
fileSize: z30.coerce.number()
|
1606
1603
|
})
|
1607
1604
|
).optional()
|
1608
1605
|
}),
|
@@ -1620,14 +1617,14 @@ var contactContract = initContract7().router(
|
|
1620
1617
|
201: DefaultSuccessResponseSchema.extend({
|
1621
1618
|
message: ContactContractValidationSchema.create.response
|
1622
1619
|
}),
|
1623
|
-
400:
|
1624
|
-
message:
|
1620
|
+
400: z31.object({
|
1621
|
+
message: z31.string()
|
1625
1622
|
}),
|
1626
|
-
409:
|
1627
|
-
message:
|
1623
|
+
409: z31.object({
|
1624
|
+
message: z31.string()
|
1628
1625
|
}),
|
1629
|
-
500:
|
1630
|
-
message:
|
1626
|
+
500: z31.object({
|
1627
|
+
message: z31.string()
|
1631
1628
|
}),
|
1632
1629
|
401: DefaultUnauthorizedSchema,
|
1633
1630
|
404: DefaultNotFoundSchema,
|
@@ -1644,14 +1641,14 @@ var contactContract = initContract7().router(
|
|
1644
1641
|
200: DefaultSuccessResponseSchema.extend(
|
1645
1642
|
ContactContractValidationSchema.getAll.response
|
1646
1643
|
),
|
1647
|
-
400:
|
1648
|
-
message:
|
1644
|
+
400: z31.object({
|
1645
|
+
message: z31.string()
|
1649
1646
|
}),
|
1650
|
-
409:
|
1651
|
-
message:
|
1647
|
+
409: z31.object({
|
1648
|
+
message: z31.string()
|
1652
1649
|
}),
|
1653
|
-
500:
|
1654
|
-
message:
|
1650
|
+
500: z31.object({
|
1651
|
+
message: z31.string()
|
1655
1652
|
}),
|
1656
1653
|
401: DefaultUnauthorizedSchema,
|
1657
1654
|
404: DefaultNotFoundSchema,
|
@@ -1667,14 +1664,14 @@ var contactContract = initContract7().router(
|
|
1667
1664
|
200: DefaultSuccessResponseSchema.extend(
|
1668
1665
|
ContactContractValidationSchema.filterContacts.response
|
1669
1666
|
),
|
1670
|
-
400:
|
1671
|
-
message:
|
1667
|
+
400: z31.object({
|
1668
|
+
message: z31.string()
|
1672
1669
|
}),
|
1673
|
-
409:
|
1674
|
-
message:
|
1670
|
+
409: z31.object({
|
1671
|
+
message: z31.string()
|
1675
1672
|
}),
|
1676
|
-
500:
|
1677
|
-
message:
|
1673
|
+
500: z31.object({
|
1674
|
+
message: z31.string()
|
1678
1675
|
}),
|
1679
1676
|
401: DefaultUnauthorizedSchema,
|
1680
1677
|
404: DefaultNotFoundSchema,
|
@@ -1690,14 +1687,14 @@ var contactContract = initContract7().router(
|
|
1690
1687
|
200: DefaultSuccessResponseSchema.extend({
|
1691
1688
|
data: ContactContractValidationSchema.getById.response
|
1692
1689
|
}),
|
1693
|
-
400:
|
1694
|
-
message:
|
1690
|
+
400: z31.object({
|
1691
|
+
message: z31.string()
|
1695
1692
|
}),
|
1696
|
-
409:
|
1697
|
-
message:
|
1693
|
+
409: z31.object({
|
1694
|
+
message: z31.string()
|
1698
1695
|
}),
|
1699
|
-
500:
|
1700
|
-
message:
|
1696
|
+
500: z31.object({
|
1697
|
+
message: z31.string()
|
1701
1698
|
}),
|
1702
1699
|
401: DefaultUnauthorizedSchema,
|
1703
1700
|
404: DefaultNotFoundSchema,
|
@@ -1714,14 +1711,14 @@ var contactContract = initContract7().router(
|
|
1714
1711
|
200: DefaultSuccessResponseSchema.extend({
|
1715
1712
|
message: ContactContractValidationSchema.delete.response
|
1716
1713
|
}),
|
1717
|
-
400:
|
1718
|
-
message:
|
1714
|
+
400: z31.object({
|
1715
|
+
message: z31.string()
|
1719
1716
|
}),
|
1720
|
-
409:
|
1721
|
-
message:
|
1717
|
+
409: z31.object({
|
1718
|
+
message: z31.string()
|
1722
1719
|
}),
|
1723
|
-
500:
|
1724
|
-
message:
|
1720
|
+
500: z31.object({
|
1721
|
+
message: z31.string()
|
1725
1722
|
}),
|
1726
1723
|
401: DefaultUnauthorizedSchema,
|
1727
1724
|
404: DefaultNotFoundSchema,
|
@@ -1737,14 +1734,14 @@ var contactContract = initContract7().router(
|
|
1737
1734
|
201: DefaultSuccessResponseSchema.extend({
|
1738
1735
|
data: ContactContractValidationSchema.createContactByPhone.response
|
1739
1736
|
}),
|
1740
|
-
400:
|
1741
|
-
message:
|
1737
|
+
400: z31.object({
|
1738
|
+
message: z31.string()
|
1742
1739
|
}),
|
1743
|
-
409:
|
1744
|
-
message:
|
1740
|
+
409: z31.object({
|
1741
|
+
message: z31.string()
|
1745
1742
|
}),
|
1746
|
-
500:
|
1747
|
-
message:
|
1743
|
+
500: z31.object({
|
1744
|
+
message: z31.string()
|
1748
1745
|
}),
|
1749
1746
|
401: DefaultUnauthorizedSchema,
|
1750
1747
|
404: DefaultNotFoundSchema,
|
@@ -1760,14 +1757,14 @@ var contactContract = initContract7().router(
|
|
1760
1757
|
201: DefaultSuccessResponseSchema.extend({
|
1761
1758
|
data: ContactContractValidationSchema.updateFromOngoingCall.response
|
1762
1759
|
}),
|
1763
|
-
400:
|
1764
|
-
message:
|
1760
|
+
400: z31.object({
|
1761
|
+
message: z31.string()
|
1765
1762
|
}),
|
1766
|
-
409:
|
1767
|
-
message:
|
1763
|
+
409: z31.object({
|
1764
|
+
message: z31.string()
|
1768
1765
|
}),
|
1769
|
-
500:
|
1770
|
-
message:
|
1766
|
+
500: z31.object({
|
1767
|
+
message: z31.string()
|
1771
1768
|
}),
|
1772
1769
|
401: DefaultUnauthorizedSchema,
|
1773
1770
|
404: DefaultNotFoundSchema,
|
@@ -1783,14 +1780,14 @@ var contactContract = initContract7().router(
|
|
1783
1780
|
200: DefaultSuccessResponseSchema.extend({
|
1784
1781
|
data: ContactContractValidationSchema.merge.response
|
1785
1782
|
}),
|
1786
|
-
400:
|
1787
|
-
message:
|
1783
|
+
400: z31.object({
|
1784
|
+
message: z31.string()
|
1788
1785
|
}),
|
1789
|
-
409:
|
1790
|
-
message:
|
1786
|
+
409: z31.object({
|
1787
|
+
message: z31.string()
|
1791
1788
|
}),
|
1792
|
-
500:
|
1793
|
-
message:
|
1789
|
+
500: z31.object({
|
1790
|
+
message: z31.string()
|
1794
1791
|
}),
|
1795
1792
|
401: DefaultUnauthorizedSchema,
|
1796
1793
|
404: DefaultNotFoundSchema,
|
@@ -1806,14 +1803,14 @@ var contactContract = initContract7().router(
|
|
1806
1803
|
200: DefaultSuccessResponseSchema.extend({
|
1807
1804
|
existed: ContactContractValidationSchema.checkContactPhone.response
|
1808
1805
|
}),
|
1809
|
-
400:
|
1810
|
-
message:
|
1806
|
+
400: z31.object({
|
1807
|
+
message: z31.string()
|
1811
1808
|
}),
|
1812
|
-
409:
|
1813
|
-
message:
|
1809
|
+
409: z31.object({
|
1810
|
+
message: z31.string()
|
1814
1811
|
}),
|
1815
|
-
500:
|
1816
|
-
message:
|
1812
|
+
500: z31.object({
|
1813
|
+
message: z31.string()
|
1817
1814
|
}),
|
1818
1815
|
401: DefaultUnauthorizedSchema,
|
1819
1816
|
404: DefaultNotFoundSchema,
|
@@ -1829,14 +1826,14 @@ var contactContract = initContract7().router(
|
|
1829
1826
|
200: DefaultSuccessResponseSchema.extend({
|
1830
1827
|
existed: ContactContractValidationSchema.checkContactEmail.response
|
1831
1828
|
}),
|
1832
|
-
400:
|
1833
|
-
message:
|
1829
|
+
400: z31.object({
|
1830
|
+
message: z31.string()
|
1834
1831
|
}),
|
1835
|
-
409:
|
1836
|
-
message:
|
1832
|
+
409: z31.object({
|
1833
|
+
message: z31.string()
|
1837
1834
|
}),
|
1838
|
-
500:
|
1839
|
-
message:
|
1835
|
+
500: z31.object({
|
1836
|
+
message: z31.string()
|
1840
1837
|
}),
|
1841
1838
|
401: DefaultUnauthorizedSchema,
|
1842
1839
|
404: DefaultNotFoundSchema,
|
@@ -1848,21 +1845,21 @@ var contactContract = initContract7().router(
|
|
1848
1845
|
addAttachments: {
|
1849
1846
|
method: "POST",
|
1850
1847
|
path: "/:id/attachments",
|
1851
|
-
pathParams:
|
1852
|
-
id:
|
1848
|
+
pathParams: z31.object({
|
1849
|
+
id: z31.string().uuid()
|
1853
1850
|
}),
|
1854
1851
|
responses: {
|
1855
1852
|
201: DefaultSuccessResponseSchema.extend({
|
1856
1853
|
message: ContactContractValidationSchema.addAttachments.response
|
1857
1854
|
}),
|
1858
|
-
400:
|
1859
|
-
message:
|
1855
|
+
400: z31.object({
|
1856
|
+
message: z31.string()
|
1860
1857
|
}),
|
1861
|
-
409:
|
1862
|
-
message:
|
1858
|
+
409: z31.object({
|
1859
|
+
message: z31.string()
|
1863
1860
|
}),
|
1864
|
-
500:
|
1865
|
-
message:
|
1861
|
+
500: z31.object({
|
1862
|
+
message: z31.string()
|
1866
1863
|
}),
|
1867
1864
|
401: DefaultUnauthorizedSchema,
|
1868
1865
|
404: DefaultNotFoundSchema,
|
@@ -1879,14 +1876,14 @@ var contactContract = initContract7().router(
|
|
1879
1876
|
200: DefaultSuccessResponseSchema.extend({
|
1880
1877
|
data: ContactContractValidationSchema.getById.response
|
1881
1878
|
}),
|
1882
|
-
400:
|
1883
|
-
message:
|
1879
|
+
400: z31.object({
|
1880
|
+
message: z31.string()
|
1884
1881
|
}),
|
1885
|
-
409:
|
1886
|
-
message:
|
1882
|
+
409: z31.object({
|
1883
|
+
message: z31.string()
|
1887
1884
|
}),
|
1888
|
-
500:
|
1889
|
-
message:
|
1885
|
+
500: z31.object({
|
1886
|
+
message: z31.string()
|
1890
1887
|
}),
|
1891
1888
|
401: DefaultUnauthorizedSchema,
|
1892
1889
|
404: DefaultNotFoundSchema,
|
@@ -1903,59 +1900,61 @@ var contactContract = initContract7().router(
|
|
1903
1900
|
|
1904
1901
|
// src/ticket/index.ts
|
1905
1902
|
import { initContract as initContract8 } from "@ts-rest/core";
|
1906
|
-
import
|
1903
|
+
import z34 from "zod";
|
1907
1904
|
|
1908
1905
|
// src/ticket/schema.ts
|
1909
|
-
import
|
1906
|
+
import z32 from "zod";
|
1910
1907
|
var TicketCustomFieldSchema = DefaultEntitySchema.extend({
|
1911
|
-
textValue:
|
1912
|
-
booleanValue:
|
1913
|
-
numberValue:
|
1914
|
-
dateValue:
|
1908
|
+
textValue: z32.string().nullable(),
|
1909
|
+
booleanValue: z32.boolean().nullable(),
|
1910
|
+
numberValue: z32.coerce.number().nullable(),
|
1911
|
+
dateValue: z32.date().nullable(),
|
1915
1912
|
attribute: AttributeSchema.omit({ options: true, group: true }),
|
1916
|
-
uploads:
|
1917
|
-
});
|
1918
|
-
var TicketEntityTypesSchema =
|
1919
|
-
id:
|
1920
|
-
createdAt:
|
1921
|
-
updatedAt:
|
1922
|
-
deletedAt:
|
1923
|
-
entity:
|
1924
|
-
description:
|
1925
|
-
});
|
1926
|
-
var TicketActivitySchema =
|
1927
|
-
id:
|
1928
|
-
createdAt:
|
1929
|
-
updatedAt:
|
1930
|
-
deletedAt:
|
1931
|
-
entityId:
|
1932
|
-
description:
|
1913
|
+
uploads: z32.array(UploadSchema)
|
1914
|
+
});
|
1915
|
+
var TicketEntityTypesSchema = z32.object({
|
1916
|
+
id: z32.string().uuid(),
|
1917
|
+
createdAt: z32.date(),
|
1918
|
+
updatedAt: z32.date(),
|
1919
|
+
deletedAt: z32.date().nullable(),
|
1920
|
+
entity: z32.string(),
|
1921
|
+
description: z32.string().nullable()
|
1922
|
+
});
|
1923
|
+
var TicketActivitySchema = z32.object({
|
1924
|
+
id: z32.string().uuid(),
|
1925
|
+
createdAt: z32.date(),
|
1926
|
+
updatedAt: z32.date(),
|
1927
|
+
deletedAt: z32.date().nullable(),
|
1928
|
+
entityId: z32.string(),
|
1929
|
+
description: z32.string(),
|
1933
1930
|
entityType: TicketEntityTypesSchema
|
1934
1931
|
});
|
1935
1932
|
var TicketSchema = DefaultEntitySchema.extend({
|
1936
|
-
title:
|
1937
|
-
description:
|
1938
|
-
type:
|
1939
|
-
channel:
|
1940
|
-
priority:
|
1941
|
-
status:
|
1942
|
-
contactId:
|
1943
|
-
creatorId:
|
1944
|
-
assigneeId:
|
1945
|
-
reasonToAssign:
|
1946
|
-
ticketNumber:
|
1947
|
-
customFields:
|
1948
|
-
|
1949
|
-
|
1950
|
-
|
1951
|
-
|
1952
|
-
|
1953
|
-
|
1954
|
-
|
1933
|
+
title: z32.string(),
|
1934
|
+
description: z32.string().nullable(),
|
1935
|
+
type: z32.string(),
|
1936
|
+
channel: z32.string(),
|
1937
|
+
priority: z32.string(),
|
1938
|
+
status: z32.string(),
|
1939
|
+
contactId: z32.string().uuid(),
|
1940
|
+
creatorId: z32.string().uuid(),
|
1941
|
+
assigneeId: z32.string().uuid(),
|
1942
|
+
reasonToAssign: z32.string().nullable(),
|
1943
|
+
ticketNumber: z32.coerce.number().optional(),
|
1944
|
+
customFields: z32.array(TicketCustomFieldSchema),
|
1945
|
+
tags: z32.array(TagSchema),
|
1946
|
+
categories: z32.array(CategorySchema)
|
1947
|
+
});
|
1948
|
+
var TicketCountByContactSchema = z32.object({
|
1949
|
+
total: z32.coerce.number(),
|
1950
|
+
open: z32.coerce.number(),
|
1951
|
+
pending: z32.coerce.number(),
|
1952
|
+
closed: z32.coerce.number(),
|
1953
|
+
solved: z32.coerce.number()
|
1955
1954
|
});
|
1956
1955
|
|
1957
1956
|
// src/ticket/validation.ts
|
1958
|
-
import
|
1957
|
+
import z33 from "zod";
|
1959
1958
|
var addErrorMessage = (field) => {
|
1960
1959
|
return field.refine(
|
1961
1960
|
({ isRequired, value }) => {
|
@@ -1973,106 +1972,106 @@ var addErrorMessage = (field) => {
|
|
1973
1972
|
}
|
1974
1973
|
);
|
1975
1974
|
};
|
1976
|
-
var BaseSchema2 =
|
1977
|
-
isRequired:
|
1978
|
-
attributeId:
|
1975
|
+
var BaseSchema2 = z33.object({
|
1976
|
+
isRequired: z33.boolean(),
|
1977
|
+
attributeId: z33.string()
|
1979
1978
|
});
|
1980
1979
|
var SingleValue2 = addErrorMessage(
|
1981
1980
|
BaseSchema2.extend({
|
1982
|
-
value:
|
1981
|
+
value: z33.string()
|
1983
1982
|
})
|
1984
1983
|
);
|
1985
|
-
var CreateTicketValidationSchema =
|
1984
|
+
var CreateTicketValidationSchema = z33.object({
|
1986
1985
|
title: SingleValue2,
|
1987
1986
|
description: SingleValue2,
|
1988
1987
|
status: SingleValue2,
|
1989
1988
|
type: SingleValue2,
|
1990
1989
|
priority: SingleValue2,
|
1991
1990
|
contact: SingleValue2,
|
1992
|
-
assignee:
|
1993
|
-
isRequired:
|
1994
|
-
attributeId:
|
1995
|
-
value:
|
1991
|
+
assignee: z33.object({
|
1992
|
+
isRequired: z33.boolean(),
|
1993
|
+
attributeId: z33.string(),
|
1994
|
+
value: z33.string()
|
1996
1995
|
}),
|
1997
1996
|
channel: SingleValue2,
|
1998
|
-
tags: addErrorMessage(BaseSchema2.extend({ value:
|
1999
|
-
categories: BaseSchema2.extend({ value:
|
2000
|
-
customFields:
|
1997
|
+
tags: addErrorMessage(BaseSchema2.extend({ value: z33.array(z33.string()) })),
|
1998
|
+
categories: BaseSchema2.extend({ value: z33.array(z33.string()) }),
|
1999
|
+
customFields: z33.array(
|
2001
2000
|
addErrorMessage(
|
2002
2001
|
BaseSchema2.extend({
|
2003
|
-
value:
|
2004
|
-
type:
|
2005
|
-
isDefaultAttribute:
|
2002
|
+
value: z33.union([z33.string(), z33.array(z33.string())]),
|
2003
|
+
type: z33.string(),
|
2004
|
+
isDefaultAttribute: z33.boolean()
|
2006
2005
|
})
|
2007
2006
|
)
|
2008
2007
|
),
|
2009
|
-
reasonToAssign:
|
2008
|
+
reasonToAssign: z33.object({ value: z33.string() }).optional()
|
2010
2009
|
});
|
2011
2010
|
var UpdateTicketValidationSchema = CreateTicketValidationSchema;
|
2012
|
-
var TicketAttachmentRecordSchema =
|
2013
|
-
bucketName:
|
2014
|
-
fileKey:
|
2015
|
-
fileName:
|
2016
|
-
fileSize:
|
2017
|
-
url:
|
2018
|
-
});
|
2019
|
-
var CreateTicketAttachmentRecordsSchema =
|
2020
|
-
ticketId:
|
2021
|
-
attributeId:
|
2022
|
-
ticketAttachmentRecords:
|
2023
|
-
});
|
2024
|
-
var TicketParamsSchema =
|
2025
|
-
page:
|
2026
|
-
pageSize:
|
2027
|
-
});
|
2028
|
-
var CustomFieldQuery =
|
2029
|
-
attributeId:
|
2030
|
-
type:
|
2031
|
-
value:
|
2032
|
-
});
|
2033
|
-
var GetAllTicketQuerySchema =
|
2034
|
-
page:
|
2035
|
-
pageSize:
|
2036
|
-
agent:
|
2037
|
-
selectedDate:
|
2038
|
-
keyword:
|
2039
|
-
title:
|
2040
|
-
description:
|
2041
|
-
status:
|
2042
|
-
priority:
|
2043
|
-
channel:
|
2044
|
-
type:
|
2045
|
-
ticketType:
|
2046
|
-
contact:
|
2047
|
-
tags:
|
2048
|
-
categories:
|
2049
|
-
customFields:
|
2050
|
-
|
2051
|
-
attributeId:
|
2052
|
-
type:
|
2053
|
-
value:
|
2011
|
+
var TicketAttachmentRecordSchema = z33.object({
|
2012
|
+
bucketName: z33.string(),
|
2013
|
+
fileKey: z33.string(),
|
2014
|
+
fileName: z33.string(),
|
2015
|
+
fileSize: z33.coerce.number(),
|
2016
|
+
url: z33.string()
|
2017
|
+
});
|
2018
|
+
var CreateTicketAttachmentRecordsSchema = z33.object({
|
2019
|
+
ticketId: z33.string(),
|
2020
|
+
attributeId: z33.string(),
|
2021
|
+
ticketAttachmentRecords: z33.array(TicketAttachmentRecordSchema)
|
2022
|
+
});
|
2023
|
+
var TicketParamsSchema = z33.object({
|
2024
|
+
page: z33.coerce.number().default(1),
|
2025
|
+
pageSize: z33.coerce.number().default(10)
|
2026
|
+
});
|
2027
|
+
var CustomFieldQuery = z33.object({
|
2028
|
+
attributeId: z33.string(),
|
2029
|
+
type: z33.string(),
|
2030
|
+
value: z33.union([z33.string(), z33.array(z33.string())])
|
2031
|
+
});
|
2032
|
+
var GetAllTicketQuerySchema = z33.object({
|
2033
|
+
page: z33.string().transform((value) => Number(value)),
|
2034
|
+
pageSize: z33.string().transform((value) => Number(value)),
|
2035
|
+
agent: z33.array(z33.string()),
|
2036
|
+
selectedDate: z33.string(),
|
2037
|
+
keyword: z33.string(),
|
2038
|
+
title: z33.string(),
|
2039
|
+
description: z33.string(),
|
2040
|
+
status: z33.array(z33.string()),
|
2041
|
+
priority: z33.array(z33.string()),
|
2042
|
+
channel: z33.array(z33.string()),
|
2043
|
+
type: z33.array(z33.string()),
|
2044
|
+
ticketType: z33.array(z33.string()),
|
2045
|
+
contact: z33.array(z33.string()),
|
2046
|
+
tags: z33.array(z33.string()),
|
2047
|
+
categories: z33.array(z33.string()),
|
2048
|
+
customFields: z33.array(
|
2049
|
+
z33.object({
|
2050
|
+
attributeId: z33.string().uuid(),
|
2051
|
+
type: z33.string(),
|
2052
|
+
value: z33.union([z33.string(), z33.array(z33.string())])
|
2054
2053
|
})
|
2055
2054
|
)
|
2056
2055
|
}).partial();
|
2057
|
-
var ExportAllTicketQuerySchema =
|
2058
|
-
agent:
|
2059
|
-
selectedDate:
|
2060
|
-
keyword:
|
2061
|
-
title:
|
2062
|
-
description:
|
2063
|
-
status:
|
2064
|
-
priority:
|
2065
|
-
channel:
|
2066
|
-
type:
|
2067
|
-
ticketType:
|
2068
|
-
contact:
|
2069
|
-
tags:
|
2070
|
-
categories:
|
2071
|
-
customFields:
|
2072
|
-
|
2073
|
-
attributeId:
|
2074
|
-
type:
|
2075
|
-
value:
|
2056
|
+
var ExportAllTicketQuerySchema = z33.object({
|
2057
|
+
agent: z33.array(z33.string()),
|
2058
|
+
selectedDate: z33.string(),
|
2059
|
+
keyword: z33.string(),
|
2060
|
+
title: z33.string(),
|
2061
|
+
description: z33.string(),
|
2062
|
+
status: z33.array(z33.string()),
|
2063
|
+
priority: z33.array(z33.string()),
|
2064
|
+
channel: z33.array(z33.string()),
|
2065
|
+
type: z33.array(z33.string()),
|
2066
|
+
ticketType: z33.array(z33.string()),
|
2067
|
+
contact: z33.array(z33.string()),
|
2068
|
+
tags: z33.array(z33.string()),
|
2069
|
+
categories: z33.array(z33.string()),
|
2070
|
+
customFields: z33.array(
|
2071
|
+
z33.object({
|
2072
|
+
attributeId: z33.string().uuid(),
|
2073
|
+
type: z33.string(),
|
2074
|
+
value: z33.union([z33.string(), z33.array(z33.string())])
|
2076
2075
|
})
|
2077
2076
|
)
|
2078
2077
|
}).partial();
|
@@ -2088,14 +2087,14 @@ var ticketContract = initContract8().router(
|
|
2088
2087
|
201: DefaultSuccessResponseSchema.extend({
|
2089
2088
|
data: TicketSchema
|
2090
2089
|
}),
|
2091
|
-
400:
|
2092
|
-
message:
|
2090
|
+
400: z34.object({
|
2091
|
+
message: z34.string()
|
2093
2092
|
}),
|
2094
|
-
409:
|
2095
|
-
message:
|
2093
|
+
409: z34.object({
|
2094
|
+
message: z34.string()
|
2096
2095
|
}),
|
2097
|
-
500:
|
2098
|
-
message:
|
2096
|
+
500: z34.object({
|
2097
|
+
message: z34.string()
|
2099
2098
|
}),
|
2100
2099
|
401: DefaultUnauthorizedSchema,
|
2101
2100
|
404: DefaultNotFoundSchema,
|
@@ -2110,12 +2109,14 @@ var ticketContract = initContract8().router(
|
|
2110
2109
|
query: GetAllTicketQuerySchema,
|
2111
2110
|
headers: DefaultHeaderSchema,
|
2112
2111
|
responses: {
|
2113
|
-
200:
|
2114
|
-
|
2115
|
-
|
2116
|
-
|
2117
|
-
|
2118
|
-
|
2112
|
+
200: DefaultSuccessResponseSchema.extend({
|
2113
|
+
data: WithPagination(
|
2114
|
+
// The response data should contain the user relation.
|
2115
|
+
TicketSchema
|
2116
|
+
)
|
2117
|
+
}),
|
2118
|
+
400: z34.object({
|
2119
|
+
message: z34.string()
|
2119
2120
|
}),
|
2120
2121
|
401: DefaultUnauthorizedSchema,
|
2121
2122
|
500: DefaultErrorResponseSchema
|
@@ -2125,12 +2126,14 @@ var ticketContract = initContract8().router(
|
|
2125
2126
|
getTicketById: {
|
2126
2127
|
method: "GET",
|
2127
2128
|
path: "/:id",
|
2128
|
-
pathParams:
|
2129
|
+
pathParams: z34.object({ id: z34.string() }),
|
2129
2130
|
headers: DefaultHeaderSchema,
|
2130
2131
|
responses: {
|
2131
|
-
200:
|
2132
|
-
|
2133
|
-
|
2132
|
+
200: DefaultSuccessResponseSchema.extend({
|
2133
|
+
data: TicketSchema
|
2134
|
+
}),
|
2135
|
+
400: z34.object({
|
2136
|
+
message: z34.string()
|
2134
2137
|
}),
|
2135
2138
|
401: DefaultUnauthorizedSchema,
|
2136
2139
|
500: DefaultErrorResponseSchema
|
@@ -2140,13 +2143,15 @@ var ticketContract = initContract8().router(
|
|
2140
2143
|
getTicketByContactId: {
|
2141
2144
|
method: "GET",
|
2142
2145
|
path: "/contact/:id",
|
2143
|
-
pathParams:
|
2146
|
+
pathParams: z34.object({ id: z34.string() }),
|
2144
2147
|
query: TicketParamsSchema,
|
2145
2148
|
headers: DefaultHeaderSchema,
|
2146
2149
|
responses: {
|
2147
|
-
200:
|
2148
|
-
|
2149
|
-
|
2150
|
+
200: DefaultSuccessResponseSchema.extend({
|
2151
|
+
data: WithPagination(TicketSchema)
|
2152
|
+
}),
|
2153
|
+
400: z34.object({
|
2154
|
+
message: z34.string()
|
2150
2155
|
}),
|
2151
2156
|
401: DefaultUnauthorizedSchema,
|
2152
2157
|
500: DefaultErrorResponseSchema
|
@@ -2156,21 +2161,21 @@ var ticketContract = initContract8().router(
|
|
2156
2161
|
updateTicket: {
|
2157
2162
|
method: "PATCH",
|
2158
2163
|
path: "/:id",
|
2159
|
-
pathParams:
|
2164
|
+
pathParams: z34.object({ id: z34.string() }),
|
2160
2165
|
body: UpdateTicketValidationSchema,
|
2161
2166
|
headers: DefaultHeaderSchema,
|
2162
2167
|
responses: {
|
2163
2168
|
201: DefaultSuccessResponseSchema.extend({
|
2164
2169
|
message: TicketSchema
|
2165
2170
|
}),
|
2166
|
-
400:
|
2167
|
-
message:
|
2171
|
+
400: z34.object({
|
2172
|
+
message: z34.string()
|
2168
2173
|
}),
|
2169
|
-
409:
|
2170
|
-
message:
|
2174
|
+
409: z34.object({
|
2175
|
+
message: z34.string()
|
2171
2176
|
}),
|
2172
|
-
500:
|
2173
|
-
message:
|
2177
|
+
500: z34.object({
|
2178
|
+
message: z34.string()
|
2174
2179
|
}),
|
2175
2180
|
401: DefaultUnauthorizedSchema,
|
2176
2181
|
404: DefaultNotFoundSchema,
|
@@ -2181,11 +2186,11 @@ var ticketContract = initContract8().router(
|
|
2181
2186
|
deleteTicket: {
|
2182
2187
|
method: "DELETE",
|
2183
2188
|
path: "/:id",
|
2184
|
-
pathParams:
|
2189
|
+
pathParams: z34.object({ id: z34.string() }),
|
2185
2190
|
headers: DefaultHeaderSchema,
|
2186
2191
|
body: null,
|
2187
2192
|
responses: {
|
2188
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2193
|
+
200: DefaultSuccessResponseSchema.extend({ message: z34.string() }),
|
2189
2194
|
500: DefaultErrorResponseSchema
|
2190
2195
|
},
|
2191
2196
|
summary: "Delete a extension."
|
@@ -2193,19 +2198,19 @@ var ticketContract = initContract8().router(
|
|
2193
2198
|
updateDescription: {
|
2194
2199
|
method: "PATCH",
|
2195
2200
|
path: "/description/update/:id",
|
2196
|
-
pathParams:
|
2197
|
-
body:
|
2201
|
+
pathParams: z34.object({ id: z34.string() }),
|
2202
|
+
body: z34.object({ description: z34.string() }),
|
2198
2203
|
headers: DefaultHeaderSchema,
|
2199
2204
|
responses: {
|
2200
|
-
201: DefaultSuccessResponseSchema.extend({ message:
|
2201
|
-
400:
|
2202
|
-
message:
|
2205
|
+
201: DefaultSuccessResponseSchema.extend({ message: z34.string() }),
|
2206
|
+
400: z34.object({
|
2207
|
+
message: z34.string()
|
2203
2208
|
}),
|
2204
|
-
409:
|
2205
|
-
message:
|
2209
|
+
409: z34.object({
|
2210
|
+
message: z34.string()
|
2206
2211
|
}),
|
2207
|
-
500:
|
2208
|
-
message:
|
2212
|
+
500: z34.object({
|
2213
|
+
message: z34.string()
|
2209
2214
|
}),
|
2210
2215
|
401: DefaultUnauthorizedSchema,
|
2211
2216
|
404: DefaultNotFoundSchema,
|
@@ -2216,19 +2221,19 @@ var ticketContract = initContract8().router(
|
|
2216
2221
|
updateTitle: {
|
2217
2222
|
method: "PATCH",
|
2218
2223
|
path: "/title/update/:id",
|
2219
|
-
pathParams:
|
2220
|
-
body:
|
2224
|
+
pathParams: z34.object({ id: z34.string() }),
|
2225
|
+
body: z34.object({ title: z34.string() }),
|
2221
2226
|
headers: DefaultHeaderSchema,
|
2222
2227
|
responses: {
|
2223
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2224
|
-
400:
|
2225
|
-
message:
|
2228
|
+
200: DefaultSuccessResponseSchema.extend({ message: z34.string() }),
|
2229
|
+
400: z34.object({
|
2230
|
+
message: z34.string()
|
2226
2231
|
}),
|
2227
|
-
409:
|
2228
|
-
message:
|
2232
|
+
409: z34.object({
|
2233
|
+
message: z34.string()
|
2229
2234
|
}),
|
2230
|
-
500:
|
2231
|
-
message:
|
2235
|
+
500: z34.object({
|
2236
|
+
message: z34.string()
|
2232
2237
|
}),
|
2233
2238
|
401: DefaultUnauthorizedSchema,
|
2234
2239
|
404: DefaultNotFoundSchema,
|
@@ -2239,19 +2244,19 @@ var ticketContract = initContract8().router(
|
|
2239
2244
|
updateType: {
|
2240
2245
|
method: "PATCH",
|
2241
2246
|
path: "/type/update/:id",
|
2242
|
-
pathParams:
|
2243
|
-
body:
|
2247
|
+
pathParams: z34.object({ id: z34.string() }),
|
2248
|
+
body: z34.object({ type: z34.string() }),
|
2244
2249
|
headers: DefaultHeaderSchema,
|
2245
2250
|
responses: {
|
2246
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2247
|
-
400:
|
2248
|
-
message:
|
2251
|
+
200: DefaultSuccessResponseSchema.extend({ message: z34.string() }),
|
2252
|
+
400: z34.object({
|
2253
|
+
message: z34.string()
|
2249
2254
|
}),
|
2250
|
-
409:
|
2251
|
-
message:
|
2255
|
+
409: z34.object({
|
2256
|
+
message: z34.string()
|
2252
2257
|
}),
|
2253
|
-
500:
|
2254
|
-
message:
|
2258
|
+
500: z34.object({
|
2259
|
+
message: z34.string()
|
2255
2260
|
}),
|
2256
2261
|
401: DefaultUnauthorizedSchema,
|
2257
2262
|
404: DefaultNotFoundSchema,
|
@@ -2262,19 +2267,19 @@ var ticketContract = initContract8().router(
|
|
2262
2267
|
updateStatus: {
|
2263
2268
|
method: "PATCH",
|
2264
2269
|
path: "/status/update/:id",
|
2265
|
-
pathParams:
|
2266
|
-
body:
|
2270
|
+
pathParams: z34.object({ id: z34.string() }),
|
2271
|
+
body: z34.object({ status: z34.string() }),
|
2267
2272
|
headers: DefaultHeaderSchema,
|
2268
2273
|
responses: {
|
2269
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2270
|
-
400:
|
2271
|
-
message:
|
2274
|
+
200: DefaultSuccessResponseSchema.extend({ message: z34.string() }),
|
2275
|
+
400: z34.object({
|
2276
|
+
message: z34.string()
|
2272
2277
|
}),
|
2273
|
-
409:
|
2274
|
-
message:
|
2278
|
+
409: z34.object({
|
2279
|
+
message: z34.string()
|
2275
2280
|
}),
|
2276
|
-
500:
|
2277
|
-
message:
|
2281
|
+
500: z34.object({
|
2282
|
+
message: z34.string()
|
2278
2283
|
}),
|
2279
2284
|
401: DefaultUnauthorizedSchema,
|
2280
2285
|
404: DefaultNotFoundSchema,
|
@@ -2285,19 +2290,19 @@ var ticketContract = initContract8().router(
|
|
2285
2290
|
updatePriority: {
|
2286
2291
|
method: "PATCH",
|
2287
2292
|
path: "/priority/update/:id",
|
2288
|
-
pathParams:
|
2289
|
-
body:
|
2293
|
+
pathParams: z34.object({ id: z34.string() }),
|
2294
|
+
body: z34.object({ priority: z34.string() }),
|
2290
2295
|
headers: DefaultHeaderSchema,
|
2291
2296
|
responses: {
|
2292
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2293
|
-
400:
|
2294
|
-
message:
|
2297
|
+
200: DefaultSuccessResponseSchema.extend({ message: z34.string() }),
|
2298
|
+
400: z34.object({
|
2299
|
+
message: z34.string()
|
2295
2300
|
}),
|
2296
|
-
409:
|
2297
|
-
message:
|
2301
|
+
409: z34.object({
|
2302
|
+
message: z34.string()
|
2298
2303
|
}),
|
2299
|
-
500:
|
2300
|
-
message:
|
2304
|
+
500: z34.object({
|
2305
|
+
message: z34.string()
|
2301
2306
|
}),
|
2302
2307
|
401: DefaultUnauthorizedSchema,
|
2303
2308
|
404: DefaultNotFoundSchema,
|
@@ -2308,19 +2313,19 @@ var ticketContract = initContract8().router(
|
|
2308
2313
|
updateChannel: {
|
2309
2314
|
method: "PATCH",
|
2310
2315
|
path: "/channel/update/:id",
|
2311
|
-
pathParams:
|
2312
|
-
body:
|
2316
|
+
pathParams: z34.object({ id: z34.string() }),
|
2317
|
+
body: z34.object({ channel: z34.string() }),
|
2313
2318
|
headers: DefaultHeaderSchema,
|
2314
2319
|
responses: {
|
2315
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2316
|
-
400:
|
2317
|
-
message:
|
2320
|
+
200: DefaultSuccessResponseSchema.extend({ message: z34.string() }),
|
2321
|
+
400: z34.object({
|
2322
|
+
message: z34.string()
|
2318
2323
|
}),
|
2319
|
-
409:
|
2320
|
-
message:
|
2324
|
+
409: z34.object({
|
2325
|
+
message: z34.string()
|
2321
2326
|
}),
|
2322
|
-
500:
|
2323
|
-
message:
|
2327
|
+
500: z34.object({
|
2328
|
+
message: z34.string()
|
2324
2329
|
}),
|
2325
2330
|
401: DefaultUnauthorizedSchema,
|
2326
2331
|
404: DefaultNotFoundSchema,
|
@@ -2331,19 +2336,19 @@ var ticketContract = initContract8().router(
|
|
2331
2336
|
updateTags: {
|
2332
2337
|
method: "PATCH",
|
2333
2338
|
path: "/tags/update/:id",
|
2334
|
-
pathParams:
|
2335
|
-
body:
|
2339
|
+
pathParams: z34.object({ id: z34.string() }),
|
2340
|
+
body: z34.object({ tags: z34.array(z34.string()) }),
|
2336
2341
|
headers: DefaultHeaderSchema,
|
2337
2342
|
responses: {
|
2338
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
2339
|
-
400:
|
2340
|
-
message:
|
2343
|
+
200: DefaultSuccessResponseSchema.extend({ message: z34.string() }),
|
2344
|
+
400: z34.object({
|
2345
|
+
message: z34.string()
|
2341
2346
|
}),
|
2342
|
-
409:
|
2343
|
-
message:
|
2347
|
+
409: z34.object({
|
2348
|
+
message: z34.string()
|
2344
2349
|
}),
|
2345
|
-
500:
|
2346
|
-
message:
|
2350
|
+
500: z34.object({
|
2351
|
+
message: z34.string()
|
2347
2352
|
}),
|
2348
2353
|
401: DefaultUnauthorizedSchema,
|
2349
2354
|
404: DefaultNotFoundSchema,
|
@@ -2354,19 +2359,21 @@ var ticketContract = initContract8().router(
|
|
2354
2359
|
changeAssignee: {
|
2355
2360
|
method: "PATCH",
|
2356
2361
|
path: "/assignee/update/:id",
|
2357
|
-
pathParams:
|
2358
|
-
body:
|
2362
|
+
pathParams: z34.object({ id: z34.string() }),
|
2363
|
+
body: z34.object({ ticketId: z34.string(), assigneeId: z34.string() }),
|
2359
2364
|
headers: DefaultHeaderSchema,
|
2360
2365
|
responses: {
|
2361
|
-
200:
|
2362
|
-
|
2363
|
-
message: z35.string()
|
2366
|
+
200: DefaultSuccessResponseSchema.extend({
|
2367
|
+
data: TicketSchema
|
2364
2368
|
}),
|
2365
|
-
|
2366
|
-
message:
|
2369
|
+
400: z34.object({
|
2370
|
+
message: z34.string()
|
2367
2371
|
}),
|
2368
|
-
|
2369
|
-
message:
|
2372
|
+
409: z34.object({
|
2373
|
+
message: z34.string()
|
2374
|
+
}),
|
2375
|
+
500: z34.object({
|
2376
|
+
message: z34.string()
|
2370
2377
|
}),
|
2371
2378
|
401: DefaultUnauthorizedSchema,
|
2372
2379
|
404: DefaultNotFoundSchema,
|
@@ -2377,12 +2384,14 @@ var ticketContract = initContract8().router(
|
|
2377
2384
|
getTicketCountByContact: {
|
2378
2385
|
method: "GET",
|
2379
2386
|
path: "/ticket_count/contact/:id",
|
2380
|
-
pathParams:
|
2387
|
+
pathParams: z34.object({ id: z34.string() }),
|
2381
2388
|
headers: DefaultHeaderSchema,
|
2382
2389
|
responses: {
|
2383
|
-
200:
|
2384
|
-
|
2385
|
-
|
2390
|
+
200: DefaultSuccessResponseSchema.extend({
|
2391
|
+
data: TicketCountByContactSchema
|
2392
|
+
}),
|
2393
|
+
400: z34.object({
|
2394
|
+
message: z34.string()
|
2386
2395
|
}),
|
2387
2396
|
401: DefaultUnauthorizedSchema,
|
2388
2397
|
500: DefaultErrorResponseSchema
|
@@ -2392,16 +2401,18 @@ var ticketContract = initContract8().router(
|
|
2392
2401
|
getTicketByContact: {
|
2393
2402
|
method: "GET",
|
2394
2403
|
path: "/contact/:id",
|
2395
|
-
pathParams:
|
2396
|
-
query:
|
2397
|
-
page:
|
2398
|
-
pageSize:
|
2404
|
+
pathParams: z34.object({ id: z34.string() }),
|
2405
|
+
query: z34.object({
|
2406
|
+
page: z34.coerce.number().default(1),
|
2407
|
+
pageSize: z34.coerce.number().default(10)
|
2399
2408
|
}).optional(),
|
2400
2409
|
headers: DefaultHeaderSchema,
|
2401
2410
|
responses: {
|
2402
|
-
200:
|
2403
|
-
|
2404
|
-
|
2411
|
+
200: DefaultSuccessResponseSchema.extend({
|
2412
|
+
data: WithPagination(TicketSchema)
|
2413
|
+
}),
|
2414
|
+
400: z34.object({
|
2415
|
+
message: z34.string()
|
2405
2416
|
}),
|
2406
2417
|
401: DefaultUnauthorizedSchema,
|
2407
2418
|
500: DefaultErrorResponseSchema
|
@@ -2414,15 +2425,17 @@ var ticketContract = initContract8().router(
|
|
2414
2425
|
headers: DefaultHeaderSchema,
|
2415
2426
|
body: CreateTicketAttachmentRecordsSchema,
|
2416
2427
|
responses: {
|
2417
|
-
201:
|
2418
|
-
|
2419
|
-
|
2428
|
+
201: DefaultSuccessResponseSchema.extend({
|
2429
|
+
data: TicketCustomFieldSchema
|
2430
|
+
}),
|
2431
|
+
400: z34.object({
|
2432
|
+
message: z34.string()
|
2420
2433
|
}),
|
2421
|
-
409:
|
2422
|
-
message:
|
2434
|
+
409: z34.object({
|
2435
|
+
message: z34.string()
|
2423
2436
|
}),
|
2424
|
-
500:
|
2425
|
-
message:
|
2437
|
+
500: z34.object({
|
2438
|
+
message: z34.string()
|
2426
2439
|
}),
|
2427
2440
|
401: DefaultUnauthorizedSchema,
|
2428
2441
|
404: DefaultNotFoundSchema,
|
@@ -2447,45 +2460,45 @@ var ticketContract = initContract8().router(
|
|
2447
2460
|
|
2448
2461
|
// src/cx-log/index.ts
|
2449
2462
|
import { initContract as initContract9 } from "@ts-rest/core";
|
2450
|
-
import
|
2463
|
+
import z36 from "zod";
|
2451
2464
|
|
2452
2465
|
// src/cx-log/validation.ts
|
2453
|
-
import
|
2454
|
-
var sentimentScoreSchema =
|
2455
|
-
|
2456
|
-
|
2466
|
+
import z35 from "zod";
|
2467
|
+
var sentimentScoreSchema = z35.union([
|
2468
|
+
z35.literal("positive"),
|
2469
|
+
z35.literal("negative")
|
2457
2470
|
]);
|
2458
|
-
var CustomFieldQueryParamsSchema =
|
2459
|
-
attributeId:
|
2460
|
-
value:
|
2461
|
-
type:
|
2471
|
+
var CustomFieldQueryParamsSchema = z35.object({
|
2472
|
+
attributeId: z35.string(),
|
2473
|
+
value: z35.union([z35.string(), z35.array(z35.string())]),
|
2474
|
+
type: z35.string().optional()
|
2462
2475
|
});
|
2463
2476
|
var GetAllCxLogQueryParamsSchema = DefaultQueryParamsSchema.extend({
|
2464
|
-
contactId:
|
2465
|
-
caseId:
|
2466
|
-
channelIds:
|
2467
|
-
queueId:
|
2468
|
-
agentIds:
|
2469
|
-
direction:
|
2470
|
-
disposition:
|
2471
|
-
sentimentScore:
|
2472
|
-
csatScore:
|
2473
|
-
sla:
|
2474
|
-
tags:
|
2477
|
+
contactId: z35.string().uuid(),
|
2478
|
+
caseId: z35.string(),
|
2479
|
+
channelIds: z35.array(z35.string().uuid()),
|
2480
|
+
queueId: z35.array(z35.string()),
|
2481
|
+
agentIds: z35.array(z35.string()),
|
2482
|
+
direction: z35.array(z35.union([z35.literal("inbound"), z35.literal("outbound")])),
|
2483
|
+
disposition: z35.array(z35.string()),
|
2484
|
+
sentimentScore: z35.array(sentimentScoreSchema),
|
2485
|
+
csatScore: z35.string(),
|
2486
|
+
sla: z35.array(z35.union([z35.literal("meet"), z35.literal("unmeet")])),
|
2487
|
+
tags: z35.array(z35.string()),
|
2475
2488
|
// General tags
|
2476
2489
|
// Default contact attributes
|
2477
|
-
name:
|
2478
|
-
contactLabels:
|
2479
|
-
email:
|
2480
|
-
channel:
|
2481
|
-
phone:
|
2482
|
-
notes:
|
2483
|
-
address:
|
2484
|
-
company:
|
2490
|
+
name: z35.string(),
|
2491
|
+
contactLabels: z35.array(z35.string()),
|
2492
|
+
email: z35.string(),
|
2493
|
+
channel: z35.array(z35.string()),
|
2494
|
+
phone: z35.string(),
|
2495
|
+
notes: z35.string(),
|
2496
|
+
address: z35.string(),
|
2497
|
+
company: z35.array(z35.string()),
|
2485
2498
|
// Custom fields
|
2486
|
-
customFields:
|
2499
|
+
customFields: z35.array(CustomFieldQueryParamsSchema),
|
2487
2500
|
// Date filter
|
2488
|
-
selectedDate:
|
2501
|
+
selectedDate: z35.string()
|
2489
2502
|
}).partial().optional();
|
2490
2503
|
|
2491
2504
|
// src/cx-log/index.ts
|
@@ -2496,10 +2509,10 @@ var cxLogContract = initContract9().router({
|
|
2496
2509
|
headers: DefaultHeaderSchema,
|
2497
2510
|
responses: {
|
2498
2511
|
200: DefaultSuccessResponseSchema.extend({
|
2499
|
-
total:
|
2500
|
-
page:
|
2501
|
-
pageSize:
|
2502
|
-
cxLogs:
|
2512
|
+
total: z36.number(),
|
2513
|
+
page: z36.number(),
|
2514
|
+
pageSize: z36.number(),
|
2515
|
+
cxLogs: z36.array(CxLogSchemaWithRelations)
|
2503
2516
|
}),
|
2504
2517
|
401: DefaultUnauthorizedSchema
|
2505
2518
|
},
|
@@ -2523,11 +2536,28 @@ var cxLogContract = initContract9().router({
|
|
2523
2536
|
import { initContract as initContract10 } from "@ts-rest/core";
|
2524
2537
|
import z39 from "zod";
|
2525
2538
|
|
2539
|
+
// src/extension/schema.ts
|
2540
|
+
import z37 from "zod";
|
2541
|
+
var ExtensionSchema = z37.object({
|
2542
|
+
id: z37.string().uuid(),
|
2543
|
+
createdAt: z37.date(),
|
2544
|
+
updatedAt: z37.date(),
|
2545
|
+
deletedAt: z37.date().nullable(),
|
2546
|
+
userId: z37.string().nullable(),
|
2547
|
+
sipServerUrl: z37.string(),
|
2548
|
+
sipUserName: z37.string(),
|
2549
|
+
webphoneLoginUser: z37.string(),
|
2550
|
+
extensionId: z37.coerce.number(),
|
2551
|
+
extensionName: z37.string(),
|
2552
|
+
telephonySignature: z37.string().nullable()
|
2553
|
+
});
|
2554
|
+
|
2526
2555
|
// src/extension/validation.ts
|
2527
2556
|
import { z as z38 } from "zod";
|
2528
2557
|
var CreateExtensionSchema = z38.object({
|
2529
2558
|
userId: z38.string().nullable(),
|
2530
2559
|
sipUserName: z38.string(),
|
2560
|
+
webphoneLoginUser: z38.string(),
|
2531
2561
|
extensionId: z38.coerce.number().nullable(),
|
2532
2562
|
extensionName: z38.string().nullable(),
|
2533
2563
|
telephonySignature: z38.string().nullable().optional()
|
@@ -2567,7 +2597,19 @@ var extensionContract = initContract10().router(
|
|
2567
2597
|
200: WithPagination(
|
2568
2598
|
// The response data should contain the user relation.
|
2569
2599
|
ExtensionSchema.extend({
|
2570
|
-
user:
|
2600
|
+
user: z39.object({
|
2601
|
+
id: z39.string().uuid(),
|
2602
|
+
createdAt: z39.date(),
|
2603
|
+
updatedAt: z39.date(),
|
2604
|
+
deletedAt: z39.date().nullable(),
|
2605
|
+
name: z39.string(),
|
2606
|
+
email: z39.string().email(),
|
2607
|
+
emailVerifiedAt: z39.date().nullable(),
|
2608
|
+
password: z39.string(),
|
2609
|
+
address: z39.string().nullable(),
|
2610
|
+
phone: z39.string().nullable(),
|
2611
|
+
notificationCount: z39.number().nullable()
|
2612
|
+
})
|
2571
2613
|
})
|
2572
2614
|
),
|
2573
2615
|
400: z39.object({
|
@@ -5087,7 +5129,6 @@ var apiContract = initContract34().router({
|
|
5087
5129
|
permission: permissionContract,
|
5088
5130
|
role: roleContract,
|
5089
5131
|
user: userContract,
|
5090
|
-
extension: extensionContract,
|
5091
5132
|
widget: widgetContract,
|
5092
5133
|
wrapUpForm: wrapUpFormContract,
|
5093
5134
|
emailEngineWebhooks: emailEngineWebhooksEventsContract,
|
@@ -5104,6 +5145,9 @@ var apiContract = initContract34().router({
|
|
5104
5145
|
company: companyContract,
|
5105
5146
|
evaluateForm: evaluateFormContract
|
5106
5147
|
});
|
5148
|
+
var extensionContract2 = initContract34().router({
|
5149
|
+
extension: extensionContract
|
5150
|
+
});
|
5107
5151
|
var commentActivityContract = initContract34().router({
|
5108
5152
|
comment: commentContract,
|
5109
5153
|
activityLog: activityLogContract
|
@@ -5130,6 +5174,7 @@ export {
|
|
5130
5174
|
cxLogContract,
|
5131
5175
|
dashboardContract,
|
5132
5176
|
evaluateFormContract,
|
5177
|
+
extensionContract2 as extensionContract,
|
5133
5178
|
platformContract,
|
5134
5179
|
tagContract,
|
5135
5180
|
telephonyCdrContract,
|