@kl1/contracts 1.0.1 → 1.0.3
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/api-contracts/src/auth/index.d.ts +436 -0
- package/dist/api-contracts/src/auth/index.d.ts.map +1 -0
- package/dist/api-contracts/src/auth/permission-schema.d.ts +27 -0
- package/dist/api-contracts/src/auth/permission-schema.d.ts.map +1 -0
- package/dist/api-contracts/src/auth/role-schema.d.ts +70 -0
- package/dist/api-contracts/src/auth/role-schema.d.ts.map +1 -0
- package/dist/api-contracts/src/auth/user-schema.d.ts +140 -0
- package/dist/api-contracts/src/auth/user-schema.d.ts.map +1 -0
- package/dist/api-contracts/src/base-contract.d.ts +85 -0
- package/dist/api-contracts/src/base-contract.d.ts.map +1 -0
- package/dist/api-contracts/src/contract.d.ts +593 -0
- package/dist/api-contracts/src/contract.d.ts.map +1 -0
- package/dist/api-contracts/src/cx-log/cx-log-schema.d.ts +54 -0
- package/dist/api-contracts/src/cx-log/cx-log-schema.d.ts.map +1 -0
- package/dist/api-contracts/src/cx-log/index.d.ts +252 -0
- package/dist/api-contracts/src/cx-log/index.d.ts.map +1 -0
- package/dist/api-contracts/src/index.d.ts +2 -0
- package/dist/api-contracts/src/index.d.ts.map +1 -0
- package/dist/attribute/schema.d.ts +42 -0
- package/dist/attribute/schema.d.ts.map +1 -0
- package/dist/attribute-option/schema.d.ts +33 -0
- package/dist/attribute-option/schema.d.ts.map +1 -0
- package/dist/auth/index.d.ts +436 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/permission-schema.d.ts +27 -0
- package/dist/auth/permission-schema.d.ts.map +1 -0
- package/dist/auth/role-schema.d.ts +70 -0
- package/dist/auth/role-schema.d.ts.map +1 -0
- package/dist/auth/user-schema.d.ts +140 -0
- package/dist/auth/user-schema.d.ts.map +1 -0
- package/dist/base-contract.d.ts +85 -0
- package/dist/base-contract.d.ts.map +1 -0
- package/dist/call-log/index.d.ts +4 -0
- package/dist/call-log/index.d.ts.map +1 -0
- package/dist/call-log/schema.d.ts +57 -0
- package/dist/call-log/schema.d.ts.map +1 -0
- package/dist/call-log/validation.d.ts +24 -0
- package/dist/call-log/validation.d.ts.map +1 -0
- package/dist/company/schema.d.ts +30 -0
- package/dist/company/schema.d.ts.map +1 -0
- package/dist/contact/schema.d.ts +42 -0
- package/dist/contact/schema.d.ts.map +1 -0
- package/dist/contact-email/schema.d.ts +27 -0
- package/dist/contact-email/schema.d.ts.map +1 -0
- package/dist/contact-phone/schema.d.ts +27 -0
- package/dist/contact-phone/schema.d.ts.map +1 -0
- package/dist/contract.d.ts +663 -0
- package/dist/{src/channel/index.d.ts.map → contract.d.ts.map} +1 -1
- package/dist/custom-field/schema.d.ts +36 -0
- package/dist/custom-field/schema.d.ts.map +1 -0
- package/dist/custom-field-upload/schema.d.ts +24 -0
- package/dist/custom-field-upload/schema.d.ts.map +1 -0
- package/dist/cx-log/cx-log-schema.d.ts +54 -0
- package/dist/cx-log/cx-log-schema.d.ts.map +1 -0
- package/dist/cx-log/index.d.ts +230 -0
- package/dist/cx-log/index.d.ts.map +1 -0
- package/dist/cx-log/schema.d.ts +54 -0
- package/dist/cx-log/schema.d.ts.map +1 -0
- package/dist/cx-log/validation.d.ts +95 -0
- package/dist/cx-log/validation.d.ts.map +1 -0
- package/dist/entities/src/base.entity.d.ts +7 -0
- package/dist/entities/src/base.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/attribute-option.entity.d.ts +9 -0
- package/dist/entities/src/tenants/attribute-option.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/attribute.entity.d.ts +12 -0
- package/dist/entities/src/tenants/attribute.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/call-log.entity.d.ts +18 -0
- package/dist/entities/src/tenants/call-log.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/company.entity.d.ts +8 -0
- package/dist/entities/src/tenants/company.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/contact-custom-field.entity.d.ts +14 -0
- package/dist/entities/src/tenants/contact-custom-field.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/contact-email.entity.d.ts +7 -0
- package/dist/entities/src/tenants/contact-email.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/contact-phone.entity.d.ts +7 -0
- package/dist/entities/src/tenants/contact-phone.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/contact.entity.d.ts +14 -0
- package/dist/entities/src/tenants/contact.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/custom-field-upload.entity.d.ts +8 -0
- package/dist/entities/src/tenants/custom-field-upload.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/custom-field.entity.d.ts +10 -0
- package/dist/entities/src/tenants/custom-field.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/cx-log.entity.d.ts +20 -0
- package/dist/entities/src/tenants/cx-log.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/evaluate-form.entity.d.ts +9 -0
- package/dist/entities/src/tenants/evaluate-form.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/extension.entity.d.ts +10 -0
- package/dist/entities/src/tenants/extension.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/group.entity.d.ts +6 -0
- package/dist/entities/src/tenants/group.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/index.d.ts +25 -0
- package/dist/entities/src/tenants/index.d.ts.map +1 -0
- package/dist/entities/src/tenants/log-form.entity.d.ts +6 -0
- package/dist/entities/src/tenants/log-form.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/permission.entity.d.ts +9 -0
- package/dist/entities/src/tenants/permission.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/platform-contact.entity.d.ts +8 -0
- package/dist/entities/src/tenants/platform-contact.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/role.entity.d.ts +11 -0
- package/dist/entities/src/tenants/role.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/tag-group.entity.d.ts +8 -0
- package/dist/entities/src/tenants/tag-group.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/tag.entity.d.ts +11 -0
- package/dist/entities/src/tenants/tag.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/telephony-cdr.entity.d.ts +23 -0
- package/dist/entities/src/tenants/telephony-cdr.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/telephony-live-queue-call.entity.d.ts +7 -0
- package/dist/entities/src/tenants/telephony-live-queue-call.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/telephony-queue-call-count.entity.d.ts +15 -0
- package/dist/entities/src/tenants/telephony-queue-call-count.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/ticket.entity.d.ts +17 -0
- package/dist/entities/src/tenants/ticket.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/upload.entity.d.ts +8 -0
- package/dist/entities/src/tenants/upload.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/user.entity.d.ts +13 -0
- package/dist/entities/src/tenants/user.entity.d.ts.map +1 -0
- package/dist/entities/src/tenants/widget.entity.d.ts +9 -0
- package/dist/entities/src/tenants/widget.entity.d.ts.map +1 -0
- package/dist/evaluate-form/schema.d.ts +27 -0
- package/dist/evaluate-form/schema.d.ts.map +1 -0
- package/dist/exchange-token/index.d.ts +32 -0
- package/dist/exchange-token/index.d.ts.map +1 -0
- package/dist/extension/schema.d.ts +36 -0
- package/dist/extension/schema.d.ts.map +1 -0
- package/dist/group/schema.d.ts +24 -0
- package/dist/group/schema.d.ts.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +759 -636
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +759 -636
- package/dist/index.mjs.map +1 -1
- package/dist/log-form/schema.d.ts +24 -0
- package/dist/log-form/schema.d.ts.map +1 -0
- package/dist/permission/schema.d.ts +27 -0
- package/dist/permission/schema.d.ts.map +1 -0
- package/dist/platform-contact/schema.d.ts +30 -0
- package/dist/platform-contact/schema.d.ts.map +1 -0
- package/dist/posts/index.d.ts +118 -0
- package/dist/posts/index.d.ts.map +1 -0
- package/dist/role/schema.d.ts +70 -0
- package/dist/role/schema.d.ts.map +1 -0
- package/dist/src/attribute/index.d.ts +8 -7
- package/dist/src/attribute/index.d.ts.map +1 -1
- package/dist/src/attribute/schema.d.ts +3 -3
- package/dist/src/attribute/validation.d.ts +4 -4
- package/dist/src/auth/index.d.ts +1 -1
- package/dist/src/base-contract.d.ts +1 -1
- package/dist/src/call-log/validation.d.ts +2 -2
- package/dist/src/category/index.d.ts +7 -7
- package/dist/src/category/index.d.ts.map +1 -1
- package/dist/src/category/schema.d.ts +3 -3
- package/dist/src/category/validation.d.ts +4 -4
- package/dist/src/chat/index.d.ts +2111 -0
- package/dist/src/chat/index.d.ts.map +1 -0
- package/dist/src/chat/schema.d.ts +1742 -0
- package/dist/src/chat/schema.d.ts.map +1 -0
- package/dist/src/{channel/schema.d.ts → chat/validation.d.ts} +143 -81
- package/dist/src/chat/validation.d.ts.map +1 -0
- package/dist/src/contract.d.ts +4099 -3378
- package/dist/src/contract.d.ts.map +1 -1
- package/dist/src/custom-field/schema.d.ts +2 -2
- package/dist/src/cx-log/index.d.ts +8 -8
- package/dist/src/cx-log/schema.d.ts +4 -4
- package/dist/src/extension/index.d.ts.map +1 -1
- package/dist/src/mail/account-contract.d.ts +105 -105
- package/dist/src/mail/account-contract.d.ts.map +1 -1
- package/dist/src/mail/mail-contract.d.ts +615 -616
- package/dist/src/mail/mail-contract.d.ts.map +1 -1
- package/dist/src/mail/mail-server.d.ts.map +1 -1
- package/dist/src/mail/message-contract.d.ts.map +1 -1
- package/dist/src/mail/room-contract.d.ts.map +1 -1
- package/dist/src/mail/schemas/account.schema.d.ts +129 -129
- package/dist/src/permission/index.d.ts +0 -84
- package/dist/src/permission/index.d.ts.map +1 -1
- package/dist/src/platform-contact/schema.d.ts +2 -2
- package/dist/src/role/index.d.ts.map +1 -1
- package/dist/src/tag/index.d.ts +6 -6
- package/dist/src/tag/index.d.ts.map +1 -1
- package/dist/src/tag/schema.d.ts +2 -2
- package/dist/src/tag/validation.d.ts +3 -3
- package/dist/src/ticket/schema.d.ts +2 -2
- package/dist/src/types.d.ts +5 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/user/index.d.ts +32 -229
- package/dist/src/user/index.d.ts.map +1 -1
- package/dist/src/user/validation.d.ts +49 -0
- package/dist/src/user/validation.d.ts.map +1 -0
- package/dist/src/widget/index.d.ts +31 -70
- package/dist/src/widget/index.d.ts.map +1 -1
- package/dist/tag/schema.d.ts +21 -0
- package/dist/tag/schema.d.ts.map +1 -0
- package/dist/tag-group/schema.d.ts +24 -0
- package/dist/tag-group/schema.d.ts.map +1 -0
- package/dist/telephony-cdr/index.d.ts +4 -0
- package/dist/telephony-cdr/index.d.ts.map +1 -0
- package/dist/telephony-cdr/schema.d.ts +75 -0
- package/dist/telephony-cdr/schema.d.ts.map +1 -0
- package/dist/telephony-cdr/validation.d.ts +48 -0
- package/dist/telephony-cdr/validation.d.ts.map +1 -0
- package/dist/telephony-live-queue-call/schema.d.ts +27 -0
- package/dist/telephony-live-queue-call/schema.d.ts.map +1 -0
- package/dist/telephony-queue-call-count/schema.d.ts +51 -0
- package/dist/telephony-queue-call-count/schema.d.ts.map +1 -0
- package/dist/ticket/schema.d.ts +51 -0
- package/dist/ticket/schema.d.ts.map +1 -0
- package/dist/upload/schema.d.ts +30 -0
- package/dist/upload/schema.d.ts.map +1 -0
- package/dist/user/schema.d.ts +140 -0
- package/dist/user/schema.d.ts.map +1 -0
- package/dist/utils.d.ts +2 -2
- package/dist/widget/schema.d.ts +33 -0
- package/dist/widget/schema.d.ts.map +1 -0
- package/package.json +2 -3
- package/dist/src/channel/index.d.ts +0 -629
- package/dist/src/channel/schema.d.ts.map +0 -1
- package/dist/src/channel/validation.d.ts +0 -242
- package/dist/src/channel/validation.d.ts.map +0 -1
package/dist/index.mjs
CHANGED
@@ -32,7 +32,7 @@ var DefaultErrorResponseSchema = z.object({
|
|
32
32
|
var DefaultNotFoundSchema = DefaultErrorResponseSchema;
|
33
33
|
var DefaultUnprocessibleSchema = DefaultErrorResponseSchema;
|
34
34
|
var DefaultUnauthorizedSchema = DefaultErrorResponseSchema;
|
35
|
-
var
|
35
|
+
var DefaultResponses = {
|
36
36
|
401: DefaultUnauthorizedSchema,
|
37
37
|
404: DefaultNotFoundSchema,
|
38
38
|
422: DefaultUnprocessibleSchema
|
@@ -40,7 +40,7 @@ var defaultResponses = {
|
|
40
40
|
|
41
41
|
// src/attribute/schema.ts
|
42
42
|
import z2 from "zod";
|
43
|
-
var
|
43
|
+
var AttributeTypeSchema = z2.union([
|
44
44
|
z2.literal("text"),
|
45
45
|
z2.literal("textarea"),
|
46
46
|
z2.literal("date"),
|
@@ -48,44 +48,44 @@ var attributeTypeSchema = z2.union([
|
|
48
48
|
z2.literal("link"),
|
49
49
|
z2.literal("attachment")
|
50
50
|
]);
|
51
|
-
var
|
51
|
+
var AttributeOptionSchema = z2.object({
|
52
52
|
label: z2.string(),
|
53
53
|
value: z2.string(),
|
54
54
|
isDefault: z2.boolean(),
|
55
55
|
position: z2.number()
|
56
56
|
});
|
57
|
-
var
|
57
|
+
var AttributeGroupSchema = DefaultEntitySchema.extend({
|
58
58
|
systemName: z2.string(),
|
59
59
|
displayName: z2.string()
|
60
60
|
});
|
61
|
-
var
|
61
|
+
var AttributeSchema = DefaultEntitySchema.extend({
|
62
62
|
systemName: z2.string(),
|
63
|
-
type:
|
63
|
+
type: AttributeTypeSchema,
|
64
64
|
position: z2.number(),
|
65
65
|
isDefault: z2.boolean(),
|
66
66
|
isArchived: z2.boolean(),
|
67
67
|
isRequired: z2.boolean(),
|
68
68
|
isUnique: z2.boolean(),
|
69
|
-
options: z2.array(
|
70
|
-
group:
|
69
|
+
options: z2.array(AttributeOptionSchema),
|
70
|
+
group: AttributeGroupSchema
|
71
71
|
});
|
72
72
|
|
73
73
|
// src/attribute/validation.ts
|
74
74
|
import { z as z3 } from "zod";
|
75
|
-
var
|
75
|
+
var CreateAttributeSchema = z3.object({
|
76
76
|
name: z3.string(),
|
77
|
-
type:
|
77
|
+
type: AttributeTypeSchema,
|
78
78
|
isRequired: z3.boolean(),
|
79
79
|
isVisible: z3.boolean(),
|
80
80
|
group: z3.string(),
|
81
|
-
options: z3.array(
|
81
|
+
options: z3.array(AttributeOptionSchema)
|
82
82
|
});
|
83
|
-
var
|
83
|
+
var GetAttributesSchema = z3.object({
|
84
84
|
group: z3.string(),
|
85
85
|
visibleOnly: z3.boolean().default(false)
|
86
86
|
});
|
87
|
-
var
|
88
|
-
var
|
87
|
+
var UpdateAttributeSchema = CreateAttributeSchema;
|
88
|
+
var UpdatePositionSchema = z3.object({
|
89
89
|
attributes: z3.array(
|
90
90
|
z3.object({
|
91
91
|
// To update the attribute position, the backend need the IDs and the positions.
|
@@ -101,10 +101,10 @@ var attributeContract = initContract().router(
|
|
101
101
|
createAttribute: {
|
102
102
|
method: "POST",
|
103
103
|
path: "",
|
104
|
-
body:
|
104
|
+
body: CreateAttributeSchema,
|
105
105
|
responses: {
|
106
106
|
201: DefaultSuccessResponseSchema.extend({
|
107
|
-
attribute:
|
107
|
+
attribute: AttributeSchema
|
108
108
|
}),
|
109
109
|
500: DefaultErrorResponseSchema
|
110
110
|
},
|
@@ -113,10 +113,10 @@ var attributeContract = initContract().router(
|
|
113
113
|
getAttributes: {
|
114
114
|
method: "GET",
|
115
115
|
path: "",
|
116
|
-
query:
|
116
|
+
query: GetAttributesSchema,
|
117
117
|
responses: {
|
118
118
|
200: DefaultSuccessResponseSchema.extend({
|
119
|
-
attributes: z4.array(
|
119
|
+
attributes: z4.array(AttributeSchema)
|
120
120
|
}),
|
121
121
|
500: DefaultErrorResponseSchema
|
122
122
|
},
|
@@ -126,10 +126,10 @@ var attributeContract = initContract().router(
|
|
126
126
|
method: "PATCH",
|
127
127
|
path: "/:id",
|
128
128
|
pathParams: z4.object({ id: z4.string() }),
|
129
|
-
body:
|
129
|
+
body: UpdateAttributeSchema,
|
130
130
|
responses: {
|
131
131
|
200: DefaultSuccessResponseSchema.extend({
|
132
|
-
attribute:
|
132
|
+
attribute: AttributeSchema
|
133
133
|
}),
|
134
134
|
500: DefaultErrorResponseSchema
|
135
135
|
},
|
@@ -164,7 +164,7 @@ var attributeContract = initContract().router(
|
|
164
164
|
updatePosition: {
|
165
165
|
method: "PATCH",
|
166
166
|
path: "/position",
|
167
|
-
body:
|
167
|
+
body: UpdatePositionSchema,
|
168
168
|
responses: {
|
169
169
|
200: DefaultSuccessResponseSchema.extend({
|
170
170
|
message: z4.string().optional()
|
@@ -292,7 +292,7 @@ var authContract = initContract2().router(
|
|
292
292
|
},
|
293
293
|
getAuthUserRole: {
|
294
294
|
method: "GET",
|
295
|
-
path: "/
|
295
|
+
path: "/user/role",
|
296
296
|
headers: DefaultHeaderSchema,
|
297
297
|
responses: {
|
298
298
|
200: z8.array(z8.string()),
|
@@ -313,40 +313,40 @@ import z12 from "zod";
|
|
313
313
|
|
314
314
|
// utils.ts
|
315
315
|
import { z as z9 } from "zod";
|
316
|
-
var
|
316
|
+
var PaginationSchema = z9.object({
|
317
317
|
page: z9.number().default(1),
|
318
318
|
pageSize: z9.number().default(10),
|
319
319
|
total: z9.number(),
|
320
320
|
lastPage: z9.number().optional().nullable()
|
321
321
|
});
|
322
|
-
var
|
323
|
-
return
|
322
|
+
var WithPagination = (dataSchema) => {
|
323
|
+
return PaginationSchema.extend({
|
324
324
|
data: z9.array(dataSchema)
|
325
325
|
});
|
326
326
|
};
|
327
327
|
|
328
328
|
// src/category/schema.ts
|
329
329
|
import { z as z10 } from "zod";
|
330
|
-
var
|
330
|
+
var CategoryLevelSchema = z10.union([
|
331
331
|
z10.literal(1),
|
332
332
|
z10.literal(2),
|
333
333
|
z10.literal(3)
|
334
334
|
]);
|
335
|
-
var
|
335
|
+
var CategorySchema = DefaultEntitySchema.extend({
|
336
336
|
value: z10.string(),
|
337
|
-
level:
|
337
|
+
level: CategoryLevelSchema,
|
338
338
|
parentId: z10.string().nullable(),
|
339
339
|
childCategoryList: z10.array(
|
340
340
|
z10.object({
|
341
341
|
id: z10.string(),
|
342
342
|
value: z10.string(),
|
343
|
-
level:
|
343
|
+
level: CategoryLevelSchema,
|
344
344
|
parentId: z10.string().nullable(),
|
345
345
|
childCategoryList: z10.array(
|
346
346
|
z10.object({
|
347
347
|
id: z10.string(),
|
348
348
|
value: z10.string(),
|
349
|
-
level:
|
349
|
+
level: CategoryLevelSchema,
|
350
350
|
parentId: z10.string().nullable(),
|
351
351
|
childCategoryList: z10.array(z10.any())
|
352
352
|
// This is an empty array.
|
@@ -355,28 +355,28 @@ var categorySchema = DefaultEntitySchema.extend({
|
|
355
355
|
})
|
356
356
|
)
|
357
357
|
});
|
358
|
-
var
|
358
|
+
var CategoryLevelObjectSchema = z10.object({
|
359
359
|
id: z10.string(),
|
360
360
|
name: z10.string(),
|
361
|
-
level:
|
361
|
+
level: CategoryLevelSchema
|
362
362
|
});
|
363
363
|
|
364
364
|
// src/category/validation.ts
|
365
365
|
import { z as z11 } from "zod";
|
366
|
-
var
|
366
|
+
var CreateCategorySchema = z11.object({
|
367
367
|
value: z11.string(),
|
368
|
-
level:
|
368
|
+
level: CategoryLevelSchema,
|
369
369
|
parentId: z11.string().nullable()
|
370
370
|
});
|
371
|
-
var
|
372
|
-
var
|
371
|
+
var UpdateCategorySchema = z11.object({ value: z11.string() });
|
372
|
+
var CreateCategoryLevelSchema = z11.object({
|
373
373
|
name: z11.string(),
|
374
|
-
level:
|
374
|
+
level: CategoryLevelSchema
|
375
375
|
});
|
376
|
-
var
|
376
|
+
var UpdateCategoryLevelSchema = z11.object({
|
377
377
|
id: z11.string(),
|
378
378
|
name: z11.string(),
|
379
|
-
level:
|
379
|
+
level: CategoryLevelSchema
|
380
380
|
});
|
381
381
|
|
382
382
|
// src/category/index.ts
|
@@ -386,10 +386,10 @@ var categoryContract = initContract3().router(
|
|
386
386
|
method: "POST",
|
387
387
|
path: "",
|
388
388
|
headers: DefaultHeaderSchema,
|
389
|
-
body:
|
389
|
+
body: CreateCategorySchema,
|
390
390
|
responses: {
|
391
391
|
201: DefaultSuccessResponseSchema.extend({
|
392
|
-
category:
|
392
|
+
category: CategorySchema
|
393
393
|
}),
|
394
394
|
500: DefaultErrorResponseSchema
|
395
395
|
}
|
@@ -403,7 +403,7 @@ var categoryContract = initContract3().router(
|
|
403
403
|
}).optional(),
|
404
404
|
headers: DefaultHeaderSchema,
|
405
405
|
responses: {
|
406
|
-
200:
|
406
|
+
200: WithPagination(CategorySchema),
|
407
407
|
500: DefaultErrorResponseSchema
|
408
408
|
}
|
409
409
|
},
|
@@ -412,9 +412,9 @@ var categoryContract = initContract3().router(
|
|
412
412
|
path: "/:id",
|
413
413
|
pathParams: z12.object({ id: z12.string() }),
|
414
414
|
headers: DefaultHeaderSchema,
|
415
|
-
body:
|
415
|
+
body: UpdateCategorySchema,
|
416
416
|
responses: {
|
417
|
-
200: DefaultSuccessResponseSchema.extend({ category:
|
417
|
+
200: DefaultSuccessResponseSchema.extend({ category: CategorySchema }),
|
418
418
|
500: DefaultErrorResponseSchema
|
419
419
|
}
|
420
420
|
},
|
@@ -435,10 +435,10 @@ var categoryContract = initContract3().router(
|
|
435
435
|
method: "POST",
|
436
436
|
path: "/level",
|
437
437
|
headers: DefaultHeaderSchema,
|
438
|
-
body:
|
438
|
+
body: CreateCategoryLevelSchema,
|
439
439
|
responses: {
|
440
440
|
200: DefaultSuccessResponseSchema.extend({
|
441
|
-
categoryLevel:
|
441
|
+
categoryLevel: CategoryLevelObjectSchema
|
442
442
|
}),
|
443
443
|
500: DefaultErrorResponseSchema
|
444
444
|
}
|
@@ -448,10 +448,10 @@ var categoryContract = initContract3().router(
|
|
448
448
|
path: "/level/:id",
|
449
449
|
pathParams: z12.object({ id: z12.string() }),
|
450
450
|
headers: DefaultHeaderSchema,
|
451
|
-
body:
|
451
|
+
body: UpdateCategoryLevelSchema,
|
452
452
|
responses: {
|
453
453
|
200: DefaultSuccessResponseSchema.extend({
|
454
|
-
categoryLevel:
|
454
|
+
categoryLevel: CategoryLevelObjectSchema
|
455
455
|
}),
|
456
456
|
500: DefaultErrorResponseSchema
|
457
457
|
}
|
@@ -462,78 +462,304 @@ var categoryContract = initContract3().router(
|
|
462
462
|
}
|
463
463
|
);
|
464
464
|
|
465
|
-
// src/
|
465
|
+
// src/chat/index.ts
|
466
466
|
import { initContract as initContract4 } from "@ts-rest/core";
|
467
|
+
import z19 from "zod";
|
468
|
+
|
469
|
+
// src/chat/schema.ts
|
470
|
+
import z16 from "zod";
|
471
|
+
|
472
|
+
// src/contact/schema.ts
|
473
|
+
import z13 from "zod";
|
474
|
+
var ContactSchema = DefaultEntitySchema.extend({
|
475
|
+
name: z13.string(),
|
476
|
+
address: z13.string().nullable(),
|
477
|
+
channel: z13.string().nullable(),
|
478
|
+
notes: z13.string().nullable(),
|
479
|
+
contactNumber: z13.string().nullable(),
|
480
|
+
companyId: z13.string().nullable(),
|
481
|
+
contactProfile: z13.string().nullable(),
|
482
|
+
socialProfileUrl: z13.string().nullable()
|
483
|
+
});
|
484
|
+
|
485
|
+
// src/tag/schema.ts
|
486
|
+
import z14 from "zod";
|
487
|
+
var TagSchema = DefaultEntitySchema.extend({
|
488
|
+
name: z14.string()
|
489
|
+
});
|
490
|
+
var TagGroupSchema = z14.union([
|
491
|
+
z14.literal("general"),
|
492
|
+
z14.literal("contact")
|
493
|
+
]);
|
494
|
+
|
495
|
+
// src/upload/schema.ts
|
467
496
|
import z15 from "zod";
|
497
|
+
var UploadSchema = DefaultEntitySchema.extend({
|
498
|
+
bucketName: z15.string(),
|
499
|
+
fileName: z15.string(),
|
500
|
+
fileSize: z15.number(),
|
501
|
+
fileKey: z15.string()
|
502
|
+
});
|
503
|
+
|
504
|
+
// src/chat/schema.ts
|
505
|
+
var ChannelTypeEnumSchema = z16.union([
|
506
|
+
z16.literal("messenger"),
|
507
|
+
z16.literal("line"),
|
508
|
+
z16.literal("viber"),
|
509
|
+
z16.literal("lazada"),
|
510
|
+
z16.literal("shopee"),
|
511
|
+
z16.literal("whatsapp"),
|
512
|
+
z16.literal("telegram"),
|
513
|
+
z16.literal("kakao")
|
514
|
+
]);
|
515
|
+
var DirectionEnumSchema = z16.union([
|
516
|
+
z16.literal("incoming"),
|
517
|
+
z16.literal("outgoing")
|
518
|
+
]);
|
519
|
+
var ChannelStatusEnumSchema = z16.union([
|
520
|
+
z16.literal(1),
|
521
|
+
// on
|
522
|
+
z16.literal(0)
|
523
|
+
// off
|
524
|
+
]);
|
525
|
+
var MessageTypeEnumSchema = z16.union([
|
526
|
+
z16.literal("text"),
|
527
|
+
z16.literal("image"),
|
528
|
+
z16.literal("video"),
|
529
|
+
z16.literal("audio"),
|
530
|
+
z16.literal("file"),
|
531
|
+
z16.literal("fallback"),
|
532
|
+
z16.literal("location"),
|
533
|
+
z16.literal("attachment"),
|
534
|
+
z16.literal("assign"),
|
535
|
+
z16.literal("solve"),
|
536
|
+
z16.literal("reopen"),
|
537
|
+
z16.literal("open"),
|
538
|
+
z16.literal("sticker"),
|
539
|
+
z16.literal("closed"),
|
540
|
+
z16.literal("handed_over"),
|
541
|
+
z16.literal("updated"),
|
542
|
+
z16.literal("started")
|
543
|
+
]);
|
544
|
+
var MessageLocaleEnumSchema = z16.union([
|
545
|
+
z16.literal("mm"),
|
546
|
+
z16.literal("en"),
|
547
|
+
z16.literal("th")
|
548
|
+
]);
|
549
|
+
var ChannelMetadataSchema = z16.object({
|
550
|
+
id: z16.string(),
|
551
|
+
name: z16.string(),
|
552
|
+
accessToken: z16.string(),
|
553
|
+
additionalCredentials: z16.any()
|
554
|
+
});
|
555
|
+
var ChannelSchema = DefaultEntitySchema.extend({
|
556
|
+
name: z16.string(),
|
557
|
+
type: ChannelTypeEnumSchema,
|
558
|
+
metadata: ChannelMetadataSchema,
|
559
|
+
brandName: z16.string(),
|
560
|
+
platformId: z16.string().uuid(),
|
561
|
+
status: ChannelStatusEnumSchema,
|
562
|
+
isReloginRequired: z16.boolean(),
|
563
|
+
connectedUserName: z16.string(),
|
564
|
+
connectedUserId: z16.string(),
|
565
|
+
actor: UserSchema
|
566
|
+
}).partial().optional();
|
567
|
+
var PlatformContactMetadataSchema = z16.object({
|
568
|
+
id: z16.string(),
|
569
|
+
name: z16.string(),
|
570
|
+
additionalCredentials: z16.any()
|
571
|
+
});
|
572
|
+
var PlatformContactSchema = DefaultEntitySchema.extend({
|
573
|
+
channelId: z16.string().uuid(),
|
574
|
+
socialPlatformId: z16.string().uuid(),
|
575
|
+
platform: ChannelTypeEnumSchema,
|
576
|
+
metadata: PlatformContactMetadataSchema,
|
577
|
+
contact: ContactSchema
|
578
|
+
});
|
579
|
+
var RoomSchema = DefaultEntitySchema.extend({
|
580
|
+
lastMessage: z16.string(),
|
581
|
+
handleTime: z16.number(),
|
582
|
+
isSolved: z16.boolean(),
|
583
|
+
notes: z16.string(),
|
584
|
+
closeAt: z16.date(),
|
585
|
+
unreadCount: z16.number(),
|
586
|
+
firstResponseTime: z16.date(),
|
587
|
+
isLatest: z16.boolean(),
|
588
|
+
direction: DirectionEnumSchema,
|
589
|
+
platformContact: PlatformContactSchema,
|
590
|
+
actor: UserSchema,
|
591
|
+
assignee: UserSchema,
|
592
|
+
channel: ChannelSchema,
|
593
|
+
tags: z16.array(TagSchema)
|
594
|
+
});
|
595
|
+
var MessageSchema = DefaultEntitySchema.extend({
|
596
|
+
message: z16.string(),
|
597
|
+
direction: DirectionEnumSchema,
|
598
|
+
type: MessageTypeEnumSchema,
|
599
|
+
user: UserSchema,
|
600
|
+
readAt: z16.date(),
|
601
|
+
metadata: z16.any(),
|
602
|
+
platformId: z16.string(),
|
603
|
+
replyPlatformMessageId: z16.string(),
|
604
|
+
platformMessageId: z16.string(),
|
605
|
+
upload: UploadSchema,
|
606
|
+
template: z16.any(),
|
607
|
+
locale: MessageLocaleEnumSchema,
|
608
|
+
isSent: z16.boolean()
|
609
|
+
});
|
610
|
+
var UnreadCountsByAssigneeSchema = z16.object({
|
611
|
+
assigneeId: z16.string(),
|
612
|
+
totalUnreadCount: z16.number()
|
613
|
+
});
|
614
|
+
|
615
|
+
// src/chat/validation.ts
|
616
|
+
import z18 from "zod";
|
617
|
+
|
618
|
+
// src/custom-field/schema.ts
|
619
|
+
import z17 from "zod";
|
620
|
+
var CustomFieldSchema = DefaultEntitySchema.extend({
|
621
|
+
textValue: z17.string().nullable(),
|
622
|
+
booleanValue: z17.boolean().nullable(),
|
623
|
+
numberValue: z17.number().nullable(),
|
624
|
+
dateValue: z17.date().nullable(),
|
625
|
+
entityId: z17.string().uuid(),
|
626
|
+
attributeId: z17.string().uuid()
|
627
|
+
});
|
628
|
+
|
629
|
+
// src/chat/validation.ts
|
630
|
+
var ConnectChannelSchema = z18.object({
|
631
|
+
name: z18.string(),
|
632
|
+
type: ChannelTypeEnumSchema,
|
633
|
+
metadata: ChannelMetadataSchema,
|
634
|
+
brandName: z18.string(),
|
635
|
+
connectedUserName: z18.string(),
|
636
|
+
connectedUserId: z18.string(),
|
637
|
+
actor: UserSchema
|
638
|
+
}).partial().optional();
|
639
|
+
var GetRoomsSchema = DefaultQueryParamsSchema.extend({
|
640
|
+
contactTagIds: z18.string().array().nullable().default([]),
|
641
|
+
contactIds: z18.string().array().nullable().default([]),
|
642
|
+
agentIds: z18.string().array().nullable().default([]),
|
643
|
+
roomStatusTagIds: z18.string().array().nullable().default([]),
|
644
|
+
keyword: z18.string().nullable(),
|
645
|
+
company: z18.string().array().nullable().default([]),
|
646
|
+
name: z18.string().nullable(),
|
647
|
+
address: z18.string().nullable(),
|
648
|
+
contactGroups: z18.string().array().nullable().default([]),
|
649
|
+
selectedDate: z18.string().nullable(),
|
650
|
+
customFields: CustomFieldSchema,
|
651
|
+
tags: z18.string().array().nullable().default([]),
|
652
|
+
phone: z18.string().nullable(),
|
653
|
+
email: z18.string().nullable(),
|
654
|
+
notes: z18.string().nullable(),
|
655
|
+
tab: z18.string().nullable()
|
656
|
+
}).partial().optional();
|
657
|
+
|
658
|
+
// src/chat/index.ts
|
659
|
+
var chatContract = initContract4().router({
|
660
|
+
connectChannel: {
|
661
|
+
method: "POST",
|
662
|
+
path: "connect",
|
663
|
+
headers: DefaultHeaderSchema,
|
664
|
+
responses: {
|
665
|
+
200: DefaultSuccessResponseSchema.extend({
|
666
|
+
channel: ChannelSchema
|
667
|
+
})
|
668
|
+
},
|
669
|
+
body: ConnectChannelSchema,
|
670
|
+
summary: "Connect message channel"
|
671
|
+
},
|
672
|
+
getRooms: {
|
673
|
+
method: "GET",
|
674
|
+
path: "/rooms",
|
675
|
+
responses: {
|
676
|
+
200: DefaultSuccessResponseSchema.extend({
|
677
|
+
total: z19.number(),
|
678
|
+
page: z19.number(),
|
679
|
+
pageSize: z19.number(),
|
680
|
+
data: z19.array(RoomSchema),
|
681
|
+
unreadCountsByAssignee: z19.array(UnreadCountsByAssigneeSchema)
|
682
|
+
}),
|
683
|
+
401: DefaultUnauthorizedSchema
|
684
|
+
},
|
685
|
+
headers: DefaultHeaderSchema,
|
686
|
+
query: GetRoomsSchema,
|
687
|
+
summary: "Get rooms"
|
688
|
+
}
|
689
|
+
});
|
690
|
+
|
691
|
+
// src/cx-log/index.ts
|
692
|
+
import { initContract as initContract5 } from "@ts-rest/core";
|
693
|
+
import z22 from "zod";
|
468
694
|
|
469
695
|
// src/cx-log/schema.ts
|
470
|
-
import
|
696
|
+
import z20 from "zod";
|
471
697
|
var CxLogSchema = DefaultEntitySchema.extend({
|
472
|
-
caseId:
|
473
|
-
entityId:
|
474
|
-
entityName:
|
475
|
-
contactId:
|
476
|
-
channel:
|
477
|
-
queueId:
|
478
|
-
agentId:
|
479
|
-
direction:
|
480
|
-
startedDate:
|
481
|
-
handledTime:
|
482
|
-
firstResponseTime:
|
483
|
-
disposition:
|
698
|
+
caseId: z20.number(),
|
699
|
+
entityId: z20.string().uuid(),
|
700
|
+
entityName: z20.string(),
|
701
|
+
contactId: z20.string().uuid().nullable(),
|
702
|
+
channel: z20.string().nullable(),
|
703
|
+
queueId: z20.string().uuid().nullable(),
|
704
|
+
agentId: z20.string().uuid().nullable(),
|
705
|
+
direction: z20.string().nullable(),
|
706
|
+
startedDate: z20.date().nullable(),
|
707
|
+
handledTime: z20.number().nullable(),
|
708
|
+
firstResponseTime: z20.number().nullable(),
|
709
|
+
disposition: z20.string().nullable()
|
484
710
|
});
|
485
711
|
|
486
712
|
// src/cx-log/validation.ts
|
487
|
-
import
|
488
|
-
var sentimentScoreSchema =
|
489
|
-
|
490
|
-
|
713
|
+
import z21 from "zod";
|
714
|
+
var sentimentScoreSchema = z21.union([
|
715
|
+
z21.literal("positive"),
|
716
|
+
z21.literal("negative")
|
491
717
|
]);
|
492
|
-
var CustomFieldQueryParamsSchema =
|
493
|
-
attributeId:
|
494
|
-
value:
|
495
|
-
type:
|
718
|
+
var CustomFieldQueryParamsSchema = z21.object({
|
719
|
+
attributeId: z21.string(),
|
720
|
+
value: z21.union([z21.string(), z21.array(z21.string())]),
|
721
|
+
type: z21.string().optional()
|
496
722
|
});
|
497
723
|
var GetAllCxLogQueryParamsSchema = DefaultQueryParamsSchema.extend({
|
498
|
-
contactId:
|
499
|
-
caseId:
|
500
|
-
channelIds:
|
501
|
-
queueId:
|
502
|
-
agentIds:
|
503
|
-
direction:
|
504
|
-
disposition:
|
505
|
-
sentimentScore:
|
506
|
-
csatScore:
|
507
|
-
sla:
|
508
|
-
tags:
|
724
|
+
contactId: z21.string().uuid(),
|
725
|
+
caseId: z21.string(),
|
726
|
+
channelIds: z21.array(z21.string().uuid()),
|
727
|
+
queueId: z21.array(z21.string()),
|
728
|
+
agentIds: z21.array(z21.string()),
|
729
|
+
direction: z21.array(z21.union([z21.literal("inbound"), z21.literal("outbound")])),
|
730
|
+
disposition: z21.array(z21.string()),
|
731
|
+
sentimentScore: z21.array(sentimentScoreSchema),
|
732
|
+
csatScore: z21.string(),
|
733
|
+
sla: z21.array(z21.union([z21.literal("meet"), z21.literal("unmeet")])),
|
734
|
+
tags: z21.array(z21.string()),
|
509
735
|
// General tags
|
510
736
|
// Default contact attributes
|
511
|
-
name:
|
512
|
-
contactLabels:
|
513
|
-
email:
|
514
|
-
channel:
|
515
|
-
phone:
|
516
|
-
notes:
|
517
|
-
address:
|
518
|
-
company:
|
737
|
+
name: z21.string(),
|
738
|
+
contactLabels: z21.array(z21.string()),
|
739
|
+
email: z21.string(),
|
740
|
+
channel: z21.array(z21.string()),
|
741
|
+
phone: z21.string(),
|
742
|
+
notes: z21.string(),
|
743
|
+
address: z21.string(),
|
744
|
+
company: z21.array(z21.string()),
|
519
745
|
// Custom fields
|
520
|
-
customFields:
|
746
|
+
customFields: z21.array(CustomFieldQueryParamsSchema),
|
521
747
|
// Date filter
|
522
|
-
selectedDate:
|
748
|
+
selectedDate: z21.string()
|
523
749
|
}).partial().optional();
|
524
750
|
|
525
751
|
// src/cx-log/index.ts
|
526
|
-
var cxLogContract =
|
752
|
+
var cxLogContract = initContract5().router({
|
527
753
|
findAll: {
|
528
754
|
method: "GET",
|
529
755
|
path: "/cx-logs",
|
530
756
|
headers: DefaultHeaderSchema,
|
531
757
|
responses: {
|
532
758
|
200: DefaultSuccessResponseSchema.extend({
|
533
|
-
total:
|
534
|
-
page:
|
535
|
-
pageSize:
|
536
|
-
cxLogs:
|
759
|
+
total: z22.number(),
|
760
|
+
page: z22.number(),
|
761
|
+
pageSize: z22.number(),
|
762
|
+
cxLogs: z22.array(CxLogSchema)
|
537
763
|
}),
|
538
764
|
401: DefaultUnauthorizedSchema
|
539
765
|
},
|
@@ -543,33 +769,33 @@ var cxLogContract = initContract4().router({
|
|
543
769
|
});
|
544
770
|
|
545
771
|
// src/line/index.ts
|
546
|
-
import { initContract as
|
547
|
-
import
|
772
|
+
import { initContract as initContract6 } from "@ts-rest/core";
|
773
|
+
import z25 from "zod";
|
548
774
|
|
549
775
|
// src/line/schema.ts
|
550
|
-
import
|
551
|
-
var ConnectLineSchema =
|
552
|
-
id:
|
553
|
-
accessToken:
|
776
|
+
import z23 from "zod";
|
777
|
+
var ConnectLineSchema = z23.object({
|
778
|
+
id: z23.string(),
|
779
|
+
accessToken: z23.string()
|
554
780
|
});
|
555
781
|
|
556
782
|
// src/line/validation.ts
|
557
|
-
import
|
558
|
-
var SendLineStickerSchema =
|
559
|
-
userId:
|
560
|
-
packageId:
|
561
|
-
stickerId:
|
562
|
-
accessToken:
|
783
|
+
import z24 from "zod";
|
784
|
+
var SendLineStickerSchema = z24.object({
|
785
|
+
userId: z24.string().uuid(),
|
786
|
+
packageId: z24.string(),
|
787
|
+
stickerId: z24.string(),
|
788
|
+
accessToken: z24.string()
|
563
789
|
});
|
564
790
|
|
565
791
|
// src/line/index.ts
|
566
|
-
var lineContract =
|
792
|
+
var lineContract = initContract6().router({
|
567
793
|
sendSticker: {
|
568
794
|
method: "POST",
|
569
795
|
path: "sticker",
|
570
796
|
responses: {
|
571
797
|
200: DefaultSuccessResponseSchema.extend({
|
572
|
-
data:
|
798
|
+
data: z25.any()
|
573
799
|
}),
|
574
800
|
500: DefaultErrorResponseSchema
|
575
801
|
},
|
@@ -581,7 +807,7 @@ var lineContract = initContract5().router({
|
|
581
807
|
path: "connect",
|
582
808
|
responses: {
|
583
809
|
200: DefaultSuccessResponseSchema.extend({
|
584
|
-
data:
|
810
|
+
data: z25.any()
|
585
811
|
}),
|
586
812
|
500: DefaultErrorResponseSchema
|
587
813
|
},
|
@@ -591,16 +817,16 @@ var lineContract = initContract5().router({
|
|
591
817
|
});
|
592
818
|
|
593
819
|
// src/mail/email-engine-webhooks-events.contract.ts
|
594
|
-
import { initContract as
|
595
|
-
import
|
596
|
-
var emailEngineWebhooksEventsContract =
|
820
|
+
import { initContract as initContract7 } from "@ts-rest/core";
|
821
|
+
import z26 from "zod";
|
822
|
+
var emailEngineWebhooksEventsContract = initContract7().router({
|
597
823
|
handleWebhooksEvents: {
|
598
824
|
method: "POST",
|
599
825
|
path: "/email_engine/webhooks",
|
600
826
|
// we don't need to respone anything but added responses just for solving type error
|
601
827
|
responses: {
|
602
828
|
200: DefaultSuccessResponseSchema.extend({
|
603
|
-
message:
|
829
|
+
message: z26.string()
|
604
830
|
})
|
605
831
|
},
|
606
832
|
body: null,
|
@@ -609,230 +835,96 @@ var emailEngineWebhooksEventsContract = initContract6().router({
|
|
609
835
|
});
|
610
836
|
|
611
837
|
// src/mail/mail-contract.ts
|
612
|
-
import { initContract as
|
613
|
-
|
614
|
-
// src/mail/room-contract.ts
|
615
|
-
import { initContract as initContract7 } from "@ts-rest/core";
|
616
|
-
import z20 from "zod";
|
617
|
-
var roomContract = initContract7().router(
|
618
|
-
{
|
619
|
-
create: {
|
620
|
-
method: "POST",
|
621
|
-
path: "/",
|
622
|
-
responses: {
|
623
|
-
200: DefaultSuccessResponseSchema.extend({
|
624
|
-
message: z20.string()
|
625
|
-
}),
|
626
|
-
...defaultResponses
|
627
|
-
},
|
628
|
-
body: null,
|
629
|
-
summary: "Create a new room for new incoming mail"
|
630
|
-
},
|
631
|
-
get: {
|
632
|
-
method: "GET",
|
633
|
-
path: "/:id",
|
634
|
-
pathParams: z20.object({
|
635
|
-
id: z20.string()
|
636
|
-
}),
|
637
|
-
responses: {
|
638
|
-
200: DefaultSuccessResponseSchema.extend({
|
639
|
-
message: z20.string()
|
640
|
-
}),
|
641
|
-
...defaultResponses
|
642
|
-
},
|
643
|
-
summary: "Get a mail room by id"
|
644
|
-
},
|
645
|
-
update: {
|
646
|
-
method: "PATCH",
|
647
|
-
path: "/:id",
|
648
|
-
pathParams: z20.object({
|
649
|
-
id: z20.string()
|
650
|
-
}),
|
651
|
-
responses: {
|
652
|
-
200: DefaultSuccessResponseSchema.extend({
|
653
|
-
message: z20.string()
|
654
|
-
}),
|
655
|
-
...defaultResponses
|
656
|
-
},
|
657
|
-
body: null,
|
658
|
-
summary: "Update a mail room by id"
|
659
|
-
},
|
660
|
-
delete: {
|
661
|
-
method: "PATCH",
|
662
|
-
path: "/:id",
|
663
|
-
pathParams: z20.object({
|
664
|
-
id: z20.string()
|
665
|
-
}),
|
666
|
-
responses: {
|
667
|
-
200: DefaultSuccessResponseSchema.extend({
|
668
|
-
message: z20.string()
|
669
|
-
}),
|
670
|
-
...defaultResponses
|
671
|
-
},
|
672
|
-
body: null,
|
673
|
-
summary: "Delete a mail room by id"
|
674
|
-
}
|
675
|
-
},
|
676
|
-
{
|
677
|
-
pathPrefix: "/room"
|
678
|
-
}
|
679
|
-
);
|
680
|
-
|
681
|
-
// src/mail/message-contract.ts
|
682
|
-
import { initContract as initContract8 } from "@ts-rest/core";
|
683
|
-
import z21 from "zod";
|
684
|
-
var messageContract = initContract8().router(
|
685
|
-
{
|
686
|
-
create: {
|
687
|
-
method: "POST",
|
688
|
-
path: "/",
|
689
|
-
responses: {
|
690
|
-
200: DefaultSuccessResponseSchema.extend({
|
691
|
-
message: z21.string()
|
692
|
-
}),
|
693
|
-
...defaultResponses
|
694
|
-
},
|
695
|
-
body: null,
|
696
|
-
summary: "Add a new message into a room"
|
697
|
-
},
|
698
|
-
get: {
|
699
|
-
method: "GET",
|
700
|
-
path: "/:id",
|
701
|
-
pathParams: z21.object({
|
702
|
-
id: z21.string()
|
703
|
-
}),
|
704
|
-
responses: {
|
705
|
-
200: DefaultSuccessResponseSchema.extend({
|
706
|
-
message: z21.string()
|
707
|
-
}),
|
708
|
-
...defaultResponses
|
709
|
-
},
|
710
|
-
summary: "Get a message by id"
|
711
|
-
},
|
712
|
-
update: {
|
713
|
-
method: "PATCH",
|
714
|
-
path: "/:id",
|
715
|
-
pathParams: z21.object({
|
716
|
-
id: z21.string()
|
717
|
-
}),
|
718
|
-
responses: {
|
719
|
-
200: DefaultSuccessResponseSchema.extend({
|
720
|
-
message: z21.string()
|
721
|
-
}),
|
722
|
-
...defaultResponses
|
723
|
-
},
|
724
|
-
body: null,
|
725
|
-
summary: "Update a message by id"
|
726
|
-
},
|
727
|
-
delete: {
|
728
|
-
method: "PATCH",
|
729
|
-
path: "/:id",
|
730
|
-
pathParams: z21.object({
|
731
|
-
id: z21.string()
|
732
|
-
}),
|
733
|
-
responses: {
|
734
|
-
200: DefaultSuccessResponseSchema.extend({
|
735
|
-
message: z21.string()
|
736
|
-
}),
|
737
|
-
...defaultResponses
|
738
|
-
},
|
739
|
-
body: null,
|
740
|
-
summary: "Delete a message by id"
|
741
|
-
}
|
742
|
-
},
|
743
|
-
{
|
744
|
-
pathPrefix: "/message"
|
745
|
-
}
|
746
|
-
);
|
838
|
+
import { initContract as initContract12 } from "@ts-rest/core";
|
747
839
|
|
748
840
|
// src/mail/account-contract.ts
|
749
|
-
import { initContract as
|
750
|
-
import
|
841
|
+
import { initContract as initContract8 } from "@ts-rest/core";
|
842
|
+
import z28 from "zod";
|
751
843
|
|
752
844
|
// src/mail/schemas/account.schema.ts
|
753
|
-
import
|
754
|
-
var
|
755
|
-
id:
|
756
|
-
created_at:
|
757
|
-
|
758
|
-
|
759
|
-
tenant_id:
|
760
|
-
name:
|
761
|
-
smtpHost:
|
762
|
-
smtpPort:
|
763
|
-
smtpTlsPort:
|
764
|
-
useTlsForSmtp:
|
765
|
-
imapHost:
|
766
|
-
imapPort:
|
767
|
-
imapTlsPort:
|
768
|
-
useTlsForImap:
|
845
|
+
import z27 from "zod";
|
846
|
+
var MailServerSchema = z27.object({
|
847
|
+
id: z27.string(),
|
848
|
+
created_at: z27.string(),
|
849
|
+
updated_att: z27.string(),
|
850
|
+
deleted_at: z27.string().nullable(),
|
851
|
+
tenant_id: z27.string(),
|
852
|
+
name: z27.string(),
|
853
|
+
smtpHost: z27.string(),
|
854
|
+
smtpPort: z27.string(),
|
855
|
+
smtpTlsPort: z27.string(),
|
856
|
+
useTlsForSmtp: z27.boolean(),
|
857
|
+
imapHost: z27.string(),
|
858
|
+
imapPort: z27.string(),
|
859
|
+
imapTlsPort: z27.string(),
|
860
|
+
useTlsForImap: z27.boolean()
|
769
861
|
});
|
770
|
-
var
|
771
|
-
id:
|
772
|
-
created_at:
|
773
|
-
updated_at:
|
774
|
-
|
775
|
-
tenant_id:
|
776
|
-
name:
|
777
|
-
address:
|
778
|
-
accountId:
|
779
|
-
mailServerId:
|
780
|
-
mailServer:
|
781
|
-
state:
|
782
|
-
|
783
|
-
|
784
|
-
|
785
|
-
|
786
|
-
|
787
|
-
|
788
|
-
|
789
|
-
|
862
|
+
var MailAccountSchema = z27.object({
|
863
|
+
id: z27.string(),
|
864
|
+
created_at: z27.string(),
|
865
|
+
updated_at: z27.string(),
|
866
|
+
deleted_at: z27.date().nullable(),
|
867
|
+
tenant_id: z27.string(),
|
868
|
+
name: z27.string(),
|
869
|
+
address: z27.string(),
|
870
|
+
accountId: z27.string(),
|
871
|
+
mailServerId: z27.string(),
|
872
|
+
mailServer: MailServerSchema,
|
873
|
+
state: z27.union([
|
874
|
+
z27.literal("init"),
|
875
|
+
z27.literal("syncing"),
|
876
|
+
z27.literal("connecting"),
|
877
|
+
z27.literal("connected"),
|
878
|
+
z27.literal("disconnected"),
|
879
|
+
z27.literal("authenticationError"),
|
880
|
+
z27.literal("connectError"),
|
881
|
+
z27.literal("unset")
|
790
882
|
])
|
791
883
|
});
|
792
|
-
var
|
884
|
+
var AccountContractsSchemas = {
|
793
885
|
create: {
|
794
|
-
input:
|
795
|
-
address:
|
796
|
-
name:
|
797
|
-
password:
|
798
|
-
mailServerId:
|
886
|
+
input: z27.object({
|
887
|
+
address: z27.string().email("Email address must be valid email."),
|
888
|
+
name: z27.string().min(1, "Account name cannot be empty."),
|
889
|
+
password: z27.string().min(1, "Password cannot be empty."),
|
890
|
+
mailServerId: z27.string().uuid("Invalid mail_server_id")
|
799
891
|
})
|
800
892
|
},
|
801
893
|
getById: {
|
802
|
-
input:
|
803
|
-
id:
|
894
|
+
input: z27.object({
|
895
|
+
id: z27.string().uuid()
|
804
896
|
}),
|
805
|
-
output:
|
897
|
+
output: MailAccountSchema
|
806
898
|
},
|
807
899
|
getAll: {
|
808
|
-
output:
|
900
|
+
output: z27.array(MailAccountSchema)
|
809
901
|
},
|
810
902
|
update: {
|
811
|
-
input:
|
812
|
-
output:
|
903
|
+
input: MailAccountSchema,
|
904
|
+
output: MailAccountSchema
|
813
905
|
},
|
814
906
|
disconnect: {
|
815
|
-
input:
|
816
|
-
id:
|
907
|
+
input: z27.object({
|
908
|
+
id: z27.string().uuid()
|
817
909
|
}),
|
818
|
-
output:
|
910
|
+
output: MailAccountSchema
|
819
911
|
},
|
820
912
|
reconnect: {
|
821
|
-
input:
|
822
|
-
id:
|
913
|
+
input: z27.object({
|
914
|
+
id: z27.string()
|
823
915
|
}),
|
824
|
-
output:
|
916
|
+
output: MailAccountSchema
|
825
917
|
},
|
826
918
|
delete: {
|
827
|
-
input:
|
828
|
-
id:
|
919
|
+
input: z27.object({
|
920
|
+
id: z27.string()
|
829
921
|
}),
|
830
|
-
output:
|
922
|
+
output: MailAccountSchema
|
831
923
|
}
|
832
924
|
};
|
833
925
|
|
834
926
|
// src/mail/account-contract.ts
|
835
|
-
var accountContract =
|
927
|
+
var accountContract = initContract8().router(
|
836
928
|
{
|
837
929
|
//#region ........register account
|
838
930
|
create: {
|
@@ -840,21 +932,21 @@ var accountContract = initContract9().router(
|
|
840
932
|
path: "",
|
841
933
|
responses: {
|
842
934
|
201: DefaultSuccessResponseSchema.extend({
|
843
|
-
// data:
|
844
|
-
message:
|
935
|
+
// data: AccountContractsSchemas.create.output,
|
936
|
+
message: z28.string()
|
845
937
|
}),
|
846
|
-
400:
|
847
|
-
message:
|
938
|
+
400: z28.object({
|
939
|
+
message: z28.string()
|
848
940
|
}),
|
849
|
-
409:
|
850
|
-
message:
|
941
|
+
409: z28.object({
|
942
|
+
message: z28.string()
|
851
943
|
}),
|
852
|
-
500:
|
853
|
-
message:
|
944
|
+
500: z28.object({
|
945
|
+
message: z28.string()
|
854
946
|
}),
|
855
|
-
...
|
947
|
+
...DefaultResponses
|
856
948
|
},
|
857
|
-
body:
|
949
|
+
body: AccountContractsSchemas.create.input,
|
858
950
|
summary: "Register a new mail account"
|
859
951
|
},
|
860
952
|
//#endregion register account
|
@@ -862,12 +954,12 @@ var accountContract = initContract9().router(
|
|
862
954
|
getById: {
|
863
955
|
method: "GET",
|
864
956
|
path: "/:id",
|
865
|
-
pathParams:
|
957
|
+
pathParams: AccountContractsSchemas.getById.input,
|
866
958
|
responses: {
|
867
959
|
200: DefaultSuccessResponseSchema.extend({
|
868
|
-
data:
|
960
|
+
data: AccountContractsSchemas.getById.output
|
869
961
|
}),
|
870
|
-
...
|
962
|
+
...DefaultResponses
|
871
963
|
},
|
872
964
|
summary: "Get a account by id"
|
873
965
|
},
|
@@ -879,10 +971,10 @@ var accountContract = initContract9().router(
|
|
879
971
|
path: "",
|
880
972
|
responses: {
|
881
973
|
200: DefaultSuccessResponseSchema.extend({
|
882
|
-
data:
|
883
|
-
// data:
|
974
|
+
data: z28.any()
|
975
|
+
// data: AccountContractsSchemas.getAll.output,
|
884
976
|
}),
|
885
|
-
...
|
977
|
+
...DefaultResponses
|
886
978
|
},
|
887
979
|
summary: "Get al accounts"
|
888
980
|
},
|
@@ -891,16 +983,16 @@ var accountContract = initContract9().router(
|
|
891
983
|
update: {
|
892
984
|
method: "PATCH",
|
893
985
|
path: "/:id",
|
894
|
-
pathParams:
|
895
|
-
id:
|
986
|
+
pathParams: z28.object({
|
987
|
+
id: z28.string().uuid()
|
896
988
|
}),
|
897
989
|
responses: {
|
898
990
|
201: DefaultSuccessResponseSchema.extend({
|
899
|
-
data:
|
991
|
+
data: AccountContractsSchemas.update.output
|
900
992
|
}),
|
901
|
-
...
|
993
|
+
...DefaultResponses
|
902
994
|
},
|
903
|
-
body:
|
995
|
+
body: AccountContractsSchemas.update.input.partial(),
|
904
996
|
summary: "Update a account by id"
|
905
997
|
},
|
906
998
|
//#endregion update account
|
@@ -908,12 +1000,12 @@ var accountContract = initContract9().router(
|
|
908
1000
|
disconnect: {
|
909
1001
|
method: "PATCH",
|
910
1002
|
path: "/:id/disconnect",
|
911
|
-
pathParams:
|
1003
|
+
pathParams: AccountContractsSchemas.disconnect.input,
|
912
1004
|
responses: {
|
913
1005
|
201: DefaultSuccessResponseSchema.extend({
|
914
|
-
data:
|
1006
|
+
data: AccountContractsSchemas.disconnect.output
|
915
1007
|
}),
|
916
|
-
...
|
1008
|
+
...DefaultResponses
|
917
1009
|
},
|
918
1010
|
body: null,
|
919
1011
|
summary: "Disconnect an account"
|
@@ -923,12 +1015,12 @@ var accountContract = initContract9().router(
|
|
923
1015
|
reconnect: {
|
924
1016
|
method: "PATCH",
|
925
1017
|
path: "/:id/reconnect",
|
926
|
-
pathParams:
|
1018
|
+
pathParams: AccountContractsSchemas.reconnect.input,
|
927
1019
|
responses: {
|
928
1020
|
201: DefaultSuccessResponseSchema.extend({
|
929
|
-
data:
|
1021
|
+
data: AccountContractsSchemas.reconnect.output
|
930
1022
|
}),
|
931
|
-
...
|
1023
|
+
...DefaultResponses
|
932
1024
|
},
|
933
1025
|
body: null,
|
934
1026
|
summary: "Reconnect a disconncted account"
|
@@ -938,12 +1030,12 @@ var accountContract = initContract9().router(
|
|
938
1030
|
delete: {
|
939
1031
|
method: "DELETE",
|
940
1032
|
path: "/:id",
|
941
|
-
pathParams:
|
1033
|
+
pathParams: AccountContractsSchemas.delete.input,
|
942
1034
|
responses: {
|
943
1035
|
200: DefaultSuccessResponseSchema.extend({
|
944
|
-
message:
|
1036
|
+
message: z28.string()
|
945
1037
|
}),
|
946
|
-
...
|
1038
|
+
...DefaultResponses
|
947
1039
|
},
|
948
1040
|
body: null,
|
949
1041
|
summary: "Delete an account by id"
|
@@ -957,18 +1049,18 @@ var accountContract = initContract9().router(
|
|
957
1049
|
);
|
958
1050
|
|
959
1051
|
// src/mail/mail-server.ts
|
960
|
-
import { initContract as
|
961
|
-
import
|
962
|
-
var serverContract =
|
1052
|
+
import { initContract as initContract9 } from "@ts-rest/core";
|
1053
|
+
import z29 from "zod";
|
1054
|
+
var serverContract = initContract9().router(
|
963
1055
|
{
|
964
1056
|
create: {
|
965
1057
|
method: "POST",
|
966
1058
|
path: "/",
|
967
1059
|
responses: {
|
968
1060
|
200: DefaultSuccessResponseSchema.extend({
|
969
|
-
message:
|
1061
|
+
message: z29.string()
|
970
1062
|
}),
|
971
|
-
...
|
1063
|
+
...DefaultResponses
|
972
1064
|
},
|
973
1065
|
body: null,
|
974
1066
|
summary: "Register a new mail server"
|
@@ -976,28 +1068,28 @@ var serverContract = initContract10().router(
|
|
976
1068
|
get: {
|
977
1069
|
method: "GET",
|
978
1070
|
path: "/:id",
|
979
|
-
pathParams:
|
980
|
-
id:
|
1071
|
+
pathParams: z29.object({
|
1072
|
+
id: z29.string()
|
981
1073
|
}),
|
982
1074
|
responses: {
|
983
1075
|
200: DefaultSuccessResponseSchema.extend({
|
984
|
-
message:
|
1076
|
+
message: z29.string()
|
985
1077
|
}),
|
986
|
-
...
|
1078
|
+
...DefaultResponses
|
987
1079
|
},
|
988
1080
|
summary: "Get a mail server by id"
|
989
1081
|
},
|
990
1082
|
update: {
|
991
1083
|
method: "PATCH",
|
992
1084
|
path: "/:id",
|
993
|
-
pathParams:
|
994
|
-
id:
|
1085
|
+
pathParams: z29.object({
|
1086
|
+
id: z29.string()
|
995
1087
|
}),
|
996
1088
|
responses: {
|
997
1089
|
200: DefaultSuccessResponseSchema.extend({
|
998
|
-
message:
|
1090
|
+
message: z29.string()
|
999
1091
|
}),
|
1000
|
-
...
|
1092
|
+
...DefaultResponses
|
1001
1093
|
},
|
1002
1094
|
body: null,
|
1003
1095
|
summary: "Update a mail server by id"
|
@@ -1005,14 +1097,14 @@ var serverContract = initContract10().router(
|
|
1005
1097
|
delete: {
|
1006
1098
|
method: "PATCH",
|
1007
1099
|
path: "/:id",
|
1008
|
-
pathParams:
|
1009
|
-
id:
|
1100
|
+
pathParams: z29.object({
|
1101
|
+
id: z29.string()
|
1010
1102
|
}),
|
1011
1103
|
responses: {
|
1012
1104
|
200: DefaultSuccessResponseSchema.extend({
|
1013
|
-
message:
|
1105
|
+
message: z29.string()
|
1014
1106
|
}),
|
1015
|
-
...
|
1107
|
+
...DefaultResponses
|
1016
1108
|
},
|
1017
1109
|
body: null,
|
1018
1110
|
summary: "Delete a mail server by id"
|
@@ -1023,8 +1115,142 @@ var serverContract = initContract10().router(
|
|
1023
1115
|
}
|
1024
1116
|
);
|
1025
1117
|
|
1118
|
+
// src/mail/message-contract.ts
|
1119
|
+
import { initContract as initContract10 } from "@ts-rest/core";
|
1120
|
+
import z30 from "zod";
|
1121
|
+
var messageContract = initContract10().router(
|
1122
|
+
{
|
1123
|
+
create: {
|
1124
|
+
method: "POST",
|
1125
|
+
path: "/",
|
1126
|
+
responses: {
|
1127
|
+
200: DefaultSuccessResponseSchema.extend({
|
1128
|
+
message: z30.string()
|
1129
|
+
}),
|
1130
|
+
...DefaultResponses
|
1131
|
+
},
|
1132
|
+
body: null,
|
1133
|
+
summary: "Add a new message into a room"
|
1134
|
+
},
|
1135
|
+
get: {
|
1136
|
+
method: "GET",
|
1137
|
+
path: "/:id",
|
1138
|
+
pathParams: z30.object({
|
1139
|
+
id: z30.string()
|
1140
|
+
}),
|
1141
|
+
responses: {
|
1142
|
+
200: DefaultSuccessResponseSchema.extend({
|
1143
|
+
message: z30.string()
|
1144
|
+
}),
|
1145
|
+
...DefaultResponses
|
1146
|
+
},
|
1147
|
+
summary: "Get a message by id"
|
1148
|
+
},
|
1149
|
+
update: {
|
1150
|
+
method: "PATCH",
|
1151
|
+
path: "/:id",
|
1152
|
+
pathParams: z30.object({
|
1153
|
+
id: z30.string()
|
1154
|
+
}),
|
1155
|
+
responses: {
|
1156
|
+
200: DefaultSuccessResponseSchema.extend({
|
1157
|
+
message: z30.string()
|
1158
|
+
}),
|
1159
|
+
...DefaultResponses
|
1160
|
+
},
|
1161
|
+
body: null,
|
1162
|
+
summary: "Update a message by id"
|
1163
|
+
},
|
1164
|
+
delete: {
|
1165
|
+
method: "PATCH",
|
1166
|
+
path: "/:id",
|
1167
|
+
pathParams: z30.object({
|
1168
|
+
id: z30.string()
|
1169
|
+
}),
|
1170
|
+
responses: {
|
1171
|
+
200: DefaultSuccessResponseSchema.extend({
|
1172
|
+
message: z30.string()
|
1173
|
+
}),
|
1174
|
+
...DefaultResponses
|
1175
|
+
},
|
1176
|
+
body: null,
|
1177
|
+
summary: "Delete a message by id"
|
1178
|
+
}
|
1179
|
+
},
|
1180
|
+
{
|
1181
|
+
pathPrefix: "/message"
|
1182
|
+
}
|
1183
|
+
);
|
1184
|
+
|
1185
|
+
// src/mail/room-contract.ts
|
1186
|
+
import { initContract as initContract11 } from "@ts-rest/core";
|
1187
|
+
import z31 from "zod";
|
1188
|
+
var roomContract = initContract11().router(
|
1189
|
+
{
|
1190
|
+
create: {
|
1191
|
+
method: "POST",
|
1192
|
+
path: "/",
|
1193
|
+
responses: {
|
1194
|
+
200: DefaultSuccessResponseSchema.extend({
|
1195
|
+
message: z31.string()
|
1196
|
+
}),
|
1197
|
+
...DefaultResponses
|
1198
|
+
},
|
1199
|
+
body: null,
|
1200
|
+
summary: "Create a new room for new incoming mail"
|
1201
|
+
},
|
1202
|
+
get: {
|
1203
|
+
method: "GET",
|
1204
|
+
path: "/:id",
|
1205
|
+
pathParams: z31.object({
|
1206
|
+
id: z31.string()
|
1207
|
+
}),
|
1208
|
+
responses: {
|
1209
|
+
200: DefaultSuccessResponseSchema.extend({
|
1210
|
+
message: z31.string()
|
1211
|
+
}),
|
1212
|
+
...DefaultResponses
|
1213
|
+
},
|
1214
|
+
summary: "Get a mail room by id"
|
1215
|
+
},
|
1216
|
+
update: {
|
1217
|
+
method: "PATCH",
|
1218
|
+
path: "/:id",
|
1219
|
+
pathParams: z31.object({
|
1220
|
+
id: z31.string()
|
1221
|
+
}),
|
1222
|
+
responses: {
|
1223
|
+
200: DefaultSuccessResponseSchema.extend({
|
1224
|
+
message: z31.string()
|
1225
|
+
}),
|
1226
|
+
...DefaultResponses
|
1227
|
+
},
|
1228
|
+
body: null,
|
1229
|
+
summary: "Update a mail room by id"
|
1230
|
+
},
|
1231
|
+
delete: {
|
1232
|
+
method: "PATCH",
|
1233
|
+
path: "/:id",
|
1234
|
+
pathParams: z31.object({
|
1235
|
+
id: z31.string()
|
1236
|
+
}),
|
1237
|
+
responses: {
|
1238
|
+
200: DefaultSuccessResponseSchema.extend({
|
1239
|
+
message: z31.string()
|
1240
|
+
}),
|
1241
|
+
...DefaultResponses
|
1242
|
+
},
|
1243
|
+
body: null,
|
1244
|
+
summary: "Delete a mail room by id"
|
1245
|
+
}
|
1246
|
+
},
|
1247
|
+
{
|
1248
|
+
pathPrefix: "/room"
|
1249
|
+
}
|
1250
|
+
);
|
1251
|
+
|
1026
1252
|
// src/mail/mail-contract.ts
|
1027
|
-
var mailContract =
|
1253
|
+
var mailContract = initContract12().router({
|
1028
1254
|
room: roomContract,
|
1029
1255
|
message: messageContract,
|
1030
1256
|
account: accountContract,
|
@@ -1032,43 +1258,31 @@ var mailContract = initContract11().router({
|
|
1032
1258
|
});
|
1033
1259
|
|
1034
1260
|
// src/tag/index.ts
|
1035
|
-
import
|
1036
|
-
import
|
1037
|
-
|
1038
|
-
// src/tag/validation.ts
|
1039
|
-
import { z as z26 } from "zod";
|
1040
|
-
|
1041
|
-
// src/tag/schema.ts
|
1042
|
-
import z25 from "zod";
|
1043
|
-
var tagSchema = DefaultEntitySchema.extend({
|
1044
|
-
name: z25.string()
|
1045
|
-
});
|
1046
|
-
var tagGroupSchema = z25.union([
|
1047
|
-
z25.literal("general"),
|
1048
|
-
z25.literal("contact")
|
1049
|
-
]);
|
1261
|
+
import { initContract as initContract13 } from "@ts-rest/core";
|
1262
|
+
import z33 from "zod";
|
1050
1263
|
|
1051
1264
|
// src/tag/validation.ts
|
1052
|
-
|
1053
|
-
|
1054
|
-
|
1265
|
+
import { z as z32 } from "zod";
|
1266
|
+
var CreateTagSchema = z32.object({
|
1267
|
+
name: z32.string(),
|
1268
|
+
group: TagGroupSchema
|
1055
1269
|
});
|
1056
|
-
var
|
1057
|
-
group:
|
1058
|
-
keyword:
|
1270
|
+
var GetTagsSchema = z32.object({
|
1271
|
+
group: TagGroupSchema.default("general"),
|
1272
|
+
keyword: z32.string()
|
1059
1273
|
}).partial().optional();
|
1060
|
-
var
|
1274
|
+
var UpdateTagSchema = z32.object({ name: z32.string() });
|
1061
1275
|
|
1062
1276
|
// src/tag/index.ts
|
1063
|
-
var tagContract =
|
1277
|
+
var tagContract = initContract13().router(
|
1064
1278
|
{
|
1065
1279
|
createTag: {
|
1066
1280
|
method: "POST",
|
1067
1281
|
path: "",
|
1068
|
-
body:
|
1282
|
+
body: CreateTagSchema,
|
1069
1283
|
responses: {
|
1070
1284
|
201: DefaultSuccessResponseSchema.extend({
|
1071
|
-
tag:
|
1285
|
+
tag: TagSchema
|
1072
1286
|
}),
|
1073
1287
|
500: DefaultErrorResponseSchema
|
1074
1288
|
},
|
@@ -1077,10 +1291,10 @@ var tagContract = initContract12().router(
|
|
1077
1291
|
getTags: {
|
1078
1292
|
method: "GET",
|
1079
1293
|
path: "",
|
1080
|
-
query:
|
1294
|
+
query: GetTagsSchema,
|
1081
1295
|
responses: {
|
1082
1296
|
200: DefaultSuccessResponseSchema.extend({
|
1083
|
-
tags:
|
1297
|
+
tags: z33.array(TagSchema)
|
1084
1298
|
}),
|
1085
1299
|
500: DefaultErrorResponseSchema
|
1086
1300
|
},
|
@@ -1089,11 +1303,11 @@ var tagContract = initContract12().router(
|
|
1089
1303
|
updateTag: {
|
1090
1304
|
method: "PATCH",
|
1091
1305
|
path: "/:id",
|
1092
|
-
pathParams:
|
1093
|
-
body:
|
1306
|
+
pathParams: z33.object({ id: z33.string() }),
|
1307
|
+
body: UpdateTagSchema,
|
1094
1308
|
responses: {
|
1095
1309
|
200: DefaultSuccessResponseSchema.extend({
|
1096
|
-
tag:
|
1310
|
+
tag: TagSchema
|
1097
1311
|
}),
|
1098
1312
|
500: DefaultErrorResponseSchema
|
1099
1313
|
},
|
@@ -1102,11 +1316,11 @@ var tagContract = initContract12().router(
|
|
1102
1316
|
deleteTag: {
|
1103
1317
|
method: "DELETE",
|
1104
1318
|
path: "/:id",
|
1105
|
-
pathParams:
|
1106
|
-
body:
|
1319
|
+
pathParams: z33.object({ id: z33.string() }),
|
1320
|
+
body: z33.any().optional(),
|
1107
1321
|
// We don't need the body.
|
1108
1322
|
responses: {
|
1109
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
1323
|
+
200: DefaultSuccessResponseSchema.extend({ message: z33.string() }),
|
1110
1324
|
500: DefaultErrorResponseSchema
|
1111
1325
|
},
|
1112
1326
|
headers: DefaultHeaderSchema
|
@@ -1118,36 +1332,36 @@ var tagContract = initContract12().router(
|
|
1118
1332
|
);
|
1119
1333
|
|
1120
1334
|
// src/extension/index.ts
|
1121
|
-
import { initContract as
|
1122
|
-
import
|
1335
|
+
import { initContract as initContract14 } from "@ts-rest/core";
|
1336
|
+
import z36 from "zod";
|
1123
1337
|
|
1124
1338
|
// src/extension/schema.ts
|
1125
|
-
import
|
1339
|
+
import z34 from "zod";
|
1126
1340
|
var ExtensionSchema = DefaultEntitySchema.extend({
|
1127
|
-
userId:
|
1128
|
-
sipServerUrl:
|
1129
|
-
sipUserName:
|
1130
|
-
extensionId:
|
1131
|
-
extensionName:
|
1132
|
-
telephonySignature:
|
1341
|
+
userId: z34.string().nullable(),
|
1342
|
+
sipServerUrl: z34.string(),
|
1343
|
+
sipUserName: z34.string(),
|
1344
|
+
extensionId: z34.coerce.number().nullable(),
|
1345
|
+
extensionName: z34.string().nullable(),
|
1346
|
+
telephonySignature: z34.string().nullable()
|
1133
1347
|
});
|
1134
1348
|
|
1135
1349
|
// src/extension/validation.ts
|
1136
|
-
import { z as
|
1137
|
-
var CreateExtensionSchema =
|
1138
|
-
userId:
|
1139
|
-
sipServerUrl:
|
1140
|
-
sipUserName:
|
1141
|
-
extensionId:
|
1142
|
-
extensionName:
|
1143
|
-
telephonySignature:
|
1350
|
+
import { z as z35 } from "zod";
|
1351
|
+
var CreateExtensionSchema = z35.object({
|
1352
|
+
userId: z35.string().nullable(),
|
1353
|
+
sipServerUrl: z35.string(),
|
1354
|
+
sipUserName: z35.string(),
|
1355
|
+
extensionId: z35.coerce.number().nullable(),
|
1356
|
+
extensionName: z35.string().nullable(),
|
1357
|
+
telephonySignature: z35.string().nullable()
|
1144
1358
|
});
|
1145
1359
|
var UpdateExtensionSchema = CreateExtensionSchema.extend({
|
1146
|
-
id:
|
1360
|
+
id: z35.string()
|
1147
1361
|
});
|
1148
1362
|
|
1149
1363
|
// src/extension/index.ts
|
1150
|
-
var extensionContract =
|
1364
|
+
var extensionContract = initContract14().router(
|
1151
1365
|
{
|
1152
1366
|
createExtension: {
|
1153
1367
|
method: "POST",
|
@@ -1158,8 +1372,8 @@ var extensionContract = initContract13().router(
|
|
1158
1372
|
201: DefaultSuccessResponseSchema.extend({
|
1159
1373
|
extension: ExtensionSchema
|
1160
1374
|
}),
|
1161
|
-
400:
|
1162
|
-
message:
|
1375
|
+
400: z36.object({
|
1376
|
+
message: z36.string()
|
1163
1377
|
}),
|
1164
1378
|
401: DefaultUnauthorizedSchema,
|
1165
1379
|
500: DefaultErrorResponseSchema
|
@@ -1169,16 +1383,16 @@ var extensionContract = initContract13().router(
|
|
1169
1383
|
getExtensions: {
|
1170
1384
|
method: "GET",
|
1171
1385
|
path: "",
|
1172
|
-
query:
|
1173
|
-
page:
|
1174
|
-
pageSize:
|
1175
|
-
keyword:
|
1386
|
+
query: z36.object({
|
1387
|
+
page: z36.coerce.number().default(1),
|
1388
|
+
pageSize: z36.coerce.number().default(10),
|
1389
|
+
keyword: z36.string().optional()
|
1176
1390
|
}).optional(),
|
1177
1391
|
headers: DefaultHeaderSchema,
|
1178
1392
|
responses: {
|
1179
|
-
200:
|
1180
|
-
400:
|
1181
|
-
message:
|
1393
|
+
200: WithPagination(ExtensionSchema),
|
1394
|
+
400: z36.object({
|
1395
|
+
message: z36.string()
|
1182
1396
|
}),
|
1183
1397
|
401: DefaultUnauthorizedSchema,
|
1184
1398
|
500: DefaultErrorResponseSchema
|
@@ -1188,17 +1402,17 @@ var extensionContract = initContract13().router(
|
|
1188
1402
|
getExtensionByDialpad: {
|
1189
1403
|
method: "GET",
|
1190
1404
|
path: "/dialpad",
|
1191
|
-
query:
|
1192
|
-
page:
|
1193
|
-
pageSize:
|
1194
|
-
keyword:
|
1405
|
+
query: z36.object({
|
1406
|
+
page: z36.coerce.number().default(1),
|
1407
|
+
pageSize: z36.coerce.number().default(10),
|
1408
|
+
keyword: z36.string().optional()
|
1195
1409
|
}).optional(),
|
1196
1410
|
headers: DefaultHeaderSchema,
|
1197
1411
|
responses: {
|
1198
|
-
200:
|
1412
|
+
200: WithPagination(ExtensionSchema),
|
1199
1413
|
500: DefaultErrorResponseSchema,
|
1200
|
-
400:
|
1201
|
-
message:
|
1414
|
+
400: z36.object({
|
1415
|
+
message: z36.string()
|
1202
1416
|
}),
|
1203
1417
|
401: DefaultUnauthorizedSchema
|
1204
1418
|
},
|
@@ -1207,7 +1421,7 @@ var extensionContract = initContract13().router(
|
|
1207
1421
|
updateExtension: {
|
1208
1422
|
method: "PATCH",
|
1209
1423
|
path: "/:id",
|
1210
|
-
pathParams:
|
1424
|
+
pathParams: z36.object({ id: z36.string() }),
|
1211
1425
|
headers: DefaultHeaderSchema,
|
1212
1426
|
body: UpdateExtensionSchema,
|
1213
1427
|
responses: {
|
@@ -1221,11 +1435,11 @@ var extensionContract = initContract13().router(
|
|
1221
1435
|
deleteExtension: {
|
1222
1436
|
method: "DELETE",
|
1223
1437
|
path: "/:id",
|
1224
|
-
pathParams:
|
1438
|
+
pathParams: z36.object({ id: z36.string() }),
|
1225
1439
|
headers: DefaultHeaderSchema,
|
1226
1440
|
body: null,
|
1227
1441
|
responses: {
|
1228
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
1442
|
+
200: DefaultSuccessResponseSchema.extend({ message: z36.string() }),
|
1229
1443
|
500: DefaultErrorResponseSchema
|
1230
1444
|
},
|
1231
1445
|
summary: "Delete a extension."
|
@@ -1235,59 +1449,46 @@ var extensionContract = initContract13().router(
|
|
1235
1449
|
);
|
1236
1450
|
|
1237
1451
|
// src/permission/index.ts
|
1238
|
-
import { initContract as
|
1239
|
-
import
|
1240
|
-
var permissionContract =
|
1452
|
+
import { initContract as initContract15 } from "@ts-rest/core";
|
1453
|
+
import z37 from "zod";
|
1454
|
+
var permissionContract = initContract15().router(
|
1241
1455
|
{
|
1242
1456
|
getPermissions: {
|
1243
1457
|
method: "GET",
|
1244
1458
|
path: "",
|
1245
1459
|
headers: DefaultHeaderSchema,
|
1246
1460
|
responses: {
|
1247
|
-
200:
|
1248
|
-
400:
|
1249
|
-
message:
|
1461
|
+
200: z37.object({ permissions: PermissionSchema.array() }),
|
1462
|
+
400: z37.object({
|
1463
|
+
message: z37.string()
|
1250
1464
|
}),
|
1251
1465
|
401: DefaultUnauthorizedSchema,
|
1252
1466
|
500: DefaultErrorResponseSchema
|
1253
1467
|
},
|
1254
1468
|
summary: "Get all permissions"
|
1255
|
-
},
|
1256
|
-
getPermissionByUserId: {
|
1257
|
-
method: "GET",
|
1258
|
-
path: "/user/:id",
|
1259
|
-
pathParams: z31.object({ userId: z31.string() }),
|
1260
|
-
headers: DefaultHeaderSchema,
|
1261
|
-
responses: {
|
1262
|
-
200: DefaultSuccessResponseSchema.extend({
|
1263
|
-
permission: PermissionSchema
|
1264
|
-
}),
|
1265
|
-
401: DefaultUnauthorizedSchema
|
1266
|
-
},
|
1267
|
-
summary: "Get permission by user id"
|
1268
1469
|
}
|
1269
1470
|
},
|
1270
1471
|
{ pathPrefix: "permission" }
|
1271
1472
|
);
|
1272
1473
|
|
1273
1474
|
// src/role/index.ts
|
1274
|
-
import { initContract as
|
1275
|
-
import
|
1475
|
+
import { initContract as initContract16 } from "@ts-rest/core";
|
1476
|
+
import z39 from "zod";
|
1276
1477
|
|
1277
1478
|
// src/role/validation.ts
|
1278
|
-
import { z as
|
1279
|
-
var CreateRoleSchema =
|
1280
|
-
systemName:
|
1281
|
-
displayName:
|
1282
|
-
description:
|
1283
|
-
permissions:
|
1479
|
+
import { z as z38 } from "zod";
|
1480
|
+
var CreateRoleSchema = z38.object({
|
1481
|
+
systemName: z38.string(),
|
1482
|
+
displayName: z38.string(),
|
1483
|
+
description: z38.string().nullable(),
|
1484
|
+
permissions: z38.array(z38.string())
|
1284
1485
|
});
|
1285
1486
|
var UpdateRoleSchema = CreateRoleSchema.extend({
|
1286
|
-
id:
|
1487
|
+
id: z38.string()
|
1287
1488
|
});
|
1288
1489
|
|
1289
1490
|
// src/role/index.ts
|
1290
|
-
var roleContract =
|
1491
|
+
var roleContract = initContract16().router(
|
1291
1492
|
{
|
1292
1493
|
createRole: {
|
1293
1494
|
method: "POST",
|
@@ -1298,8 +1499,8 @@ var roleContract = initContract15().router(
|
|
1298
1499
|
201: DefaultSuccessResponseSchema.extend({
|
1299
1500
|
role: RoleSchema
|
1300
1501
|
}),
|
1301
|
-
400:
|
1302
|
-
message:
|
1502
|
+
400: z39.object({
|
1503
|
+
message: z39.string()
|
1303
1504
|
}),
|
1304
1505
|
401: DefaultUnauthorizedSchema,
|
1305
1506
|
500: DefaultErrorResponseSchema
|
@@ -1309,15 +1510,15 @@ var roleContract = initContract15().router(
|
|
1309
1510
|
getRoles: {
|
1310
1511
|
method: "GET",
|
1311
1512
|
path: "",
|
1312
|
-
query:
|
1313
|
-
page:
|
1314
|
-
pageSize:
|
1513
|
+
query: z39.object({
|
1514
|
+
page: z39.coerce.number().default(1),
|
1515
|
+
pageSize: z39.coerce.number().default(10)
|
1315
1516
|
}).optional(),
|
1316
1517
|
headers: DefaultHeaderSchema,
|
1317
1518
|
responses: {
|
1318
|
-
200:
|
1319
|
-
400:
|
1320
|
-
message:
|
1519
|
+
200: WithPagination(RoleSchema),
|
1520
|
+
400: z39.object({
|
1521
|
+
message: z39.string()
|
1321
1522
|
}),
|
1322
1523
|
401: DefaultUnauthorizedSchema,
|
1323
1524
|
500: DefaultErrorResponseSchema
|
@@ -1327,15 +1528,15 @@ var roleContract = initContract15().router(
|
|
1327
1528
|
updateRole: {
|
1328
1529
|
method: "PATCH",
|
1329
1530
|
path: "/:id",
|
1330
|
-
pathParams:
|
1531
|
+
pathParams: z39.object({ id: z39.string() }),
|
1331
1532
|
headers: DefaultHeaderSchema,
|
1332
1533
|
body: UpdateRoleSchema,
|
1333
1534
|
responses: {
|
1334
1535
|
201: DefaultSuccessResponseSchema.extend({
|
1335
1536
|
role: RoleSchema
|
1336
1537
|
}),
|
1337
|
-
400:
|
1338
|
-
message:
|
1538
|
+
400: z39.object({
|
1539
|
+
message: z39.string()
|
1339
1540
|
}),
|
1340
1541
|
401: DefaultUnauthorizedSchema,
|
1341
1542
|
500: DefaultErrorResponseSchema
|
@@ -1345,11 +1546,11 @@ var roleContract = initContract15().router(
|
|
1345
1546
|
deleteRole: {
|
1346
1547
|
method: "DELETE",
|
1347
1548
|
path: "/:id",
|
1348
|
-
pathParams:
|
1549
|
+
pathParams: z39.object({ id: z39.string() }),
|
1349
1550
|
headers: DefaultHeaderSchema,
|
1350
1551
|
body: null,
|
1351
1552
|
responses: {
|
1352
|
-
200: DefaultSuccessResponseSchema.extend({ message:
|
1553
|
+
200: DefaultSuccessResponseSchema.extend({ message: z39.string() }),
|
1353
1554
|
500: DefaultErrorResponseSchema
|
1354
1555
|
},
|
1355
1556
|
summary: "Delete a role."
|
@@ -1358,126 +1559,42 @@ var roleContract = initContract15().router(
|
|
1358
1559
|
{ pathPrefix: "role" }
|
1359
1560
|
);
|
1360
1561
|
|
1361
|
-
// src/user/index.ts
|
1362
|
-
import { initContract as initContract16 } from "@ts-rest/core";
|
1363
|
-
import z34 from "zod";
|
1364
|
-
var userContract = initContract16().router(
|
1365
|
-
{
|
1366
|
-
createUser: {
|
1367
|
-
method: "POST",
|
1368
|
-
path: "",
|
1369
|
-
headers: DefaultHeaderSchema,
|
1370
|
-
responses: {
|
1371
|
-
201: DefaultSuccessResponseSchema.extend({
|
1372
|
-
user: UserSchema
|
1373
|
-
}),
|
1374
|
-
400: z34.object({
|
1375
|
-
message: z34.string()
|
1376
|
-
}),
|
1377
|
-
401: DefaultUnauthorizedSchema
|
1378
|
-
},
|
1379
|
-
body: UserSchema,
|
1380
|
-
summary: "Create a user."
|
1381
|
-
},
|
1382
|
-
getUsers: {
|
1383
|
-
method: "GET",
|
1384
|
-
path: "",
|
1385
|
-
headers: DefaultHeaderSchema,
|
1386
|
-
responses: {
|
1387
|
-
200: DefaultSuccessResponseSchema.extend({
|
1388
|
-
user: withPagination(UserSchema)
|
1389
|
-
}),
|
1390
|
-
400: z34.object({
|
1391
|
-
message: z34.string()
|
1392
|
-
}),
|
1393
|
-
401: DefaultUnauthorizedSchema
|
1394
|
-
},
|
1395
|
-
summary: "Get all users"
|
1396
|
-
},
|
1397
|
-
getUserById: {
|
1398
|
-
method: "GET",
|
1399
|
-
path: "/:id",
|
1400
|
-
pathParams: z34.object({ id: z34.string() }),
|
1401
|
-
headers: DefaultHeaderSchema,
|
1402
|
-
responses: {
|
1403
|
-
200: DefaultSuccessResponseSchema.extend({
|
1404
|
-
user: UserSchema
|
1405
|
-
}),
|
1406
|
-
400: z34.object({
|
1407
|
-
message: z34.string()
|
1408
|
-
}),
|
1409
|
-
401: DefaultUnauthorizedSchema
|
1410
|
-
},
|
1411
|
-
summary: "Get user by id"
|
1412
|
-
},
|
1413
|
-
updateUser: {
|
1414
|
-
method: "PATCH",
|
1415
|
-
path: "/:id",
|
1416
|
-
pathParams: z34.object({ id: z34.string() }),
|
1417
|
-
headers: DefaultHeaderSchema,
|
1418
|
-
responses: {
|
1419
|
-
201: DefaultSuccessResponseSchema.extend({
|
1420
|
-
role: UserSchema
|
1421
|
-
}),
|
1422
|
-
400: z34.object({
|
1423
|
-
message: z34.string()
|
1424
|
-
}),
|
1425
|
-
401: DefaultUnauthorizedSchema
|
1426
|
-
},
|
1427
|
-
body: UserSchema.extend({
|
1428
|
-
newPassword: z34.string()
|
1429
|
-
}),
|
1430
|
-
summary: "Update a user."
|
1431
|
-
},
|
1432
|
-
deleteUser: {
|
1433
|
-
method: "DELETE",
|
1434
|
-
path: "/:id",
|
1435
|
-
pathParams: z34.object({ id: z34.string() }),
|
1436
|
-
headers: DefaultHeaderSchema,
|
1437
|
-
body: z34.null().optional(),
|
1438
|
-
responses: { 200: z34.string() },
|
1439
|
-
summary: "Delete a user."
|
1440
|
-
}
|
1441
|
-
},
|
1442
|
-
{ pathPrefix: "user" }
|
1443
|
-
);
|
1444
|
-
|
1445
1562
|
// src/widget/index.ts
|
1446
1563
|
import { initContract as initContract17 } from "@ts-rest/core";
|
1447
|
-
import
|
1564
|
+
import z42 from "zod";
|
1448
1565
|
|
1449
1566
|
// src/widget/schema.ts
|
1450
|
-
import
|
1451
|
-
var FieldsSchema =
|
1452
|
-
var WidgetPositionSchema =
|
1453
|
-
|
1454
|
-
|
1455
|
-
|
1567
|
+
import z40 from "zod";
|
1568
|
+
var FieldsSchema = z40.object({ data: z40.array(z40.string()) });
|
1569
|
+
var WidgetPositionSchema = z40.union([
|
1570
|
+
z40.literal("menu"),
|
1571
|
+
z40.literal("ticket_detail"),
|
1572
|
+
z40.literal("contact_detail")
|
1456
1573
|
]);
|
1457
1574
|
var WidgetSchema = DefaultEntitySchema.extend({
|
1458
|
-
name:
|
1459
|
-
description:
|
1575
|
+
name: z40.string(),
|
1576
|
+
description: z40.string().nullable(),
|
1460
1577
|
position: WidgetPositionSchema.nullable(),
|
1461
1578
|
fields: FieldsSchema,
|
1462
|
-
url:
|
1579
|
+
url: z40.string().nullable()
|
1463
1580
|
});
|
1464
1581
|
|
1465
1582
|
// src/widget/validation.ts
|
1466
|
-
import
|
1467
|
-
var CreateWidgetSchema =
|
1468
|
-
name:
|
1469
|
-
description:
|
1470
|
-
url:
|
1583
|
+
import z41 from "zod";
|
1584
|
+
var CreateWidgetSchema = z41.object({
|
1585
|
+
name: z41.string(),
|
1586
|
+
description: z41.string(),
|
1587
|
+
url: z41.string(),
|
1471
1588
|
position: WidgetPositionSchema,
|
1472
|
-
fields:
|
1589
|
+
fields: z41.object({
|
1473
1590
|
data: (
|
1474
1591
|
// Array of attribute system names
|
1475
|
-
|
1592
|
+
z41.array(z41.string())
|
1476
1593
|
)
|
1477
1594
|
}).optional()
|
1478
1595
|
});
|
1479
1596
|
var UpdateWidgetSchema = CreateWidgetSchema.extend({
|
1480
|
-
id:
|
1597
|
+
id: z41.string()
|
1481
1598
|
});
|
1482
1599
|
|
1483
1600
|
// src/widget/index.ts
|
@@ -1492,8 +1609,8 @@ var widgetContract = initContract17().router(
|
|
1492
1609
|
201: DefaultSuccessResponseSchema.extend({
|
1493
1610
|
widget: WidgetSchema
|
1494
1611
|
}),
|
1495
|
-
400:
|
1496
|
-
message:
|
1612
|
+
400: z42.object({
|
1613
|
+
message: z42.string()
|
1497
1614
|
}),
|
1498
1615
|
401: DefaultUnauthorizedSchema,
|
1499
1616
|
500: DefaultErrorResponseSchema
|
@@ -1503,16 +1620,17 @@ var widgetContract = initContract17().router(
|
|
1503
1620
|
getWidgets: {
|
1504
1621
|
method: "GET",
|
1505
1622
|
path: "",
|
1506
|
-
query:
|
1507
|
-
page:
|
1508
|
-
pageSize:
|
1623
|
+
query: z42.object({
|
1624
|
+
page: z42.coerce.number().default(1),
|
1625
|
+
pageSize: z42.coerce.number().default(10),
|
1626
|
+
keyword: z42.coerce.string().optional()
|
1509
1627
|
}).optional(),
|
1510
1628
|
headers: DefaultHeaderSchema,
|
1511
1629
|
responses: {
|
1512
|
-
200:
|
1630
|
+
200: WithPagination(WidgetSchema),
|
1513
1631
|
500: DefaultErrorResponseSchema,
|
1514
|
-
400:
|
1515
|
-
message:
|
1632
|
+
400: z42.object({
|
1633
|
+
message: z42.string()
|
1516
1634
|
}),
|
1517
1635
|
401: DefaultUnauthorizedSchema
|
1518
1636
|
},
|
@@ -1523,9 +1641,9 @@ var widgetContract = initContract17().router(
|
|
1523
1641
|
path: "/menu",
|
1524
1642
|
headers: DefaultHeaderSchema,
|
1525
1643
|
responses: {
|
1526
|
-
200:
|
1527
|
-
400:
|
1528
|
-
message:
|
1644
|
+
200: z42.array(WidgetSchema),
|
1645
|
+
400: z42.object({
|
1646
|
+
message: z42.string()
|
1529
1647
|
}),
|
1530
1648
|
401: DefaultUnauthorizedSchema,
|
1531
1649
|
500: DefaultErrorResponseSchema
|
@@ -1534,12 +1652,12 @@ var widgetContract = initContract17().router(
|
|
1534
1652
|
},
|
1535
1653
|
getTicketWidgets: {
|
1536
1654
|
method: "GET",
|
1537
|
-
path: "/
|
1655
|
+
path: "/ticket_detail",
|
1538
1656
|
headers: DefaultHeaderSchema,
|
1539
1657
|
responses: {
|
1540
|
-
200:
|
1541
|
-
400:
|
1542
|
-
message:
|
1658
|
+
200: z42.array(WidgetSchema),
|
1659
|
+
400: z42.object({
|
1660
|
+
message: z42.string()
|
1543
1661
|
}),
|
1544
1662
|
401: DefaultUnauthorizedSchema,
|
1545
1663
|
500: DefaultErrorResponseSchema
|
@@ -1548,12 +1666,12 @@ var widgetContract = initContract17().router(
|
|
1548
1666
|
},
|
1549
1667
|
getContactWidgets: {
|
1550
1668
|
method: "GET",
|
1551
|
-
path: "/
|
1669
|
+
path: "/contact_detail",
|
1552
1670
|
headers: DefaultHeaderSchema,
|
1553
1671
|
responses: {
|
1554
|
-
200:
|
1555
|
-
400:
|
1556
|
-
message:
|
1672
|
+
200: z42.array(WidgetSchema),
|
1673
|
+
400: z42.object({
|
1674
|
+
message: z42.string()
|
1557
1675
|
}),
|
1558
1676
|
401: DefaultUnauthorizedSchema,
|
1559
1677
|
500: DefaultErrorResponseSchema
|
@@ -1563,52 +1681,53 @@ var widgetContract = initContract17().router(
|
|
1563
1681
|
getWidgetById: {
|
1564
1682
|
method: "GET",
|
1565
1683
|
path: "/:id",
|
1566
|
-
pathParams:
|
1684
|
+
pathParams: z42.object({ id: z42.string() }),
|
1567
1685
|
headers: DefaultHeaderSchema,
|
1568
1686
|
responses: {
|
1569
|
-
200:
|
1570
|
-
400:
|
1571
|
-
message:
|
1687
|
+
200: WidgetSchema,
|
1688
|
+
400: z42.object({
|
1689
|
+
message: z42.string()
|
1572
1690
|
}),
|
1573
1691
|
401: DefaultUnauthorizedSchema,
|
1574
1692
|
500: DefaultErrorResponseSchema
|
1575
1693
|
},
|
1576
1694
|
summary: "Get widget by id"
|
1577
1695
|
},
|
1578
|
-
|
1579
|
-
|
1580
|
-
|
1581
|
-
|
1582
|
-
|
1583
|
-
|
1584
|
-
|
1585
|
-
|
1586
|
-
|
1587
|
-
|
1588
|
-
|
1589
|
-
|
1590
|
-
|
1591
|
-
|
1592
|
-
|
1593
|
-
|
1594
|
-
|
1595
|
-
|
1596
|
-
|
1597
|
-
|
1598
|
-
|
1599
|
-
|
1600
|
-
|
1696
|
+
// Hold
|
1697
|
+
// getWidgetUrl: {
|
1698
|
+
// method: 'GET',
|
1699
|
+
// path: '/url_token/generate',
|
1700
|
+
// pathParams: z.object({
|
1701
|
+
// widgetId: z.string(),
|
1702
|
+
// // Position ID is ticket ID, contact ID, etc.
|
1703
|
+
// // TODO: The name "Position ID" is confusing. Think of a better name.
|
1704
|
+
// positionId: z.string(),
|
1705
|
+
// }),
|
1706
|
+
// headers: DefaultHeaderSchema,
|
1707
|
+
// responses: {
|
1708
|
+
// 201: DefaultSuccessResponseSchema.extend({
|
1709
|
+
// widget: z.object({
|
1710
|
+
// url: z.string(),
|
1711
|
+
// }),
|
1712
|
+
// }),
|
1713
|
+
// 400: z.object({
|
1714
|
+
// message: z.string(),
|
1715
|
+
// }),
|
1716
|
+
// 401: DefaultUnauthorizedSchema,
|
1717
|
+
// },
|
1718
|
+
// summary: 'Generate url token for widget.',
|
1719
|
+
// },
|
1601
1720
|
updateWidget: {
|
1602
1721
|
method: "PATCH",
|
1603
1722
|
path: "/:id",
|
1604
|
-
pathParams:
|
1723
|
+
pathParams: z42.object({ id: z42.string() }),
|
1605
1724
|
headers: DefaultHeaderSchema,
|
1606
1725
|
responses: {
|
1607
1726
|
201: DefaultSuccessResponseSchema.extend({
|
1608
1727
|
widget: WidgetSchema
|
1609
1728
|
}),
|
1610
|
-
400:
|
1611
|
-
message:
|
1729
|
+
400: z42.object({
|
1730
|
+
message: z42.string()
|
1612
1731
|
}),
|
1613
1732
|
401: DefaultUnauthorizedSchema
|
1614
1733
|
},
|
@@ -1618,10 +1737,13 @@ var widgetContract = initContract17().router(
|
|
1618
1737
|
deleteWidget: {
|
1619
1738
|
method: "DELETE",
|
1620
1739
|
path: "/:id",
|
1621
|
-
pathParams:
|
1740
|
+
pathParams: z42.object({ id: z42.string() }),
|
1622
1741
|
headers: DefaultHeaderSchema,
|
1623
|
-
body:
|
1624
|
-
responses: {
|
1742
|
+
body: null,
|
1743
|
+
responses: {
|
1744
|
+
200: DefaultSuccessResponseSchema.extend({ message: z42.string() }),
|
1745
|
+
500: DefaultErrorResponseSchema
|
1746
|
+
},
|
1625
1747
|
summary: "Delete a widget."
|
1626
1748
|
}
|
1627
1749
|
},
|
@@ -1630,15 +1752,15 @@ var widgetContract = initContract17().router(
|
|
1630
1752
|
|
1631
1753
|
// src/telephony-extension/index.ts
|
1632
1754
|
import { initContract as initContract18 } from "@ts-rest/core";
|
1633
|
-
import
|
1755
|
+
import z44 from "zod";
|
1634
1756
|
|
1635
1757
|
// src/telephony-extension/schema.ts
|
1636
|
-
import
|
1637
|
-
var TelephonyExtensionSchema =
|
1638
|
-
errcode:
|
1639
|
-
errmsg:
|
1640
|
-
total_number:
|
1641
|
-
data:
|
1758
|
+
import z43 from "zod";
|
1759
|
+
var TelephonyExtensionSchema = z43.object({
|
1760
|
+
errcode: z43.coerce.number(),
|
1761
|
+
errmsg: z43.string(),
|
1762
|
+
total_number: z43.coerce.number(),
|
1763
|
+
data: z43.array(z43.object({}))
|
1642
1764
|
});
|
1643
1765
|
|
1644
1766
|
// src/telephony-extension/index.ts
|
@@ -1651,8 +1773,8 @@ var telephonyExtensionContract = initContract18().router(
|
|
1651
1773
|
query: null,
|
1652
1774
|
responses: {
|
1653
1775
|
200: TelephonyExtensionSchema,
|
1654
|
-
400:
|
1655
|
-
message:
|
1776
|
+
400: z44.object({
|
1777
|
+
message: z44.string()
|
1656
1778
|
}),
|
1657
1779
|
401: DefaultUnauthorizedSchema,
|
1658
1780
|
500: DefaultErrorResponseSchema
|
@@ -1670,7 +1792,7 @@ var apiContract = initContract19().router({
|
|
1670
1792
|
cxLog: cxLogContract,
|
1671
1793
|
permission: permissionContract,
|
1672
1794
|
role: roleContract,
|
1673
|
-
user: userContract,
|
1795
|
+
// user: userContract,
|
1674
1796
|
extension: extensionContract,
|
1675
1797
|
widget: widgetContract,
|
1676
1798
|
emailEngineWebhooks: emailEngineWebhooksEventsContract,
|
@@ -1678,7 +1800,8 @@ var apiContract = initContract19().router({
|
|
1678
1800
|
telephonyExtensionContract,
|
1679
1801
|
line: lineContract,
|
1680
1802
|
attribute: attributeContract,
|
1681
|
-
tag: tagContract
|
1803
|
+
tag: tagContract,
|
1804
|
+
chat: chatContract
|
1682
1805
|
});
|
1683
1806
|
export {
|
1684
1807
|
apiContract,
|