@kl1/contracts 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (251) hide show
  1. package/dist/index.js +1279 -405
  2. package/dist/index.js.map +1 -1
  3. package/dist/index.mjs +1276 -404
  4. package/dist/index.mjs.map +1 -1
  5. package/dist/src/attribute/index.d.ts +526 -65
  6. package/dist/src/attribute/index.d.ts.map +1 -1
  7. package/dist/src/attribute/schema.d.ts +92 -12
  8. package/dist/src/attribute/schema.d.ts.map +1 -1
  9. package/dist/src/attribute/validation.d.ts +9 -12
  10. package/dist/src/attribute/validation.d.ts.map +1 -1
  11. package/dist/src/attribute-option/schema.d.ts +5 -5
  12. package/dist/src/auth/index.d.ts +64 -29
  13. package/dist/src/auth/index.d.ts.map +1 -1
  14. package/dist/src/base-contract.d.ts +5 -5
  15. package/dist/src/base-contract.d.ts.map +1 -1
  16. package/dist/src/call-log/schema.d.ts +5 -5
  17. package/dist/src/category/index.d.ts +188 -104
  18. package/dist/src/category/index.d.ts.map +1 -1
  19. package/dist/src/category/schema.d.ts +22 -0
  20. package/dist/src/category/schema.d.ts.map +1 -1
  21. package/dist/src/channel/index.d.ts +629 -0
  22. package/dist/{contract.d.ts.map → src/channel/index.d.ts.map} +1 -1
  23. package/dist/src/channel/schema.d.ts +293 -0
  24. package/dist/src/channel/schema.d.ts.map +1 -0
  25. package/dist/src/channel/validation.d.ts +242 -0
  26. package/dist/src/channel/validation.d.ts.map +1 -0
  27. package/dist/src/company/schema.d.ts +3 -3
  28. package/dist/src/contact/schema.d.ts +3 -3
  29. package/dist/src/contact-email/schema.d.ts +3 -3
  30. package/dist/src/contact-phone/schema.d.ts +3 -3
  31. package/dist/src/contract.d.ts +5278 -481
  32. package/dist/src/contract.d.ts.map +1 -1
  33. package/dist/src/custom-field/schema.d.ts +5 -5
  34. package/dist/src/custom-field-upload/schema.d.ts +3 -3
  35. package/dist/src/cx-log/index.d.ts +56 -54
  36. package/dist/src/cx-log/index.d.ts.map +1 -1
  37. package/dist/src/cx-log/schema.d.ts +3 -3
  38. package/dist/src/cx-log/validation.d.ts +47 -47
  39. package/dist/src/cx-log/validation.d.ts.map +1 -1
  40. package/dist/src/evaluate-form/schema.d.ts +3 -3
  41. package/dist/src/extension/index.d.ts +547 -0
  42. package/dist/src/extension/index.d.ts.map +1 -0
  43. package/dist/src/extension/schema.d.ts +9 -9
  44. package/dist/src/extension/validation.d.ts +49 -0
  45. package/dist/src/extension/validation.d.ts.map +1 -0
  46. package/dist/src/group/schema.d.ts +3 -3
  47. package/dist/src/index.d.ts +2 -0
  48. package/dist/src/index.d.ts.map +1 -1
  49. package/dist/src/line/index.d.ts +86 -0
  50. package/dist/src/line/index.d.ts.map +1 -0
  51. package/dist/src/line/schema.d.ts +12 -0
  52. package/dist/src/line/schema.d.ts.map +1 -0
  53. package/dist/src/line/validation.d.ts +18 -0
  54. package/dist/src/line/validation.d.ts.map +1 -0
  55. package/dist/src/log-form/schema.d.ts +3 -3
  56. package/dist/src/mail/account-contract.d.ts +14 -14
  57. package/dist/src/mail/mail-contract.d.ts +14 -14
  58. package/dist/src/permission/index.d.ts +179 -0
  59. package/dist/src/permission/index.d.ts.map +1 -0
  60. package/dist/src/permission/schema.d.ts +3 -3
  61. package/dist/src/platform-contact/schema.d.ts +3 -3
  62. package/dist/src/role/index.d.ts +545 -0
  63. package/dist/{api-contracts/src/contract.d.ts.map → src/role/index.d.ts.map} +1 -1
  64. package/dist/src/role/schema.d.ts +8 -8
  65. package/dist/src/role/validation.d.ts +37 -0
  66. package/dist/src/role/validation.d.ts.map +1 -0
  67. package/dist/src/tag/index.d.ts +286 -0
  68. package/dist/src/tag/index.d.ts.map +1 -0
  69. package/dist/src/tag/schema.d.ts +5 -4
  70. package/dist/src/tag/schema.d.ts.map +1 -1
  71. package/dist/src/tag/validation.d.ts +29 -0
  72. package/dist/src/tag/validation.d.ts.map +1 -0
  73. package/dist/src/tag-group/schema.d.ts +3 -3
  74. package/dist/src/telephony-cdr/schema.d.ts +5 -5
  75. package/dist/src/telephony-extension/index.d.ts +65 -0
  76. package/dist/src/telephony-extension/index.d.ts.map +1 -0
  77. package/dist/src/telephony-extension/schema.d.ts +18 -0
  78. package/dist/src/telephony-extension/schema.d.ts.map +1 -0
  79. package/dist/src/telephony-live-queue-call/schema.d.ts +3 -3
  80. package/dist/src/telephony-queue-call-count/schema.d.ts +3 -3
  81. package/dist/src/ticket/schema.d.ts +3 -3
  82. package/dist/src/upload/schema.d.ts +3 -3
  83. package/dist/src/user/index.d.ts +1261 -0
  84. package/dist/src/user/index.d.ts.map +1 -0
  85. package/dist/src/user/schema.d.ts +15 -15
  86. package/dist/src/user/schema.d.ts.map +1 -1
  87. package/dist/src/widget/index.d.ts +856 -0
  88. package/dist/src/widget/index.d.ts.map +1 -0
  89. package/dist/src/widget/schema.d.ts +20 -9
  90. package/dist/src/widget/schema.d.ts.map +1 -1
  91. package/dist/src/widget/validation.d.ts +63 -0
  92. package/dist/src/widget/validation.d.ts.map +1 -0
  93. package/package.json +4 -2
  94. package/dist/api-contracts/src/auth/index.d.ts +0 -436
  95. package/dist/api-contracts/src/auth/index.d.ts.map +0 -1
  96. package/dist/api-contracts/src/auth/permission-schema.d.ts +0 -27
  97. package/dist/api-contracts/src/auth/permission-schema.d.ts.map +0 -1
  98. package/dist/api-contracts/src/auth/role-schema.d.ts +0 -70
  99. package/dist/api-contracts/src/auth/role-schema.d.ts.map +0 -1
  100. package/dist/api-contracts/src/auth/user-schema.d.ts +0 -140
  101. package/dist/api-contracts/src/auth/user-schema.d.ts.map +0 -1
  102. package/dist/api-contracts/src/base-contract.d.ts +0 -85
  103. package/dist/api-contracts/src/base-contract.d.ts.map +0 -1
  104. package/dist/api-contracts/src/contract.d.ts +0 -593
  105. package/dist/api-contracts/src/cx-log/cx-log-schema.d.ts +0 -54
  106. package/dist/api-contracts/src/cx-log/cx-log-schema.d.ts.map +0 -1
  107. package/dist/api-contracts/src/cx-log/index.d.ts +0 -252
  108. package/dist/api-contracts/src/cx-log/index.d.ts.map +0 -1
  109. package/dist/api-contracts/src/index.d.ts +0 -2
  110. package/dist/api-contracts/src/index.d.ts.map +0 -1
  111. package/dist/attribute/schema.d.ts +0 -42
  112. package/dist/attribute/schema.d.ts.map +0 -1
  113. package/dist/attribute-option/schema.d.ts +0 -33
  114. package/dist/attribute-option/schema.d.ts.map +0 -1
  115. package/dist/auth/index.d.ts +0 -436
  116. package/dist/auth/index.d.ts.map +0 -1
  117. package/dist/auth/permission-schema.d.ts +0 -27
  118. package/dist/auth/permission-schema.d.ts.map +0 -1
  119. package/dist/auth/role-schema.d.ts +0 -70
  120. package/dist/auth/role-schema.d.ts.map +0 -1
  121. package/dist/auth/user-schema.d.ts +0 -140
  122. package/dist/auth/user-schema.d.ts.map +0 -1
  123. package/dist/base-contract.d.ts +0 -85
  124. package/dist/base-contract.d.ts.map +0 -1
  125. package/dist/call-log/index.d.ts +0 -4
  126. package/dist/call-log/index.d.ts.map +0 -1
  127. package/dist/call-log/schema.d.ts +0 -57
  128. package/dist/call-log/schema.d.ts.map +0 -1
  129. package/dist/call-log/validation.d.ts +0 -24
  130. package/dist/call-log/validation.d.ts.map +0 -1
  131. package/dist/company/schema.d.ts +0 -30
  132. package/dist/company/schema.d.ts.map +0 -1
  133. package/dist/contact/schema.d.ts +0 -42
  134. package/dist/contact/schema.d.ts.map +0 -1
  135. package/dist/contact-email/schema.d.ts +0 -27
  136. package/dist/contact-email/schema.d.ts.map +0 -1
  137. package/dist/contact-phone/schema.d.ts +0 -27
  138. package/dist/contact-phone/schema.d.ts.map +0 -1
  139. package/dist/contract.d.ts +0 -663
  140. package/dist/custom-field/schema.d.ts +0 -36
  141. package/dist/custom-field/schema.d.ts.map +0 -1
  142. package/dist/custom-field-upload/schema.d.ts +0 -24
  143. package/dist/custom-field-upload/schema.d.ts.map +0 -1
  144. package/dist/cx-log/cx-log-schema.d.ts +0 -54
  145. package/dist/cx-log/cx-log-schema.d.ts.map +0 -1
  146. package/dist/cx-log/index.d.ts +0 -230
  147. package/dist/cx-log/index.d.ts.map +0 -1
  148. package/dist/cx-log/schema.d.ts +0 -54
  149. package/dist/cx-log/schema.d.ts.map +0 -1
  150. package/dist/cx-log/validation.d.ts +0 -95
  151. package/dist/cx-log/validation.d.ts.map +0 -1
  152. package/dist/entities/src/base.entity.d.ts +0 -7
  153. package/dist/entities/src/base.entity.d.ts.map +0 -1
  154. package/dist/entities/src/tenants/attribute-option.entity.d.ts +0 -9
  155. package/dist/entities/src/tenants/attribute-option.entity.d.ts.map +0 -1
  156. package/dist/entities/src/tenants/attribute.entity.d.ts +0 -12
  157. package/dist/entities/src/tenants/attribute.entity.d.ts.map +0 -1
  158. package/dist/entities/src/tenants/call-log.entity.d.ts +0 -18
  159. package/dist/entities/src/tenants/call-log.entity.d.ts.map +0 -1
  160. package/dist/entities/src/tenants/company.entity.d.ts +0 -8
  161. package/dist/entities/src/tenants/company.entity.d.ts.map +0 -1
  162. package/dist/entities/src/tenants/contact-custom-field.entity.d.ts +0 -14
  163. package/dist/entities/src/tenants/contact-custom-field.entity.d.ts.map +0 -1
  164. package/dist/entities/src/tenants/contact-email.entity.d.ts +0 -7
  165. package/dist/entities/src/tenants/contact-email.entity.d.ts.map +0 -1
  166. package/dist/entities/src/tenants/contact-phone.entity.d.ts +0 -7
  167. package/dist/entities/src/tenants/contact-phone.entity.d.ts.map +0 -1
  168. package/dist/entities/src/tenants/contact.entity.d.ts +0 -14
  169. package/dist/entities/src/tenants/contact.entity.d.ts.map +0 -1
  170. package/dist/entities/src/tenants/custom-field-upload.entity.d.ts +0 -8
  171. package/dist/entities/src/tenants/custom-field-upload.entity.d.ts.map +0 -1
  172. package/dist/entities/src/tenants/custom-field.entity.d.ts +0 -10
  173. package/dist/entities/src/tenants/custom-field.entity.d.ts.map +0 -1
  174. package/dist/entities/src/tenants/cx-log.entity.d.ts +0 -20
  175. package/dist/entities/src/tenants/cx-log.entity.d.ts.map +0 -1
  176. package/dist/entities/src/tenants/evaluate-form.entity.d.ts +0 -9
  177. package/dist/entities/src/tenants/evaluate-form.entity.d.ts.map +0 -1
  178. package/dist/entities/src/tenants/extension.entity.d.ts +0 -10
  179. package/dist/entities/src/tenants/extension.entity.d.ts.map +0 -1
  180. package/dist/entities/src/tenants/group.entity.d.ts +0 -6
  181. package/dist/entities/src/tenants/group.entity.d.ts.map +0 -1
  182. package/dist/entities/src/tenants/index.d.ts +0 -25
  183. package/dist/entities/src/tenants/index.d.ts.map +0 -1
  184. package/dist/entities/src/tenants/log-form.entity.d.ts +0 -6
  185. package/dist/entities/src/tenants/log-form.entity.d.ts.map +0 -1
  186. package/dist/entities/src/tenants/permission.entity.d.ts +0 -9
  187. package/dist/entities/src/tenants/permission.entity.d.ts.map +0 -1
  188. package/dist/entities/src/tenants/platform-contact.entity.d.ts +0 -8
  189. package/dist/entities/src/tenants/platform-contact.entity.d.ts.map +0 -1
  190. package/dist/entities/src/tenants/role.entity.d.ts +0 -11
  191. package/dist/entities/src/tenants/role.entity.d.ts.map +0 -1
  192. package/dist/entities/src/tenants/tag-group.entity.d.ts +0 -8
  193. package/dist/entities/src/tenants/tag-group.entity.d.ts.map +0 -1
  194. package/dist/entities/src/tenants/tag.entity.d.ts +0 -11
  195. package/dist/entities/src/tenants/tag.entity.d.ts.map +0 -1
  196. package/dist/entities/src/tenants/telephony-cdr.entity.d.ts +0 -23
  197. package/dist/entities/src/tenants/telephony-cdr.entity.d.ts.map +0 -1
  198. package/dist/entities/src/tenants/telephony-live-queue-call.entity.d.ts +0 -7
  199. package/dist/entities/src/tenants/telephony-live-queue-call.entity.d.ts.map +0 -1
  200. package/dist/entities/src/tenants/telephony-queue-call-count.entity.d.ts +0 -15
  201. package/dist/entities/src/tenants/telephony-queue-call-count.entity.d.ts.map +0 -1
  202. package/dist/entities/src/tenants/ticket.entity.d.ts +0 -17
  203. package/dist/entities/src/tenants/ticket.entity.d.ts.map +0 -1
  204. package/dist/entities/src/tenants/upload.entity.d.ts +0 -8
  205. package/dist/entities/src/tenants/upload.entity.d.ts.map +0 -1
  206. package/dist/entities/src/tenants/user.entity.d.ts +0 -13
  207. package/dist/entities/src/tenants/user.entity.d.ts.map +0 -1
  208. package/dist/entities/src/tenants/widget.entity.d.ts +0 -9
  209. package/dist/entities/src/tenants/widget.entity.d.ts.map +0 -1
  210. package/dist/evaluate-form/schema.d.ts +0 -27
  211. package/dist/evaluate-form/schema.d.ts.map +0 -1
  212. package/dist/exchange-token/index.d.ts +0 -32
  213. package/dist/exchange-token/index.d.ts.map +0 -1
  214. package/dist/extension/schema.d.ts +0 -36
  215. package/dist/extension/schema.d.ts.map +0 -1
  216. package/dist/group/schema.d.ts +0 -24
  217. package/dist/group/schema.d.ts.map +0 -1
  218. package/dist/index.d.ts +0 -3
  219. package/dist/index.d.ts.map +0 -1
  220. package/dist/log-form/schema.d.ts +0 -24
  221. package/dist/log-form/schema.d.ts.map +0 -1
  222. package/dist/permission/schema.d.ts +0 -27
  223. package/dist/permission/schema.d.ts.map +0 -1
  224. package/dist/platform-contact/schema.d.ts +0 -30
  225. package/dist/platform-contact/schema.d.ts.map +0 -1
  226. package/dist/posts/index.d.ts +0 -118
  227. package/dist/posts/index.d.ts.map +0 -1
  228. package/dist/role/schema.d.ts +0 -70
  229. package/dist/role/schema.d.ts.map +0 -1
  230. package/dist/tag/schema.d.ts +0 -21
  231. package/dist/tag/schema.d.ts.map +0 -1
  232. package/dist/tag-group/schema.d.ts +0 -24
  233. package/dist/tag-group/schema.d.ts.map +0 -1
  234. package/dist/telephony-cdr/index.d.ts +0 -4
  235. package/dist/telephony-cdr/index.d.ts.map +0 -1
  236. package/dist/telephony-cdr/schema.d.ts +0 -75
  237. package/dist/telephony-cdr/schema.d.ts.map +0 -1
  238. package/dist/telephony-cdr/validation.d.ts +0 -48
  239. package/dist/telephony-cdr/validation.d.ts.map +0 -1
  240. package/dist/telephony-live-queue-call/schema.d.ts +0 -27
  241. package/dist/telephony-live-queue-call/schema.d.ts.map +0 -1
  242. package/dist/telephony-queue-call-count/schema.d.ts +0 -51
  243. package/dist/telephony-queue-call-count/schema.d.ts.map +0 -1
  244. package/dist/ticket/schema.d.ts +0 -51
  245. package/dist/ticket/schema.d.ts.map +0 -1
  246. package/dist/upload/schema.d.ts +0 -30
  247. package/dist/upload/schema.d.ts.map +0 -1
  248. package/dist/user/schema.d.ts +0 -140
  249. package/dist/user/schema.d.ts.map +0 -1
  250. package/dist/widget/schema.d.ts +0 -33
  251. package/dist/widget/schema.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/contract.ts","../src/auth/index.ts","../src/base-contract.ts","../src/user/schema.ts","../src/role/schema.ts","../src/permission/schema.ts","../src/mail/mail-contract.ts","../src/mail/room-contract.ts","../src/mail/message-contract.ts","../src/mail/account-contract.ts","../src/mail/schemas/account.schema.ts","../src/mail/mail-server.ts","../src/cx-log/index.ts","../src/cx-log/schema.ts","../src/cx-log/validation.ts","../src/mail/email-engine-webhooks-events.contract.ts","../src/category/index.ts","../utils.ts","../src/category/schema.ts","../src/category/validation.ts"],"sourcesContent":["import { initContract } from '@ts-rest/core';\nimport { authContract } from './auth';\nimport { mailContract } from './mail/mail-contract';\nimport { cxLogContract } from './cx-log';\nimport { emailEngineWebhooksEventsContract } from './mail/email-engine-webhooks-events.contract';\nimport { categoryContract } from './category';\n\nexport const apiContract = initContract().router({\n auth: authContract,\n mail: mailContract,\n cxLog: cxLogContract,\n emailEngineWebhooks: emailEngineWebhooksEventsContract,\n category: categoryContract,\n});\n","import { initContract } from '@ts-rest/core';\nimport { z } from 'zod';\nimport {\n DefaultHeaderSchema,\n DefaultNotFoundSchema,\n DefaultSuccessResponseSchema,\n DefaultUnauthorizedSchema,\n DefaultUnprocessibleSchema,\n} from '../base-contract';\nimport { UserSchema } from '../user/schema';\n\nexport const authContract = initContract().router(\n {\n refreshToken: {\n method: 'POST',\n path: '/refresh-token',\n headers: DefaultHeaderSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n accessToken: z.string(),\n refreshToken: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 404: DefaultNotFoundSchema,\n 422: DefaultUnprocessibleSchema,\n },\n body: null,\n summary: 'Refresh token',\n },\n exchangeToken: {\n method: 'POST',\n path: '/exchange-token',\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n accessToken: z.string(),\n refreshToken: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 404: DefaultNotFoundSchema,\n 422: DefaultUnprocessibleSchema,\n },\n body: null,\n headers: DefaultHeaderSchema,\n summary: 'Exchange jwt token',\n },\n logout: {\n method: 'POST',\n path: '/logout',\n headers: DefaultHeaderSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 404: DefaultNotFoundSchema,\n 422: DefaultUnprocessibleSchema,\n },\n body: null,\n summary: 'Logout',\n },\n me: {\n method: 'GET',\n path: '/me',\n headers: DefaultHeaderSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n user: UserSchema,\n }),\n 401: DefaultUnauthorizedSchema,\n 404: DefaultNotFoundSchema,\n 422: DefaultUnprocessibleSchema,\n },\n summary: 'Get current user',\n },\n },\n { pathPrefix: 'auth' },\n);\n","import z from 'zod';\n\nexport const DefaultHeaderSchema = z.object({\n // biome-ignore lint/style/useNamingConvention: <explanation>\n 'x-tenant': z.string({ required_error: 'Tenant id is required' }),\n authorization: z.string(),\n});\n\n//#region default entity schema\nexport const DefaultEntitySchema = z.object({\n id: z.string().uuid(),\n createdAt: z.date(),\n updatedAt: z.date(),\n deletedAt: z.date(),\n});\n//#endregion\n\n//#region Default Query Params\nexport const DefaultQueryParamsSchema = z.object({\n page: z.number().positive().default(1),\n pageSize: z.number().positive().default(10),\n});\n//#endregion\n\n// #region base response schema\nexport const DefaultSuccessResponseSchema = z.object({\n requestId: z.string(),\n});\n\nexport const DefaultErrorResponseSchema = z.object({\n message: z.string(),\n error: z.any(),\n});\n\nexport const DefaultNotFoundSchema = DefaultErrorResponseSchema;\n\nexport const DefaultUnprocessibleSchema = DefaultErrorResponseSchema;\n\nexport const DefaultUnauthorizedSchema = DefaultErrorResponseSchema;\nexport const defaultResponses = {\n 401: DefaultUnauthorizedSchema,\n 404: DefaultNotFoundSchema,\n 422: DefaultUnprocessibleSchema,\n};\n// #endregion\n","import z from 'zod';\nimport { DefaultEntitySchema } from '../base-contract';\nimport { RoleSchema } from '../role/schema';\n\nexport const UserSchema = DefaultEntitySchema.extend({\n name: z.string(),\n email: z.string().email(),\n address: z.string().nullable(),\n phone: z.string().nullable(),\n notificationCount: z.number().nullable(),\n roles: z.array(RoleSchema),\n});\n","import z from 'zod';\nimport { DefaultEntitySchema } from '../base-contract';\nimport { PermissionSchema } from '../permission/schema';\n\nexport const RoleSchema = DefaultEntitySchema.extend({\n systemName: z.string(),\n displayName: z.string(),\n description: z.string().nullable(),\n permissions: z.array(PermissionSchema),\n});\n","import z from 'zod';\nimport { DefaultEntitySchema } from '../base-contract';\n\nexport const PermissionSchema = DefaultEntitySchema.extend({\n systemName: z.string(),\n displayName: z.string(),\n description: z.string().nullable(),\n});\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultNotFoundSchema,\n DefaultSuccessResponseSchema,\n DefaultUnauthorizedSchema,\n DefaultUnprocessibleSchema,\n} from '../base-contract';\nimport { roomContract } from './room-contract';\nimport { messageContract } from './message-contract';\nimport { accountContract } from './account-contract';\nimport { serverContract } from './mail-server';\nimport z from 'zod';\n\nexport const mailContract = initContract().router({\n room: roomContract,\n message: messageContract,\n account: accountContract,\n server: serverContract,\n});\n","import { initContract } from '@ts-rest/core';\nimport {\n defaultResponses,\n DefaultSuccessResponseSchema,\n} from '../base-contract';\nimport z from 'zod';\n\nexport const roomContract = initContract().router(\n {\n create: {\n method: 'POST',\n path: '/',\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Create a new room for new incoming mail',\n },\n get: {\n method: 'GET',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n summary: 'Get a mail room by id',\n },\n update: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Update a mail room by id',\n },\n\n delete: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Delete a mail room by id',\n },\n },\n {\n pathPrefix: '/room',\n },\n);\n","import { initContract } from '@ts-rest/core';\nimport {\n defaultResponses,\n DefaultSuccessResponseSchema,\n} from '../base-contract';\nimport z from 'zod';\n\nexport const messageContract = initContract().router(\n {\n create: {\n method: 'POST',\n path: '/',\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Add a new message into a room',\n },\n get: {\n method: 'GET',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n summary: 'Get a message by id',\n },\n update: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Update a message by id',\n },\n\n delete: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Delete a message by id',\n },\n },\n {\n pathPrefix: '/message',\n },\n);\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultHeaderSchema,\n DefaultSuccessResponseSchema,\n defaultResponses,\n} from '../base-contract';\nimport z from 'zod';\nimport { accountContractsSchemas } from './schemas/account.schema';\n\nexport const accountContract = initContract().router(\n {\n //#region ........register account\n create: {\n method: 'POST',\n path: '',\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n // data: accountContractsSchemas.create.output,\n message: z.string(),\n }),\n 400: z.object({\n message: z.string(),\n }),\n 409: z.object({\n message: z.string(),\n }),\n 500: z.object({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: accountContractsSchemas.create.input,\n summary: 'Register a new mail account',\n },\n //#endregion register account\n\n //#region ........get account\n getById: {\n method: 'GET',\n path: '/:id',\n pathParams: accountContractsSchemas.getById.input,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n data: accountContractsSchemas.getById.output,\n }),\n ...defaultResponses,\n },\n summary: 'Get a account by id',\n },\n //#endregion get account\n\n //#region ........get all account\n //TODO: add pagination parameters\n getAll: {\n method: 'GET',\n path: '',\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n data: z.any(),\n // data: accountContractsSchemas.getAll.output,\n }),\n ...defaultResponses,\n },\n summary: 'Get al accounts',\n },\n //#endregion get all accounts\n\n //#region ........update account\n update: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string().uuid(),\n }),\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n data: accountContractsSchemas.update.output,\n }),\n\n ...defaultResponses,\n },\n body: accountContractsSchemas.update.input.partial(),\n summary: 'Update a account by id',\n },\n //#endregion update account\n\n //#region ........disconnect account\n disconnect: {\n method: 'PATCH',\n path: '/:id/disconnect',\n pathParams: accountContractsSchemas.disconnect.input,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n data: accountContractsSchemas.disconnect.output,\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Disconnect an account',\n },\n //#endregion disconnect account\n\n //#region ........reconnect account\n reconnect: {\n method: 'PATCH',\n path: '/:id/reconnect',\n pathParams: accountContractsSchemas.reconnect.input,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n data: accountContractsSchemas.reconnect.output,\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Reconnect a disconncted account',\n },\n //#endregion reconnect account\n\n //#region ........delete account\n delete: {\n method: 'DELETE',\n path: '/:id',\n pathParams: accountContractsSchemas.delete.input,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Delete an account by id',\n },\n //#endregion delete account\n },\n {\n baseHeaders: DefaultHeaderSchema,\n pathPrefix: 'mail/account',\n },\n);\n","import z from 'zod';\n\nexport const mailServerSchema = z.object({\n id: z.string(),\n created_at: z.string(),\n updated_at: z.string(),\n deletedAt: z.string().nullable(),\n tenant_id: z.string(),\n name: z.string(),\n smtpHost: z.string(),\n smtpPort: z.string(),\n smtpTlsPort: z.string(),\n useTlsForSmtp: z.boolean(),\n imapHost: z.string(),\n imapPort: z.string(),\n imapTlsPort: z.string(),\n useTlsForImap: z.boolean(),\n});\n\nexport const mailAccountSchema = z.object({\n id: z.string(),\n created_at: z.string(),\n updated_at: z.string(),\n deletedAt: z.date().nullable(),\n tenant_id: z.string(),\n name: z.string(),\n address: z.string(),\n accountId: z.string(),\n mailServerId: z.string(),\n mailServer: mailServerSchema,\n state: z.union([\n z.literal('init'),\n z.literal('syncing'),\n z.literal('connecting'),\n z.literal('connected'),\n z.literal('disconnected'),\n z.literal('authenticationError'),\n z.literal('connectError'),\n z.literal('unset'),\n ]),\n});\n\nexport const accountContractsSchemas = {\n create: {\n input: z.object({\n address: z.string().email('Email address must be valid email.'),\n name: z.string().min(1, 'Account name cannot be empty.'),\n password: z.string().min(1, 'Password cannot be empty.'),\n mailServerId: z.string().uuid('Invalid mail_server_id'),\n }),\n },\n getById: {\n input: z.object({\n id: z.string().uuid(),\n }),\n output: mailAccountSchema,\n },\n getAll: {\n output: z.array(mailAccountSchema),\n },\n update: {\n input: mailAccountSchema,\n output: mailAccountSchema,\n },\n disconnect: {\n input: z.object({\n id: z.string().uuid(),\n }),\n output: mailAccountSchema,\n },\n reconnect: {\n input: z.object({\n id: z.string(),\n }),\n output: mailAccountSchema,\n },\n delete: {\n input: z.object({\n id: z.string(),\n }),\n output: mailAccountSchema,\n },\n};\n","import { initContract } from '@ts-rest/core';\nimport {\n defaultResponses,\n DefaultSuccessResponseSchema,\n} from '../base-contract';\nimport z from 'zod';\n\nexport const serverContract = initContract().router(\n {\n create: {\n method: 'POST',\n path: '/',\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Register a new mail server',\n },\n get: {\n method: 'GET',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n summary: 'Get a mail server by id',\n },\n update: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Update a mail server by id',\n },\n\n delete: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Delete a mail server by id',\n },\n },\n {\n pathPrefix: '/server',\n },\n);\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultHeaderSchema,\n DefaultSuccessResponseSchema,\n DefaultUnauthorizedSchema,\n} from '../base-contract';\nimport z from 'zod';\nimport { CxLogSchema } from './schema';\nimport { GetAllCxLogQueryParamsSchema } from './validation';\n\nexport type GetAllCxLogRequest = z.infer<typeof GetAllCxLogQueryParamsSchema>;\n\nexport const cxLogContract = initContract().router({\n findAll: {\n method: 'GET',\n path: '/cx-logs',\n headers: DefaultHeaderSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n total: z.number(),\n page: z.number(),\n pageSize: z.number(),\n cxLogs: z.array(CxLogSchema),\n }),\n 401: DefaultUnauthorizedSchema,\n },\n query: GetAllCxLogQueryParamsSchema,\n summary: 'Get all cx-logs',\n },\n});\n","import z from 'zod';\nimport { DefaultEntitySchema } from '../base-contract';\n\nexport const CxLogSchema = DefaultEntitySchema.extend({\n caseId: z.number(),\n entityId: z.string().uuid(),\n entityName: z.string(),\n contactId: z.string().uuid().nullable(),\n channel: z.string().nullable(),\n queueId: z.string().uuid().nullable(),\n agentId: z.string().uuid().nullable(),\n direction: z.string().nullable(),\n startedDate: z.date().nullable(),\n handledTime: z.number().nullable(),\n firstResponseTime: z.number().nullable(),\n disposition: z.string().nullable(),\n});\n","import z from 'zod';\nimport { DefaultQueryParamsSchema } from '../base-contract';\n\n//#region cx-logs query params\nconst CustomFieldQueryParamsSchema = z.object({\n attributeId: z.string(),\n value: z.string().or(z.array(z.string())),\n type: z.string(),\n});\n\nexport const GetAllCxLogQueryParamsSchema = DefaultQueryParamsSchema.extend({\n contactId: z.string().uuid().optional(),\n channelIds: z.string().uuid().optional(),\n queueIds: z.string().uuid().optional(),\n direction: z.enum(['inbound', 'outbound']).array().optional(),\n sentimentScore: z.enum(['positive', 'negative']).array().optional(),\n csatScore: z.string().optional(),\n sla: z.enum(['meet', 'unmeet']).array().optional(),\n caseId: z.string().optional(),\n name: z.string().optional(),\n email: z.string().optional(),\n phone: z.string().optional(),\n address: z.string().optional(),\n company: z.string().optional(),\n agentIds: z.string().array().optional(),\n channel: z.string().array().optional(),\n disposition: z.string().array().optional(),\n notes: z.string().optional(),\n contactLabels: z.string().array().optional(),\n tags: z.string().array().optional(),\n selectedDate: z.string().optional(),\n customFields: z.array(CustomFieldQueryParamsSchema).optional(),\n});\n//#endregion\n","import { initContract } from '@ts-rest/core';\nimport { DefaultSuccessResponseSchema } from '../base-contract';\nimport z from 'zod';\n\nexport const emailEngineWebhooksEventsContract = initContract().router({\n handleWebhooksEvents: {\n method: 'POST',\n path: '/email_engine/webhooks',\n // we don't need to respone anything but added responses just for solving type error\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n },\n body: null,\n summary:\n 'Handle email engine webhooks events such as authenticationSuccess, messageNew',\n },\n});\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultErrorResponseSchema,\n DefaultHeaderSchema,\n DefaultSuccessResponseSchema,\n} from '../base-contract';\nimport z from 'zod';\nimport { withPagination } from '../../utils';\nimport { categoryLevelSchema, categorySchema } from './schema';\nimport {\n createCategorySchema,\n updateCategorySchema,\n createCategoryLevelSchema,\n updateCategoryLevelSchema,\n} from './validation';\n\n// Request types\nexport type CreateCategoryRequest = z.infer<typeof createCategorySchema>;\nexport type UpdateCategoryRequest = z.infer<typeof updateCategorySchema>;\nexport type CreateCategoryLevelRequest = z.infer<\n typeof createCategoryLevelSchema\n>;\nexport type UpdateCategoryLevelRequest = z.infer<\n typeof updateCategoryLevelSchema\n>;\n\nexport const categoryContract = initContract().router(\n {\n createCategory: {\n method: 'POST',\n path: '',\n headers: DefaultHeaderSchema,\n body: createCategorySchema,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n category: categorySchema,\n }),\n 500: DefaultErrorResponseSchema,\n },\n },\n getCategories: {\n method: 'GET',\n path: '',\n query: z\n .object({\n page: z.coerce.number().optional(),\n pageSize: z.coerce.number().optional(),\n })\n .optional(),\n headers: DefaultHeaderSchema,\n responses: {\n 200: withPagination(categorySchema),\n 500: DefaultErrorResponseSchema,\n },\n },\n updateCategory: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema.extend({\n category: categorySchema,\n }),\n body: updateCategorySchema,\n responses: {\n 200: DefaultSuccessResponseSchema,\n 500: DefaultErrorResponseSchema,\n },\n },\n deleteCategory: {\n method: 'DELETE',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n body: z.any().optional(),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({ message: z.string() }),\n 500: DefaultErrorResponseSchema,\n },\n },\n createCategoryLevel: {\n method: 'POST',\n path: '/level',\n headers: DefaultHeaderSchema,\n body: createCategoryLevelSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n categoryLevel: categoryLevelSchema,\n }),\n 500: DefaultErrorResponseSchema,\n },\n },\n updateCategoryLevel: {\n method: 'PATCH',\n path: '/level/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n body: updateCategoryLevelSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n categoryLevel: categoryLevelSchema,\n }),\n 500: DefaultErrorResponseSchema,\n },\n },\n },\n {\n pathPrefix: 'categories',\n },\n);\n","import { z } from 'zod';\n\nexport const paginationSchema = z.object({\n page: z.number().default(1),\n pageSize: z.number().default(10),\n total: z.number(),\n lastPage: z.number().optional().nullable(),\n});\n\nexport const withPagination = <T>(dataSchema: z.ZodSchema<T>) => {\n return paginationSchema.extend({\n data: z.array(dataSchema),\n });\n};\n","import { z } from 'zod';\n\n// We allow only 3 levels.\nexport const categoryLevelSchema = z.union([\n z.literal(1),\n z.literal(2),\n z.literal(3),\n]);\n\nexport const categorySchema = z.object({\n id: z.string(),\n value: z.string(),\n level: categoryLevelSchema,\n parentId: z.string().nullable(),\n childCategoryList: z.array(\n z.object({\n id: z.string(),\n value: z.string(),\n level: categoryLevelSchema,\n parentId: z.string().nullable(),\n childCategoryList: z.array(\n z.object({\n id: z.string(),\n value: z.string(),\n level: categoryLevelSchema,\n parentId: z.string().nullable(),\n childCategoryList: z.array(z.any()), // This is an empty array.\n }),\n ),\n }),\n ),\n});\n","import { z } from 'zod';\nimport { categoryLevelSchema } from './schema';\n\nexport const createCategorySchema = z.object({\n value: z.string(),\n level: categoryLevelSchema,\n parentId: z.string().nullable(),\n});\n\nexport const updateCategorySchema = z.object({ value: z.string() });\n\nexport const createCategoryLevelSchema = z.object({\n name: z.string(),\n level: categoryLevelSchema,\n});\n\nexport const updateCategoryLevelSchema = z.object({\n id: z.string(),\n name: z.string(),\n level: categoryLevelSchema,\n});\n"],"mappings":"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","names":["initContract","z","z","z","z","z","z","z","z","initContract","initContract","z","initContract","initContract","z","initContract","initContract","z","z","initContract","z","initContract","z","initContract","initContract","initContract","z","z","z","z","z","initContract","z","initContract","z","initContract","initContract","z","z","z","z","z","initContract","z","initContract"]}
1
+ {"version":3,"sources":["../src/contract.ts","../src/attribute/index.ts","../src/base-contract.ts","../src/attribute/schema.ts","../src/attribute/validation.ts","../src/auth/index.ts","../src/user/schema.ts","../src/role/schema.ts","../src/permission/schema.ts","../src/category/index.ts","../utils.ts","../src/category/schema.ts","../src/category/validation.ts","../src/cx-log/index.ts","../src/cx-log/schema.ts","../src/cx-log/validation.ts","../src/line/index.ts","../src/line/schema.ts","../src/line/validation.ts","../src/mail/email-engine-webhooks-events.contract.ts","../src/mail/mail-contract.ts","../src/mail/room-contract.ts","../src/mail/message-contract.ts","../src/mail/account-contract.ts","../src/mail/schemas/account.schema.ts","../src/mail/mail-server.ts","../src/tag/index.ts","../src/tag/validation.ts","../src/tag/schema.ts","../src/extension/index.ts","../src/extension/schema.ts","../src/extension/validation.ts","../src/permission/index.ts","../src/role/index.ts","../src/role/validation.ts","../src/user/index.ts","../src/widget/index.ts","../src/widget/schema.ts","../src/widget/validation.ts","../src/telephony-extension/index.ts","../src/telephony-extension/schema.ts"],"sourcesContent":["import { initContract } from '@ts-rest/core';\nimport { attributeContract } from './attribute';\nimport { authContract } from './auth';\nimport { categoryContract } from './category';\nimport { cxLogContract } from './cx-log';\nimport { lineContract } from './line';\nimport { emailEngineWebhooksEventsContract } from './mail/email-engine-webhooks-events.contract';\nimport { mailContract } from './mail/mail-contract';\nimport { tagContract } from './tag';\nimport { extensionContract } from './extension';\nimport { permissionContract } from './permission';\nimport { roleContract } from './role';\nimport { userContract } from './user';\nimport { widgetContract } from './widget/index';\nimport { telephonyExtensionContract } from './telephony-extension/index';\n\nexport const apiContract = initContract().router({\n auth: authContract,\n mail: mailContract,\n cxLog: cxLogContract,\n permission: permissionContract,\n role: roleContract,\n user: userContract,\n extension: extensionContract,\n widget: widgetContract,\n emailEngineWebhooks: emailEngineWebhooksEventsContract,\n category: categoryContract,\n telephonyExtensionContract: telephonyExtensionContract,\n line: lineContract,\n attribute: attributeContract,\n tag: tagContract,\n});\n","import { initContract } from '@ts-rest/core';\nimport { z } from 'zod';\nimport {\n DefaultErrorResponseSchema,\n DefaultHeaderSchema,\n DefaultSuccessResponseSchema,\n} from '../base-contract';\nimport { attributeSchema } from './schema';\nimport {\n createAttributeSchema,\n getAttributesSchema,\n updateAttributeSchema,\n updatePositionSchema,\n} from './validation';\n\n// Request types\nexport type Attribute = z.infer<typeof attributeSchema>;\nexport type CreateAttributeRequest = z.infer<typeof createAttributeSchema>;\nexport type GetAttributesRequest = z.infer<typeof getAttributesSchema>;\nexport type UpdateAttributeRequest = z.infer<typeof updateAttributeSchema>;\nexport type UpdatePositionRequest = z.infer<typeof updatePositionSchema>;\n\nexport const attributeContract = initContract().router(\n {\n createAttribute: {\n method: 'POST',\n path: '',\n body: createAttributeSchema,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n attribute: attributeSchema,\n }),\n 500: DefaultErrorResponseSchema,\n },\n headers: DefaultHeaderSchema,\n },\n getAttributes: {\n method: 'GET',\n path: '',\n query: getAttributesSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n attributes: z.array(attributeSchema),\n }),\n 500: DefaultErrorResponseSchema,\n },\n headers: DefaultHeaderSchema,\n },\n updateAttribute: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n body: updateAttributeSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n attribute: attributeSchema,\n }),\n 500: DefaultErrorResponseSchema,\n },\n headers: DefaultHeaderSchema,\n },\n changeVisibility: {\n method: 'PATCH',\n path: '/visibility/:id',\n pathParams: z.object({ id: z.string() }),\n body: z.object({ isVisible: z.boolean() }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string().optional(),\n }),\n 500: DefaultErrorResponseSchema,\n },\n headers: DefaultHeaderSchema,\n },\n changeRequired: {\n method: 'PATCH',\n path: '/required/:id',\n pathParams: z.object({ id: z.string() }),\n body: z.object({ isRequired: z.boolean() }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string().optional(),\n }),\n 500: DefaultErrorResponseSchema,\n },\n headers: DefaultHeaderSchema,\n },\n updatePosition: {\n method: 'PATCH',\n path: '/position',\n body: updatePositionSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string().optional(),\n }),\n 500: DefaultErrorResponseSchema,\n },\n headers: DefaultHeaderSchema,\n },\n deleteAttribute: {\n method: 'DELETE',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n body: z.any().optional(),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({ message: z.string() }),\n 500: DefaultErrorResponseSchema,\n },\n headers: DefaultHeaderSchema,\n },\n },\n {\n pathPrefix: 'attributes',\n },\n);\n","import z from 'zod';\n\nexport const DefaultHeaderSchema = z\n .object({\n // biome-ignore lint/style/useNamingConvention: <explanation>\n 'x-tenant': z.string({ required_error: 'Tenant id is required' }),\n authorization: z.string(),\n })\n .optional()\n .nullable();\n\n//#region default entity schema\nexport const DefaultEntitySchema = z.object({\n id: z.string().uuid(),\n createdAt: z.date(),\n updatedAt: z.date(),\n deletedAt: z.date().nullable(),\n});\n//#endregion\n\n//#region Default Query Params\nexport const DefaultQueryParamsSchema = z.object({\n page: z.number().positive().default(1),\n pageSize: z.number().positive().default(10),\n});\n//#endregion\n\n// #region base response schema\nexport const DefaultSuccessResponseSchema = z.object({\n requestId: z.string(),\n});\n\nexport const DefaultErrorResponseSchema = z.object({\n message: z.string(),\n error: z.any(),\n});\n\nexport const DefaultNotFoundSchema = DefaultErrorResponseSchema;\n\nexport const DefaultUnprocessibleSchema = DefaultErrorResponseSchema;\n\nexport const DefaultUnauthorizedSchema = DefaultErrorResponseSchema;\nexport const defaultResponses = {\n 401: DefaultUnauthorizedSchema,\n 404: DefaultNotFoundSchema,\n 422: DefaultUnprocessibleSchema,\n};\n// #endregion\n","import z from 'zod';\nimport { DefaultEntitySchema } from '../base-contract';\n\nexport const attributeTypeSchema = z.union([\n z.literal('text'),\n z.literal('textarea'),\n z.literal('date'),\n z.literal('select'),\n z.literal('link'),\n z.literal('attachment'),\n]);\n\nexport const attributeOptionSchema = z.object({\n label: z.string(),\n value: z.string(),\n isDefault: z.boolean(),\n position: z.number(),\n});\n\nconst attributeGroupSchema = DefaultEntitySchema.extend({\n systemName: z.string(),\n displayName: z.string(),\n});\n\nexport const attributeSchema = DefaultEntitySchema.extend({\n systemName: z.string(),\n type: attributeTypeSchema,\n position: z.number(),\n isDefault: z.boolean(),\n isArchived: z.boolean(),\n isRequired: z.boolean(),\n isUnique: z.boolean(),\n options: z.array(attributeOptionSchema),\n group: attributeGroupSchema,\n});\n","import { z } from 'zod';\nimport { attributeOptionSchema, attributeTypeSchema } from './schema';\n\nexport const createAttributeSchema = z.object({\n name: z.string(),\n type: attributeTypeSchema,\n isRequired: z.boolean(),\n isVisible: z.boolean(),\n group: z.string(),\n options: z.array(attributeOptionSchema),\n});\n\nexport const getAttributesSchema = z.object({\n group: z.string(),\n visibleOnly: z.boolean().default(false),\n});\n\nexport const updateAttributeSchema = createAttributeSchema;\n\nexport const updatePositionSchema = z.object({\n attributes: z.array(\n z.object({\n // To update the attribute position, the backend need the IDs and the positions.\n attributeId: z.string(),\n position: z.number(),\n }),\n ),\n});\n","import { initContract } from '@ts-rest/core';\nimport { z } from 'zod';\nimport {\n DefaultHeaderSchema,\n DefaultNotFoundSchema,\n DefaultSuccessResponseSchema,\n DefaultUnauthorizedSchema,\n DefaultUnprocessibleSchema,\n} from '../base-contract';\nimport { UserSchema } from '../user/schema';\n\nexport const authContract = initContract().router(\n {\n refreshToken: {\n method: 'POST',\n path: '/refresh-token',\n headers: DefaultHeaderSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n accessToken: z.string(),\n refreshToken: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 404: DefaultNotFoundSchema,\n 422: DefaultUnprocessibleSchema,\n },\n body: null,\n summary: 'Refresh token',\n },\n\n exchangeToken: {\n method: 'POST',\n path: '/exchange-token',\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n accessToken: z.string(),\n refreshToken: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 404: DefaultNotFoundSchema,\n 422: DefaultUnprocessibleSchema,\n },\n body: null,\n headers: DefaultHeaderSchema,\n summary: 'Exchange jwt token',\n },\n\n logout: {\n method: 'POST',\n path: '/logout',\n headers: DefaultHeaderSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 404: DefaultNotFoundSchema,\n 422: DefaultUnprocessibleSchema,\n },\n body: null,\n summary: 'Logout',\n },\n\n me: {\n method: 'GET',\n path: '/me',\n headers: DefaultHeaderSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n user: UserSchema,\n }),\n 401: DefaultUnauthorizedSchema,\n 404: DefaultNotFoundSchema,\n 422: DefaultUnprocessibleSchema,\n },\n summary: 'Get current user',\n },\n\n getAuthUserRole: {\n method: 'GET',\n path: '/auth/user/role',\n headers: DefaultHeaderSchema,\n responses: {\n 200: z.array(z.string()),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n },\n summary: 'Get role by auth user which mean current login user roles',\n },\n },\n { pathPrefix: 'auth' },\n);\n","import z from 'zod';\nimport { DefaultEntitySchema } from '../base-contract';\nimport { ExtensionSchema } from '../extension/schema';\nimport { RoleSchema } from '../role/schema';\n\nexport const UserSchema = DefaultEntitySchema.extend({\n name: z.string(),\n email: z.string().email(),\n address: z.string().nullable(),\n phone: z.string().nullable(),\n notificationCount: z.number().nullable(),\n roles: z.array(RoleSchema),\n});\n","import z from 'zod';\nimport { DefaultEntitySchema } from '../base-contract';\nimport { PermissionSchema } from '../permission/schema';\n\nexport const RoleSchema = DefaultEntitySchema.extend({\n systemName: z.string(),\n displayName: z.string(),\n description: z.string().nullable(),\n permissions: z.array(PermissionSchema),\n});\n","import z from 'zod';\nimport { DefaultEntitySchema } from '../base-contract';\n\nexport const PermissionSchema = DefaultEntitySchema.extend({\n systemName: z.string(),\n displayName: z.string(),\n description: z.string().nullable(),\n});\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultErrorResponseSchema,\n DefaultHeaderSchema,\n DefaultSuccessResponseSchema,\n} from '../base-contract';\nimport z from 'zod';\nimport { withPagination } from '../../utils';\nimport { categoryLevelObjectSchema, categorySchema } from './schema';\nimport {\n createCategorySchema,\n updateCategorySchema,\n createCategoryLevelSchema,\n updateCategoryLevelSchema,\n} from './validation';\n\n// Request types\nexport type Category = z.infer<typeof categorySchema>;\nexport type CreateCategoryRequest = z.infer<typeof createCategorySchema>;\nexport type UpdateCategoryRequest = z.infer<typeof updateCategorySchema>;\nexport type CreateCategoryLevelRequest = z.infer<\n typeof createCategoryLevelSchema\n>;\nexport type UpdateCategoryLevelRequest = z.infer<\n typeof updateCategoryLevelSchema\n>;\n\nexport const categoryContract = initContract().router(\n {\n createCategory: {\n method: 'POST',\n path: '',\n headers: DefaultHeaderSchema,\n body: createCategorySchema,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n category: categorySchema,\n }),\n 500: DefaultErrorResponseSchema,\n },\n },\n getCategories: {\n method: 'GET',\n path: '',\n query: z\n .object({\n page: z.coerce.number().optional(),\n pageSize: z.coerce.number().optional(),\n })\n .optional(),\n headers: DefaultHeaderSchema,\n responses: {\n 200: withPagination(categorySchema),\n 500: DefaultErrorResponseSchema,\n },\n },\n updateCategory: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n body: updateCategorySchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({ category: categorySchema }),\n 500: DefaultErrorResponseSchema,\n },\n },\n deleteCategory: {\n method: 'DELETE',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n body: z.any().optional(),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string().optional(),\n }),\n 500: DefaultErrorResponseSchema,\n },\n },\n createCategoryLevel: {\n method: 'POST',\n path: '/level',\n headers: DefaultHeaderSchema,\n body: createCategoryLevelSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n categoryLevel: categoryLevelObjectSchema,\n }),\n 500: DefaultErrorResponseSchema,\n },\n },\n updateCategoryLevel: {\n method: 'PATCH',\n path: '/level/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n body: updateCategoryLevelSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n categoryLevel: categoryLevelObjectSchema,\n }),\n 500: DefaultErrorResponseSchema,\n },\n },\n },\n {\n pathPrefix: 'categories',\n },\n);\n","import { z } from 'zod';\n\nexport const paginationSchema = z.object({\n page: z.number().default(1),\n pageSize: z.number().default(10),\n total: z.number(),\n lastPage: z.number().optional().nullable(),\n});\n\nexport const withPagination = <T>(dataSchema: z.ZodSchema<T>) => {\n return paginationSchema.extend({\n data: z.array(dataSchema),\n });\n};\n","import { z } from 'zod';\nimport { DefaultEntitySchema } from '../base-contract';\n\n// We allow only 3 levels.\nexport const categoryLevelSchema = z.union([\n z.literal(1),\n z.literal(2),\n z.literal(3),\n]);\n\nexport const categorySchema = DefaultEntitySchema.extend({\n value: z.string(),\n level: categoryLevelSchema,\n parentId: z.string().nullable(),\n childCategoryList: z.array(\n z.object({\n id: z.string(),\n value: z.string(),\n level: categoryLevelSchema,\n parentId: z.string().nullable(),\n childCategoryList: z.array(\n z.object({\n id: z.string(),\n value: z.string(),\n level: categoryLevelSchema,\n parentId: z.string().nullable(),\n childCategoryList: z.array(z.any()), // This is an empty array.\n }),\n ),\n }),\n ),\n});\n\nexport const categoryLevelObjectSchema = z.object({\n id: z.string(),\n name: z.string(),\n level: categoryLevelSchema,\n});\n","import { z } from 'zod';\nimport { categoryLevelSchema } from './schema';\n\nexport const createCategorySchema = z.object({\n value: z.string(),\n level: categoryLevelSchema,\n parentId: z.string().nullable(),\n});\n\nexport const updateCategorySchema = z.object({ value: z.string() });\n\nexport const createCategoryLevelSchema = z.object({\n name: z.string(),\n level: categoryLevelSchema,\n});\n\nexport const updateCategoryLevelSchema = z.object({\n id: z.string(),\n name: z.string(),\n level: categoryLevelSchema,\n});\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultHeaderSchema,\n DefaultSuccessResponseSchema,\n DefaultUnauthorizedSchema,\n} from '../base-contract';\nimport z from 'zod';\nimport { CxLogSchema } from './schema';\nimport { GetAllCxLogQueryParamsSchema } from './validation';\n\nexport type CXLog = z.infer<typeof CxLogSchema>;\nexport type GetAllCxLogRequest = z.infer<typeof GetAllCxLogQueryParamsSchema>;\n\nexport const cxLogContract = initContract().router({\n findAll: {\n method: 'GET',\n path: '/cx-logs',\n headers: DefaultHeaderSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n total: z.number(),\n page: z.number(),\n pageSize: z.number(),\n cxLogs: z.array(CxLogSchema),\n }),\n 401: DefaultUnauthorizedSchema,\n },\n query: GetAllCxLogQueryParamsSchema,\n summary: 'Get all cx-logs',\n },\n});\n","import z from 'zod';\nimport { DefaultEntitySchema } from '../base-contract';\n\nexport const CxLogSchema = DefaultEntitySchema.extend({\n caseId: z.number(),\n entityId: z.string().uuid(),\n entityName: z.string(),\n contactId: z.string().uuid().nullable(),\n channel: z.string().nullable(),\n queueId: z.string().uuid().nullable(),\n agentId: z.string().uuid().nullable(),\n direction: z.string().nullable(),\n startedDate: z.date().nullable(),\n handledTime: z.number().nullable(),\n firstResponseTime: z.number().nullable(),\n disposition: z.string().nullable(),\n});\n","import z from 'zod';\nimport { DefaultQueryParamsSchema } from '../base-contract';\n\n//#region cx-logs query params\nconst sentimentScoreSchema = z.union([\n z.literal('positive'),\n z.literal('negative'),\n]);\n\nconst CustomFieldQueryParamsSchema = z.object({\n attributeId: z.string(),\n value: z.union([z.string(), z.array(z.string())]),\n type: z.string().optional(),\n});\n\nexport const GetAllCxLogQueryParamsSchema = DefaultQueryParamsSchema.extend({\n contactId: z.string().uuid(),\n caseId: z.string(),\n channelIds: z.array(z.string().uuid()),\n queueId: z.array(z.string()),\n agentIds: z.array(z.string()),\n direction: z.array(z.union([z.literal('inbound'), z.literal('outbound')])),\n disposition: z.array(z.string()),\n sentimentScore: z.array(sentimentScoreSchema),\n csatScore: z.string(),\n sla: z.array(z.union([z.literal('meet'), z.literal('unmeet')])),\n tags: z.array(z.string()), // General tags\n // Default contact attributes\n name: z.string(),\n contactLabels: z.array(z.string()),\n email: z.string(),\n channel: z.array(z.string()),\n phone: z.string(),\n notes: z.string(),\n address: z.string(),\n company: z.array(z.string()),\n // Custom fields\n customFields: z.array(CustomFieldQueryParamsSchema),\n // Date filter\n selectedDate: z.string(),\n})\n .partial()\n .optional();\n//#endregion\n","import { initContract } from '@ts-rest/core';\nimport z from 'zod';\nimport { DefaultErrorResponseSchema, DefaultSuccessResponseSchema } from '../base-contract';\nimport { ConnectLineSchema } from './schema';\nimport { SendLineStickerSchema } from './validation';\n\nexport type SendLineStickerRequest = z.infer<typeof SendLineStickerSchema>\n\nexport const lineContract = initContract().router({\n sendSticker: {\n method: \"POST\",\n path: 'sticker',\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n data: z.any()\n }),\n 500: DefaultErrorResponseSchema\n },\n body: SendLineStickerSchema,\n summary: \"Send sticker to LINE\",\n },\n\n connect: {\n method: \"POST\",\n path: 'connect',\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n data: z.any()\n }),\n 500: DefaultErrorResponseSchema\n },\n body: ConnectLineSchema,\n summary: \"Connect to LINE channel\",\n }\n})\n","import z from 'zod';\n\nexport const ConnectLineSchema = z.object({\n id: z.string(),\n accessToken: z.string()\n});","import z from 'zod';\n\n// #send sticker payload\nexport const SendLineStickerSchema = z.object({\n userId: z.string().uuid(),\n packageId: z.string(),\n stickerId: z.string(),\n accessToken: z.string(),\n})\n","import { initContract } from '@ts-rest/core';\nimport { DefaultSuccessResponseSchema } from '../base-contract';\nimport z from 'zod';\n\nexport const emailEngineWebhooksEventsContract = initContract().router({\n handleWebhooksEvents: {\n method: 'POST',\n path: '/email_engine/webhooks',\n // we don't need to respone anything but added responses just for solving type error\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n },\n body: null,\n summary:\n 'Handle email engine webhooks events such as authenticationSuccess, messageNew',\n },\n});\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultNotFoundSchema,\n DefaultSuccessResponseSchema,\n DefaultUnauthorizedSchema,\n DefaultUnprocessibleSchema,\n} from '../base-contract';\nimport { roomContract } from './room-contract';\nimport { messageContract } from './message-contract';\nimport { accountContract } from './account-contract';\nimport { serverContract } from './mail-server';\nimport z from 'zod';\n\nexport const mailContract = initContract().router({\n room: roomContract,\n message: messageContract,\n account: accountContract,\n server: serverContract,\n});\n","import { initContract } from '@ts-rest/core';\nimport {\n defaultResponses,\n DefaultSuccessResponseSchema,\n} from '../base-contract';\nimport z from 'zod';\n\nexport const roomContract = initContract().router(\n {\n create: {\n method: 'POST',\n path: '/',\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Create a new room for new incoming mail',\n },\n get: {\n method: 'GET',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n summary: 'Get a mail room by id',\n },\n update: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Update a mail room by id',\n },\n\n delete: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Delete a mail room by id',\n },\n },\n {\n pathPrefix: '/room',\n },\n);\n","import { initContract } from '@ts-rest/core';\nimport {\n defaultResponses,\n DefaultSuccessResponseSchema,\n} from '../base-contract';\nimport z from 'zod';\n\nexport const messageContract = initContract().router(\n {\n create: {\n method: 'POST',\n path: '/',\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Add a new message into a room',\n },\n get: {\n method: 'GET',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n summary: 'Get a message by id',\n },\n update: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Update a message by id',\n },\n\n delete: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Delete a message by id',\n },\n },\n {\n pathPrefix: '/message',\n },\n);\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultHeaderSchema,\n DefaultSuccessResponseSchema,\n defaultResponses,\n} from '../base-contract';\nimport z from 'zod';\nimport { accountContractsSchemas } from './schemas/account.schema';\n\nexport const accountContract = initContract().router(\n {\n //#region ........register account\n create: {\n method: 'POST',\n path: '',\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n // data: accountContractsSchemas.create.output,\n message: z.string(),\n }),\n 400: z.object({\n message: z.string(),\n }),\n 409: z.object({\n message: z.string(),\n }),\n 500: z.object({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: accountContractsSchemas.create.input,\n summary: 'Register a new mail account',\n },\n //#endregion register account\n\n //#region ........get account\n getById: {\n method: 'GET',\n path: '/:id',\n pathParams: accountContractsSchemas.getById.input,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n data: accountContractsSchemas.getById.output,\n }),\n ...defaultResponses,\n },\n summary: 'Get a account by id',\n },\n //#endregion get account\n\n //#region ........get all account\n //TODO: add pagination parameters\n getAll: {\n method: 'GET',\n path: '',\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n data: z.any(),\n // data: accountContractsSchemas.getAll.output,\n }),\n ...defaultResponses,\n },\n summary: 'Get al accounts',\n },\n //#endregion get all accounts\n\n //#region ........update account\n update: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string().uuid(),\n }),\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n data: accountContractsSchemas.update.output,\n }),\n\n ...defaultResponses,\n },\n body: accountContractsSchemas.update.input.partial(),\n summary: 'Update a account by id',\n },\n //#endregion update account\n\n //#region ........disconnect account\n disconnect: {\n method: 'PATCH',\n path: '/:id/disconnect',\n pathParams: accountContractsSchemas.disconnect.input,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n data: accountContractsSchemas.disconnect.output,\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Disconnect an account',\n },\n //#endregion disconnect account\n\n //#region ........reconnect account\n reconnect: {\n method: 'PATCH',\n path: '/:id/reconnect',\n pathParams: accountContractsSchemas.reconnect.input,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n data: accountContractsSchemas.reconnect.output,\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Reconnect a disconncted account',\n },\n //#endregion reconnect account\n\n //#region ........delete account\n delete: {\n method: 'DELETE',\n path: '/:id',\n pathParams: accountContractsSchemas.delete.input,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Delete an account by id',\n },\n //#endregion delete account\n },\n {\n baseHeaders: DefaultHeaderSchema,\n pathPrefix: 'mail/account',\n },\n);\n","import z from 'zod';\n\nexport const mailServerSchema = z.object({\n id: z.string(),\n created_at: z.string(),\n updated_at: z.string(),\n deletedAt: z.string().nullable(),\n tenant_id: z.string(),\n name: z.string(),\n smtpHost: z.string(),\n smtpPort: z.string(),\n smtpTlsPort: z.string(),\n useTlsForSmtp: z.boolean(),\n imapHost: z.string(),\n imapPort: z.string(),\n imapTlsPort: z.string(),\n useTlsForImap: z.boolean(),\n});\n\nexport const mailAccountSchema = z.object({\n id: z.string(),\n created_at: z.string(),\n updated_at: z.string(),\n deletedAt: z.date().nullable(),\n tenant_id: z.string(),\n name: z.string(),\n address: z.string(),\n accountId: z.string(),\n mailServerId: z.string(),\n mailServer: mailServerSchema,\n state: z.union([\n z.literal('init'),\n z.literal('syncing'),\n z.literal('connecting'),\n z.literal('connected'),\n z.literal('disconnected'),\n z.literal('authenticationError'),\n z.literal('connectError'),\n z.literal('unset'),\n ]),\n});\n\nexport const accountContractsSchemas = {\n create: {\n input: z.object({\n address: z.string().email('Email address must be valid email.'),\n name: z.string().min(1, 'Account name cannot be empty.'),\n password: z.string().min(1, 'Password cannot be empty.'),\n mailServerId: z.string().uuid('Invalid mail_server_id'),\n }),\n },\n getById: {\n input: z.object({\n id: z.string().uuid(),\n }),\n output: mailAccountSchema,\n },\n getAll: {\n output: z.array(mailAccountSchema),\n },\n update: {\n input: mailAccountSchema,\n output: mailAccountSchema,\n },\n disconnect: {\n input: z.object({\n id: z.string().uuid(),\n }),\n output: mailAccountSchema,\n },\n reconnect: {\n input: z.object({\n id: z.string(),\n }),\n output: mailAccountSchema,\n },\n delete: {\n input: z.object({\n id: z.string(),\n }),\n output: mailAccountSchema,\n },\n};\n","import { initContract } from '@ts-rest/core';\nimport {\n defaultResponses,\n DefaultSuccessResponseSchema,\n} from '../base-contract';\nimport z from 'zod';\n\nexport const serverContract = initContract().router(\n {\n create: {\n method: 'POST',\n path: '/',\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Register a new mail server',\n },\n get: {\n method: 'GET',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n summary: 'Get a mail server by id',\n },\n update: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Update a mail server by id',\n },\n\n delete: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({\n id: z.string(),\n }),\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n message: z.string(),\n }),\n ...defaultResponses,\n },\n body: null,\n summary: 'Delete a mail server by id',\n },\n },\n {\n pathPrefix: '/server',\n },\n);\n","import z from 'zod';\nimport { initContract } from '@ts-rest/core';\nimport { createTagSchema, getTagsSchema, updateTagSchema } from './validation';\nimport {\n DefaultErrorResponseSchema,\n DefaultHeaderSchema,\n DefaultSuccessResponseSchema,\n} from '../base-contract';\nimport { tagSchema } from './schema';\n\n// Request types\nexport type Tag = z.infer<typeof tagSchema>;\nexport type CreateTagRequest = z.infer<typeof createTagSchema>;\nexport type GetTagsRequest = z.infer<typeof getTagsSchema>;\nexport type UpdateTagRequest = z.infer<typeof updateTagSchema>;\n\nexport const tagContract = initContract().router(\n {\n createTag: {\n method: 'POST',\n path: '',\n body: createTagSchema,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n tag: tagSchema,\n }),\n 500: DefaultErrorResponseSchema,\n },\n headers: DefaultHeaderSchema,\n },\n getTags: {\n method: 'GET',\n path: '',\n query: getTagsSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n tags: z.array(tagSchema),\n }),\n 500: DefaultErrorResponseSchema,\n },\n headers: DefaultHeaderSchema,\n },\n updateTag: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n body: updateTagSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n tag: tagSchema,\n }),\n 500: DefaultErrorResponseSchema,\n },\n headers: DefaultHeaderSchema,\n },\n deleteTag: {\n method: 'DELETE',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n body: z.any().optional(), // We don't need the body.\n responses: {\n 200: DefaultSuccessResponseSchema.extend({ message: z.string() }),\n 500: DefaultErrorResponseSchema,\n },\n headers: DefaultHeaderSchema,\n },\n },\n {\n pathPrefix: 'tags',\n },\n);\n","import { z } from 'zod';\nimport { tagGroupSchema } from './schema';\n\nexport const createTagSchema = z.object({\n name: z.string(),\n group: tagGroupSchema,\n});\n\nexport const getTagsSchema = z\n .object({\n group: tagGroupSchema.default('general'),\n keyword: z.string(),\n })\n .partial()\n .optional();\n\nexport const updateTagSchema = z.object({ name: z.string() });\n","import z from 'zod';\nimport { DefaultEntitySchema } from '../base-contract';\n\nexport const tagSchema = DefaultEntitySchema.extend({\n name: z.string(),\n});\n\nexport const tagGroupSchema = z.union([\n z.literal('general'),\n z.literal('contact'),\n]);\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultErrorResponseSchema,\n DefaultHeaderSchema,\n DefaultSuccessResponseSchema,\n DefaultUnauthorizedSchema,\n} from '../base-contract';\nimport z from 'zod';\nimport { ExtensionSchema } from './schema';\nimport { withPagination } from '../../utils';\nimport { CreateExtensionSchema, UpdateExtensionSchema } from './validation';\n\n// Request types\nexport type CreateExtensionRequest = z.infer<typeof CreateExtensionSchema>;\nexport type UpdateExtensionRequest = z.infer<typeof UpdateExtensionSchema>;\n\nexport const extensionContract = initContract().router(\n {\n createExtension: {\n method: 'POST',\n path: '',\n headers: DefaultHeaderSchema,\n body: CreateExtensionSchema,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n extension: ExtensionSchema,\n }),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Create a extension.',\n },\n\n getExtensions: {\n method: 'GET',\n path: '',\n query: z\n .object({\n page: z.coerce.number().default(1),\n pageSize: z.coerce.number().default(10),\n keyword: z.string().optional(),\n })\n .optional(),\n headers: DefaultHeaderSchema,\n responses: {\n 200: withPagination(ExtensionSchema),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Get all extensions',\n },\n\n getExtensionByDialpad: {\n method: 'GET',\n path: '/dialpad',\n query: z\n .object({\n page: z.coerce.number().default(1),\n pageSize: z.coerce.number().default(10),\n keyword: z.string().optional(),\n })\n .optional(),\n headers: DefaultHeaderSchema,\n responses: {\n 200: withPagination(ExtensionSchema),\n 500: DefaultErrorResponseSchema,\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n },\n summary: 'Get by dialpad',\n },\n\n updateExtension: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n body: UpdateExtensionSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n extension: ExtensionSchema,\n }),\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Update a extension.',\n },\n\n deleteExtension: {\n method: 'DELETE',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n body: null,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({ message: z.string() }),\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Delete a extension.',\n },\n },\n { pathPrefix: 'extension' },\n);\n\n// left getExtensionListByYeastar\n","import z from 'zod';\nimport { DefaultEntitySchema } from '../base-contract';\n\nexport const ExtensionSchema = DefaultEntitySchema.extend({\n userId: z.string().nullable(),\n sipServerUrl: z.string(),\n sipUserName: z.string(),\n extensionId: z.coerce.number().nullable(),\n extensionName: z.string().nullable(),\n telephonySignature: z.string().nullable(),\n});\n","import { z } from 'zod';\n\nexport const CreateExtensionSchema = z.object({\n userId: z.string().nullable(),\n sipServerUrl: z.string(),\n sipUserName: z.string(),\n extensionId: z.coerce.number().nullable(),\n extensionName: z.string().nullable(),\n telephonySignature: z.string().nullable(),\n});\n\nexport const UpdateExtensionSchema = CreateExtensionSchema.extend({\n id: z.string(),\n});\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultErrorResponseSchema,\n DefaultHeaderSchema,\n DefaultSuccessResponseSchema,\n DefaultUnauthorizedSchema,\n} from '../base-contract';\nimport z from 'zod';\nimport { PermissionSchema } from './schema';\n\nexport const permissionContract = initContract().router(\n {\n getPermissions: {\n method: 'GET',\n path: '',\n headers: DefaultHeaderSchema,\n responses: {\n 200: z.object({ permissions: PermissionSchema.array() }),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Get all permissions',\n },\n\n getPermissionByUserId: {\n method: 'GET',\n path: '/user/:id',\n pathParams: z.object({ userId: z.string() }),\n headers: DefaultHeaderSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n permission: PermissionSchema,\n }),\n 401: DefaultUnauthorizedSchema,\n },\n summary: 'Get permission by user id',\n },\n },\n { pathPrefix: 'permission' },\n);\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultErrorResponseSchema,\n DefaultHeaderSchema,\n DefaultSuccessResponseSchema,\n DefaultUnauthorizedSchema,\n} from '../base-contract';\nimport z from 'zod';\nimport { RoleSchema } from './schema';\nimport { withPagination } from '../../utils';\nimport { CreateRoleSchema, UpdateRoleSchema } from './validation';\n\n// Request types\nexport type CreateRoleRequest = z.infer<typeof CreateRoleSchema>;\nexport type UpdateRoleRequest = z.infer<typeof UpdateRoleSchema>;\n\nexport const roleContract = initContract().router(\n {\n createRole: {\n method: 'POST',\n path: '',\n headers: DefaultHeaderSchema,\n body: CreateRoleSchema,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n role: RoleSchema,\n }),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Create a role.',\n },\n\n getRoles: {\n method: 'GET',\n path: '',\n query: z\n .object({\n page: z.coerce.number().default(1),\n pageSize: z.coerce.number().default(10),\n })\n .optional(),\n headers: DefaultHeaderSchema,\n responses: {\n 200: withPagination(RoleSchema),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Get all roles',\n },\n\n updateRole: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n body: UpdateRoleSchema,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n role: RoleSchema,\n }),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Update a role.',\n },\n\n deleteRole: {\n method: 'DELETE',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n body: null,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({ message: z.string() }),\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Delete a role.',\n },\n },\n { pathPrefix: 'role' },\n);\n\n// Left - getAuthUserRole\n","import { z } from 'zod';\n\nexport const CreateRoleSchema = z.object({\n systemName: z.string(),\n displayName: z.string(),\n description: z.string().nullable(),\n permissions: z.array(z.string()),\n});\n\nexport const UpdateRoleSchema = CreateRoleSchema.extend({\n id: z.string(),\n});\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultHeaderSchema,\n DefaultSuccessResponseSchema,\n DefaultUnauthorizedSchema,\n} from '../base-contract';\nimport z from 'zod';\nimport { withPagination } from '../../utils';\nimport { UserSchema } from './schema';\n\nexport const userContract = initContract().router(\n {\n createUser: {\n method: 'POST',\n path: '',\n headers: DefaultHeaderSchema,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n user: UserSchema,\n }),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n },\n body: UserSchema,\n summary: 'Create a user.',\n },\n\n getUsers: {\n method: 'GET',\n path: '',\n headers: DefaultHeaderSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n user: withPagination(UserSchema),\n }),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n },\n summary: 'Get all users',\n },\n\n getUserById: {\n method: 'GET',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n responses: {\n 200: DefaultSuccessResponseSchema.extend({\n user: UserSchema,\n }),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n },\n summary: 'Get user by id',\n },\n\n updateUser: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n role: UserSchema,\n }),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n },\n body: UserSchema.extend({\n newPassword: z.string(),\n }),\n summary: 'Update a user.',\n },\n\n deleteUser: {\n method: 'DELETE',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n body: z.null().optional(),\n responses: { 200: z.string() },\n summary: 'Delete a user.',\n },\n },\n { pathPrefix: 'user' },\n);\n\n// Left - getAgentStatus, getAllStatus, getAllAgentsStatus, updateAgentStatus, getAgentsPresenceStatusLogs\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultErrorResponseSchema,\n DefaultHeaderSchema,\n DefaultSuccessResponseSchema,\n DefaultUnauthorizedSchema,\n} from '../base-contract';\nimport z from 'zod';\nimport { withPagination } from '../../utils';\nimport { WidgetSchema } from './schema';\nimport { CreateWidgetSchema, UpdateWidgetSchema } from './validation';\n\nexport const widgetContract = initContract().router(\n {\n createWidget: {\n method: 'POST',\n path: '',\n headers: DefaultHeaderSchema,\n body: CreateWidgetSchema,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n widget: WidgetSchema,\n }),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Create a widget.',\n },\n\n getWidgets: {\n method: 'GET',\n path: '',\n query: z\n .object({\n page: z.coerce.number().default(1),\n pageSize: z.coerce.number().default(10),\n })\n .optional(),\n headers: DefaultHeaderSchema,\n responses: {\n 200: withPagination(WidgetSchema),\n 500: DefaultErrorResponseSchema,\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n },\n summary: 'Get all widgets',\n },\n\n getMenuWidgets: {\n method: 'GET',\n path: '/menu',\n headers: DefaultHeaderSchema,\n responses: {\n 200: z.array(WidgetSchema),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Get menu widgets',\n },\n\n getTicketWidgets: {\n method: 'GET',\n path: '/menu',\n headers: DefaultHeaderSchema,\n responses: {\n 200: z.array(WidgetSchema),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Get ticket widgets',\n },\n\n getContactWidgets: {\n method: 'GET',\n path: '/menu',\n headers: DefaultHeaderSchema,\n responses: {\n 200: z.array(WidgetSchema),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Get contact widgets',\n },\n\n getWidgetById: {\n method: 'GET',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n responses: {\n 200: z.array(WidgetSchema),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Get widget by id',\n },\n\n getWidgetUrl: {\n method: 'GET',\n path: '/url_token/generate',\n pathParams: z.object({\n widgetId: z.string(),\n // Position ID is ticket ID, contact ID, etc.\n // TODO: The name \"Position ID\" is confusing. Think of a better name.\n positionId: z.string(),\n }),\n headers: DefaultHeaderSchema,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n widget: z.object({\n url: z.string(),\n }),\n }),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n },\n summary: 'Generate url token for widget.',\n },\n\n updateWidget: {\n method: 'PATCH',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n responses: {\n 201: DefaultSuccessResponseSchema.extend({\n widget: WidgetSchema,\n }),\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n },\n body: UpdateWidgetSchema,\n summary: 'Update a widget.',\n },\n\n deleteWidget: {\n method: 'DELETE',\n path: '/:id',\n pathParams: z.object({ id: z.string() }),\n headers: DefaultHeaderSchema,\n body: z.null().optional(),\n responses: { 200: z.string() },\n summary: 'Delete a widget.',\n },\n },\n { pathPrefix: 'widget' },\n);\n\n// Left - getAgentStatus, getAllStatus, getAllAgentsStatus, updateAgentStatus, getAgentsPresenceStatusLogs\n","import z from 'zod';\nimport { DefaultEntitySchema } from '../base-contract';\n\n// Define fields schema\nconst FieldsSchema = z.object({ data: z.array(z.string()) });\n\nexport const WidgetPositionSchema = z.union([\n z.literal('menu'),\n z.literal('ticket_detail'),\n z.literal('contact_detail'),\n]);\n\nexport const WidgetSchema = DefaultEntitySchema.extend({\n name: z.string(),\n description: z.string().nullable(),\n position: WidgetPositionSchema.nullable(),\n fields: FieldsSchema,\n url: z.string().nullable(),\n});\n","import z from 'zod';\nimport { WidgetPositionSchema } from './schema';\n\nexport const CreateWidgetSchema = z.object({\n name: z.string(),\n description: z.string(),\n url: z.string(),\n position: WidgetPositionSchema,\n fields: z\n .object({\n data:\n // Array of attribute system names\n z.array(z.string()),\n })\n // If we want to show the widget on the menu, we don't need the fields.\n .optional(),\n});\n\nexport const UpdateWidgetSchema = CreateWidgetSchema.extend({\n id: z.string(),\n});\n","import { initContract } from '@ts-rest/core';\nimport {\n DefaultErrorResponseSchema,\n DefaultHeaderSchema,\n DefaultUnauthorizedSchema,\n} from '../base-contract';\nimport z from 'zod';\nimport { TelephonyExtensionSchema } from './schema';\n\nexport const telephonyExtensionContract = initContract().router(\n {\n getTelephonyExtensions: {\n method: 'GET',\n path: '/extension_list',\n headers: DefaultHeaderSchema,\n query: null,\n responses: {\n 200: TelephonyExtensionSchema,\n 400: z.object({\n message: z.string(),\n }),\n 401: DefaultUnauthorizedSchema,\n 500: DefaultErrorResponseSchema,\n },\n summary: 'Get all extension list by yeastar',\n },\n },\n { pathPrefix: 'telephony' },\n);\n","import z from 'zod';\n\nexport const TelephonyExtensionSchema = z.object({\n errcode: z.coerce.number(),\n errmsg: z.string(),\n total_number: z.coerce.number(),\n data: z.array(z.object({})),\n});\n"],"mappings":"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","names":["initContract","z","z","z","z","z","z","initContract","z","z","z","z","z","z","z","initContract","z","initContract","z","z","z","z","z","z","initContract","z","initContract","z","z","z","z","z","initContract","z","initContract","z","z","z","initContract","z","initContract","z","initContract","initContract","initContract","z","initContract","initContract","z","initContract","initContract","z","z","initContract","z","initContract","z","initContract","initContract","z","initContract","z","z","z","z","initContract","z","initContract","z","z","z","z","initContract","z","initContract","z","initContract","z","initContract","z","z","initContract","z","initContract","z","initContract","z","initContract","z","z","z","z","z","initContract","z","initContract","z","z","initContract","z","initContract"]}