@purpleschool/gptbot 0.7.58 → 0.7.59-presentations

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 (274) hide show
  1. package/api/controllers/http/cabinet.ts +3 -2
  2. package/api/controllers/http/index.ts +3 -0
  3. package/api/controllers/http/music.ts +16 -0
  4. package/api/controllers/http/presentation.ts +10 -0
  5. package/api/controllers/http/video-editor.ts +14 -0
  6. package/api/controllers/http/webmaster.ts +10 -0
  7. package/api/controllers/http/writer.ts +1 -0
  8. package/api/routes.ts +8 -1
  9. package/build/api/controllers/http/cabinet.js +3 -2
  10. package/build/api/controllers/http/index.js +3 -0
  11. package/build/api/controllers/http/music.js +18 -0
  12. package/build/api/controllers/http/presentation.js +7 -0
  13. package/build/api/controllers/http/video-editor.js +16 -0
  14. package/build/api/controllers/http/webmaster.js +12 -0
  15. package/build/api/controllers/http/writer.js +1 -0
  16. package/build/api/routes.js +7 -1
  17. package/build/commands/auth/register-user.command.js +2 -4
  18. package/build/commands/auth/vk-login.command.js +5 -2
  19. package/build/commands/auth/yandex-login.command.js +5 -2
  20. package/build/commands/cabinet/get-user-statistics-by-month.command.js +25 -0
  21. package/build/commands/cabinet/get-user-statistics-overview.command.js +26 -0
  22. package/build/commands/cabinet/index.js +2 -1
  23. package/build/commands/chat/create-chat.command.js +1 -3
  24. package/build/commands/chat/find-chat-by-uuid.command.js +1 -1
  25. package/build/commands/chat/find-chats.command.js +1 -3
  26. package/build/commands/chat/get-last-active-chat-command.js +1 -1
  27. package/build/commands/folder/find-folder-by-uuid-with-chats.command.js +1 -3
  28. package/build/commands/index.js +1 -0
  29. package/build/commands/product/buy-product.command.js +4 -0
  30. package/build/commands/subscription/buy-subscription.command.js +4 -0
  31. package/build/commands/telegram-auth/create-telegram-auth-link.command.js +2 -0
  32. package/build/commands/telegram-profile/auth-with-telegram-web-app.command.js +4 -0
  33. package/build/commands/telegram-profile/bot-was-blocked-by-user.command.js +11 -0
  34. package/build/commands/telegram-profile/index.js +2 -0
  35. package/build/commands/telegram-profile/user-joined-telegram.command.js +11 -0
  36. package/build/commands/tools/index.js +2 -0
  37. package/build/commands/tools/music/convert-to-wav.command.js +16 -0
  38. package/build/commands/tools/music/delete-all-music-jobs.command.js +8 -0
  39. package/build/commands/tools/music/delete-music-job-by-uuid.command.js +11 -0
  40. package/build/commands/tools/music/find-music-job-by-uuid.command.js +14 -0
  41. package/build/commands/tools/music/find-music-jobs.command.js +18 -0
  42. package/build/commands/tools/music/generate-lyrics.command.js +16 -0
  43. package/build/commands/tools/music/generate-music.command.js +15 -0
  44. package/build/commands/tools/music/get-music-tool-config.command.js +11 -0
  45. package/build/commands/tools/music/index.js +27 -0
  46. package/build/commands/tools/music/retry-music-job.command.js +14 -0
  47. package/build/commands/tools/music/set-reaction-to-music-job.command.js +18 -0
  48. package/build/commands/tools/music/update-music-job-title.command.js +17 -0
  49. package/build/commands/tools/presentation/build-blank-slide.command.js +21 -0
  50. package/build/commands/tools/presentation/generate-and-insert-slide.command.js +22 -0
  51. package/build/commands/tools/presentation/index.js +7 -0
  52. package/build/commands/tools/presentation/presentation-generate-report.command.js +17 -0
  53. package/build/commands/tools/presentation/presentation-paraphrase.command.js +20 -0
  54. package/build/commands/tools/presentation/update-presentation-slides.command.js +25 -0
  55. package/build/commands/tools/presentation/update-presentation.command.js +4 -3
  56. package/build/commands/tools/presentation/update-slide-image-slot.command.js +34 -0
  57. package/build/commands/tools/presentation/update-slide.command.js +19 -0
  58. package/build/commands/tools/video-editor/delete-all-video-editor-jobs.command.js +11 -0
  59. package/build/commands/tools/video-editor/delete-video-editor-job-by-uuid.command.js +14 -0
  60. package/build/commands/tools/video-editor/edit-video.command.js +16 -0
  61. package/build/commands/tools/video-editor/find-video-editor-job-by-id.command.js +14 -0
  62. package/build/commands/tools/video-editor/find-video-editor-jobs.command.js +18 -0
  63. package/build/commands/tools/video-editor/get-video-editor-config.command.js +14 -0
  64. package/build/commands/tools/video-editor/index.js +25 -0
  65. package/build/commands/tools/video-editor/retry-video-editor-job.command.js +14 -0
  66. package/build/commands/tools/video-editor/set-reaction-to-video-editor-job.command.js +18 -0
  67. package/build/commands/tools/video-editor/update-video-editor-job-title.command.js +17 -0
  68. package/build/commands/tools/writer/generate-writer-document-contents.command.js +3 -0
  69. package/build/commands/tools/writer/index.js +1 -0
  70. package/build/commands/tools/writer/set-reaction.writer-document.command.js +18 -0
  71. package/build/commands/user/get-aggregated-user-data.command.js +1 -1
  72. package/build/commands/user/get-me.command.js +1 -0
  73. package/build/commands/webmaster/confirm-withdrawal.command.js +14 -0
  74. package/build/commands/webmaster/create-webmaster.command.js +16 -0
  75. package/build/commands/webmaster/create-withdrawal-request.command.js +16 -0
  76. package/build/commands/webmaster/get-my-webmaster.command.js +11 -0
  77. package/build/commands/webmaster/get-webmaster-balance-overview.command.js +26 -0
  78. package/build/commands/webmaster/index.js +22 -0
  79. package/build/commands/webmaster/update-webmaster.command.js +13 -0
  80. package/build/constants/ai-model/enums/ai-model-config-selector-type.enum.js +1 -0
  81. package/build/constants/cabinet/enums/group-by.enum.js +9 -0
  82. package/build/constants/cabinet/enums/index.js +17 -0
  83. package/build/constants/cabinet/index.js +17 -0
  84. package/build/constants/errors/errors.js +278 -0
  85. package/build/constants/file/enums/file-type.enum.js +1 -0
  86. package/build/constants/file/file.constants.js +4 -1
  87. package/build/constants/index.js +5 -0
  88. package/build/constants/presentation/enums/index.js +4 -0
  89. package/build/constants/presentation/enums/presentation-ai-action-call-status.enum.js +9 -0
  90. package/build/constants/presentation/enums/presentation-ai-action-pricing-type.enum.js +8 -0
  91. package/build/constants/presentation/enums/presentation-ai-action-type.enum.js +8 -0
  92. package/build/constants/presentation/enums/slide-image-slot-action.enum.js +8 -0
  93. package/build/constants/tool-music/enums/index.js +21 -0
  94. package/build/constants/tool-music/enums/music-pricing-rule-type.enum.js +7 -0
  95. package/build/constants/tool-music/enums/music-strategy.enum.js +7 -0
  96. package/build/constants/tool-music/enums/music-vocal-gender.enum.js +8 -0
  97. package/build/constants/tool-music/enums/suno-mode-type.enum.js +10 -0
  98. package/build/constants/tool-music/enums/suno-model-type.enum.js +10 -0
  99. package/build/constants/tool-music/index.js +17 -0
  100. package/build/constants/tool-video-editor/enums/index.js +17 -0
  101. package/build/constants/tool-video-editor/enums/video-editor-model-strategy.enum.js +7 -0
  102. package/build/constants/tool-video-editor/index.js +17 -0
  103. package/build/constants/webmaster/enums/index.js +17 -0
  104. package/build/constants/webmaster/enums/organization-type.enum.js +9 -0
  105. package/build/constants/webmaster/index.js +17 -0
  106. package/build/constants/webmaster-balance/enums/index.js +18 -0
  107. package/build/constants/webmaster-balance/enums/webmaster-balance-status.enum.js +10 -0
  108. package/build/constants/webmaster-balance/enums/webmaster-balance-type.enum.js +8 -0
  109. package/build/constants/webmaster-balance/index.js +17 -0
  110. package/build/constants/writer/enums/index.js +1 -0
  111. package/build/constants/writer/enums/tool-model-status.enum.js +8 -0
  112. package/build/helpers/index.js +2 -0
  113. package/build/helpers/presentation/calculate-presentation-ai-action-price.util.js +16 -0
  114. package/build/helpers/presentation/index.js +17 -0
  115. package/build/helpers/video-editor/calculate-video-editing-price.helper.js +6 -0
  116. package/build/helpers/video-editor/index.js +17 -0
  117. package/build/helpers/writer/calculate-writer-content-generation-price.util.js +2 -2
  118. package/build/models/chat-with-messages.schema.js +9 -0
  119. package/build/models/chat.schema.js +0 -2
  120. package/build/models/index.js +4 -0
  121. package/build/models/tools/index.js +3 -0
  122. package/build/models/tools/music/index.js +20 -0
  123. package/build/models/tools/music/music-config.schema.js +8 -0
  124. package/build/models/tools/music/music-job.schema.js +40 -0
  125. package/build/models/tools/music/music-model.schema.js +32 -0
  126. package/build/models/tools/music/music-track.schema.js +17 -0
  127. package/build/models/tools/presentation/index.js +1 -0
  128. package/build/models/tools/presentation/presentation-ai-action.schema.js +27 -0
  129. package/build/models/tools/presentation/presentation-config.schema.js +3 -0
  130. package/build/models/tools/presentation/presentation.schema.js +2 -0
  131. package/build/models/tools/presentation/slide-content-edit.schema.js +129 -0
  132. package/build/models/tools/presentation/slide-content.schema.js +22 -20
  133. package/build/models/tools/presentation/slide.schema.js +39 -1
  134. package/build/models/tools/video-editor/index.js +19 -0
  135. package/build/models/tools/video-editor/video-editor-config.schema.js +8 -0
  136. package/build/models/tools/video-editor/video-editor-job.schema.js +14 -0
  137. package/build/models/tools/video-editor/video-editor-model.schema.js +25 -0
  138. package/build/models/tools/writer/writer-config.schema.js +2 -0
  139. package/build/models/tools/writer/writer-document.schema.js +2 -0
  140. package/build/models/tools/writer/writer-model.schema.js +21 -0
  141. package/build/models/user-referrals.schema.js +15 -0
  142. package/build/models/user-to-subscription.schema.js +1 -0
  143. package/build/models/webmaster-balance.schema.js +19 -0
  144. package/build/models/webmaster.schema.js +21 -0
  145. package/commands/auth/register-user.command.ts +3 -5
  146. package/commands/auth/vk-login.command.ts +9 -6
  147. package/commands/auth/yandex-login.command.ts +7 -4
  148. package/commands/cabinet/get-user-statistics-by-month.command.ts +25 -0
  149. package/commands/cabinet/{get-user-statistics.command.ts → get-user-statistics-overview.command.ts} +5 -12
  150. package/commands/cabinet/index.ts +2 -1
  151. package/commands/chat/create-chat.command.ts +2 -4
  152. package/commands/chat/find-chat-by-uuid.command.ts +2 -2
  153. package/commands/chat/find-chats.command.ts +2 -6
  154. package/commands/chat/get-last-active-chat-command.ts +2 -2
  155. package/commands/folder/find-folder-by-uuid-with-chats.command.ts +2 -6
  156. package/commands/index.ts +1 -0
  157. package/commands/product/buy-product.command.ts +4 -0
  158. package/commands/subscription/buy-subscription.command.ts +4 -0
  159. package/commands/telegram-auth/create-telegram-auth-link.command.ts +5 -0
  160. package/commands/telegram-profile/auth-with-telegram-web-app.command.ts +4 -0
  161. package/commands/telegram-profile/bot-was-blocked-by-user.command.ts +13 -0
  162. package/commands/telegram-profile/index.ts +2 -0
  163. package/commands/telegram-profile/user-joined-telegram.command.ts +13 -0
  164. package/commands/tools/index.ts +2 -0
  165. package/commands/tools/music/convert-to-wav.command.ts +17 -0
  166. package/commands/tools/music/delete-all-music-jobs.command.ts +6 -0
  167. package/commands/tools/music/delete-music-job-by-uuid.command.ts +11 -0
  168. package/commands/tools/music/find-music-job-by-uuid.command.ts +16 -0
  169. package/commands/tools/music/find-music-jobs.command.ts +18 -0
  170. package/commands/tools/music/generate-lyrics.command.ts +17 -0
  171. package/commands/tools/music/generate-music.command.ts +16 -0
  172. package/commands/tools/music/get-music-tool-config.command.ts +10 -0
  173. package/commands/tools/music/index.ts +11 -0
  174. package/commands/tools/music/retry-music-job.command.ts +14 -0
  175. package/commands/tools/music/set-reaction-to-music-job.command.ts +20 -0
  176. package/commands/tools/music/update-music-job-title.command.ts +19 -0
  177. package/commands/tools/presentation/build-blank-slide.command.ts +23 -0
  178. package/commands/tools/presentation/generate-and-insert-slide.command.ts +27 -0
  179. package/commands/tools/presentation/index.ts +7 -0
  180. package/commands/tools/presentation/presentation-generate-report.command.ts +21 -0
  181. package/commands/tools/presentation/presentation-paraphrase.command.ts +26 -0
  182. package/commands/tools/presentation/update-presentation-slides.command.ts +32 -0
  183. package/commands/tools/presentation/update-presentation.command.ts +5 -4
  184. package/commands/tools/presentation/update-slide-image-slot.command.ts +40 -0
  185. package/commands/tools/presentation/update-slide.command.ts +25 -0
  186. package/commands/tools/video-editor/delete-all-video-editor-jobs.command.ts +13 -0
  187. package/commands/tools/video-editor/delete-video-editor-job-by-uuid.command.ts +16 -0
  188. package/commands/tools/video-editor/edit-video.command.ts +18 -0
  189. package/commands/tools/video-editor/find-video-editor-job-by-id.command.ts +16 -0
  190. package/commands/tools/video-editor/find-video-editor-jobs.command.ts +18 -0
  191. package/commands/tools/video-editor/get-video-editor-config.command.ts +16 -0
  192. package/commands/tools/video-editor/index.ts +9 -0
  193. package/commands/tools/video-editor/retry-video-editor-job.command.ts +16 -0
  194. package/commands/tools/video-editor/set-reaction-to-video-editor-job.command.ts +21 -0
  195. package/commands/tools/video-editor/update-video-editor-job-title.command.ts +20 -0
  196. package/commands/tools/writer/generate-writer-document-contents.command.ts +5 -0
  197. package/commands/tools/writer/index.ts +1 -0
  198. package/commands/tools/writer/set-reaction.writer-document.command.ts +21 -0
  199. package/commands/user/get-aggregated-user-data.command.ts +1 -1
  200. package/commands/user/get-me.command.ts +1 -0
  201. package/commands/webmaster/confirm-withdrawal.command.ts +16 -0
  202. package/commands/webmaster/create-webmaster.command.ts +18 -0
  203. package/commands/webmaster/create-withdrawal-request.command.ts +18 -0
  204. package/commands/webmaster/get-my-webmaster.command.ts +12 -0
  205. package/commands/webmaster/get-webmaster-balance-overview.command.ts +29 -0
  206. package/commands/webmaster/index.ts +6 -0
  207. package/commands/webmaster/update-webmaster.command.ts +18 -0
  208. package/constants/ai-model/enums/ai-model-config-selector-type.enum.ts +1 -0
  209. package/constants/cabinet/enums/group-by.enum.ts +5 -0
  210. package/constants/cabinet/enums/index.ts +1 -0
  211. package/constants/cabinet/index.ts +1 -0
  212. package/constants/errors/errors.ts +278 -0
  213. package/constants/file/enums/file-type.enum.ts +1 -0
  214. package/constants/file/file.constants.ts +4 -0
  215. package/constants/index.ts +5 -0
  216. package/constants/presentation/enums/index.ts +4 -0
  217. package/constants/presentation/enums/presentation-ai-action-call-status.enum.ts +5 -0
  218. package/constants/presentation/enums/presentation-ai-action-pricing-type.enum.ts +4 -0
  219. package/constants/presentation/enums/presentation-ai-action-type.enum.ts +4 -0
  220. package/constants/presentation/enums/slide-image-slot-action.enum.ts +4 -0
  221. package/constants/tool-music/enums/index.ts +5 -0
  222. package/constants/tool-music/enums/music-pricing-rule-type.enum.ts +3 -0
  223. package/constants/tool-music/enums/music-strategy.enum.ts +3 -0
  224. package/constants/tool-music/enums/music-vocal-gender.enum.ts +4 -0
  225. package/constants/tool-music/enums/suno-mode-type.enum.ts +6 -0
  226. package/constants/tool-music/enums/suno-model-type.enum.ts +6 -0
  227. package/constants/tool-music/index.ts +1 -0
  228. package/constants/tool-video-editor/enums/index.ts +1 -0
  229. package/constants/tool-video-editor/enums/video-editor-model-strategy.enum.ts +3 -0
  230. package/constants/tool-video-editor/index.ts +1 -0
  231. package/constants/webmaster/enums/index.ts +1 -0
  232. package/constants/webmaster/enums/organization-type.enum.ts +5 -0
  233. package/constants/webmaster/index.ts +1 -0
  234. package/constants/webmaster-balance/enums/index.ts +2 -0
  235. package/constants/webmaster-balance/enums/webmaster-balance-status.enum.ts +6 -0
  236. package/constants/webmaster-balance/enums/webmaster-balance-type.enum.ts +4 -0
  237. package/constants/webmaster-balance/index.ts +1 -0
  238. package/constants/writer/enums/index.ts +1 -0
  239. package/constants/writer/enums/tool-model-status.enum.ts +4 -0
  240. package/helpers/index.ts +2 -0
  241. package/helpers/presentation/calculate-presentation-ai-action-price.util.ts +20 -0
  242. package/helpers/presentation/index.ts +1 -0
  243. package/helpers/video-editor/calculate-video-editing-price.helper.ts +9 -0
  244. package/helpers/video-editor/index.ts +1 -0
  245. package/helpers/writer/calculate-writer-content-generation-price.util.ts +4 -2
  246. package/models/chat-with-messages.schema.ts +7 -0
  247. package/models/chat.schema.ts +0 -2
  248. package/models/index.ts +4 -0
  249. package/models/tools/index.ts +3 -0
  250. package/models/tools/music/index.ts +4 -0
  251. package/models/tools/music/music-config.schema.ts +6 -0
  252. package/models/tools/music/music-job.schema.ts +43 -0
  253. package/models/tools/music/music-model.schema.ts +33 -0
  254. package/models/tools/music/music-track.schema.ts +19 -0
  255. package/models/tools/presentation/index.ts +1 -0
  256. package/models/tools/presentation/presentation-ai-action.schema.ts +33 -0
  257. package/models/tools/presentation/presentation-config.schema.ts +3 -0
  258. package/models/tools/presentation/presentation.schema.ts +2 -0
  259. package/models/tools/presentation/slide-content-edit.schema.ts +154 -0
  260. package/models/tools/presentation/slide-content.schema.ts +119 -32
  261. package/models/tools/presentation/slide.schema.ts +47 -0
  262. package/models/tools/video-editor/index.ts +3 -0
  263. package/models/tools/video-editor/video-editor-config.schema.ts +6 -0
  264. package/models/tools/video-editor/video-editor-job.schema.ts +14 -0
  265. package/models/tools/video-editor/video-editor-model.schema.ts +24 -0
  266. package/models/tools/writer/writer-config.schema.ts +2 -0
  267. package/models/tools/writer/writer-document.schema.ts +3 -1
  268. package/models/tools/writer/writer-model.schema.ts +21 -0
  269. package/models/user-referrals.schema.ts +10 -0
  270. package/models/user-to-subscription.schema.ts +1 -0
  271. package/models/webmaster-balance.schema.ts +15 -0
  272. package/models/webmaster.schema.ts +18 -0
  273. package/package.json +1 -1
  274. package/build/commands/cabinet/get-user-statistics.command.js +0 -30
@@ -0,0 +1,17 @@
1
+ import { z } from 'zod';
2
+ export namespace GenerateLyricsCommand {
3
+ export const RequestSchema = z.object({
4
+ prompt: z.string(),
5
+ });
6
+
7
+ export type Request = z.infer<typeof RequestSchema>;
8
+
9
+ export const ResponseSchema = z.object({
10
+ data: z.object({
11
+ title: z.string(),
12
+ lyrics: z.string(),
13
+ }),
14
+ });
15
+
16
+ export type Response = z.infer<typeof ResponseSchema>;
17
+ }
@@ -0,0 +1,16 @@
1
+ import { z } from 'zod';
2
+ import { ToolJobSchema, MusicJobParamsSchema } from '../../../models';
3
+ export namespace MusicCommand {
4
+ export const RequestSchema = z.object({
5
+ modelId: z.string().uuid(),
6
+ params: MusicJobParamsSchema,
7
+ });
8
+
9
+ export type Request = z.infer<typeof RequestSchema>;
10
+
11
+ export const ResponseSchema = z.object({
12
+ data: ToolJobSchema,
13
+ });
14
+
15
+ export type Response = z.infer<typeof ResponseSchema>;
16
+ }
@@ -0,0 +1,10 @@
1
+ import { z } from 'zod';
2
+ import { MusicConfigSchema } from '../../../models';
3
+
4
+ export namespace GetMusicToolConfigCommand {
5
+ export const ResponseSchema = z.object({
6
+ data: MusicConfigSchema,
7
+ });
8
+
9
+ export type Response = z.infer<typeof ResponseSchema>;
10
+ }
@@ -0,0 +1,11 @@
1
+ export * from './delete-all-music-jobs.command';
2
+ export * from './delete-music-job-by-uuid.command';
3
+ export * from './find-music-job-by-uuid.command';
4
+ export * from './find-music-jobs.command';
5
+ export * from './get-music-tool-config.command';
6
+ export * from './retry-music-job.command';
7
+ export * from './set-reaction-to-music-job.command';
8
+ export * from './generate-music.command';
9
+ export * from './update-music-job-title.command';
10
+ export * from './convert-to-wav.command';
11
+ export * from './generate-lyrics.command';
@@ -0,0 +1,14 @@
1
+ import { z } from 'zod';
2
+ import { MusicJobSchema } from '../../../models';
3
+
4
+ export namespace RetryMusicJobCommand {
5
+ export const RequestParamsSchema = z.object({
6
+ uuid: z.string().uuid(),
7
+ });
8
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
9
+
10
+ export const ResponseSchema = z.object({
11
+ data: MusicJobSchema,
12
+ });
13
+ export type Response = z.infer<typeof ResponseSchema>;
14
+ }
@@ -0,0 +1,20 @@
1
+ import { z } from 'zod';
2
+ import { MusicJobSchema } from '../../../models';
3
+ import { USER_REACTION } from '../../../constants';
4
+
5
+ export namespace SetReactionToMusicJobCommand {
6
+ export const RequestSchema = z.object({
7
+ reaction: z.nativeEnum(USER_REACTION).nullable(),
8
+ });
9
+ export type Request = z.infer<typeof RequestSchema>;
10
+
11
+ export const RequestParamsSchema = z.object({
12
+ uuid: z.string().uuid(),
13
+ });
14
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
15
+
16
+ export const ResponseSchema = z.object({
17
+ data: MusicJobSchema,
18
+ });
19
+ export type Response = z.infer<typeof ResponseSchema>;
20
+ }
@@ -0,0 +1,19 @@
1
+ import { z } from 'zod';
2
+ import { MusicJobSchema } from '../../../models';
3
+
4
+ export namespace UpdateMusicJobTitleCommand {
5
+ export const RequestSchema = z.object({
6
+ title: z.string().min(1).max(40).trim(),
7
+ });
8
+ export type Request = z.infer<typeof RequestSchema>;
9
+
10
+ export const RequestParamsSchema = z.object({
11
+ uuid: z.string().uuid(),
12
+ });
13
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
14
+
15
+ export const ResponseSchema = z.object({
16
+ data: MusicJobSchema,
17
+ });
18
+ export type Response = z.infer<typeof ResponseSchema>;
19
+ }
@@ -0,0 +1,23 @@
1
+ import { z } from 'zod';
2
+
3
+ export namespace BuildBlankSlideCommand {
4
+ export const RequestSchema = z.object({
5
+ slideContentType: z.string(),
6
+ });
7
+
8
+ export type Request = z.infer<typeof RequestSchema>;
9
+
10
+ export const ResponseSchema = z.object({
11
+ data: z.object({
12
+ uuid: z.string().uuid(),
13
+ order: z.number(),
14
+ contentTypeId: z.string(),
15
+ layoutId: z.string(),
16
+ content: z.record(z.any()),
17
+ createdAt: z.date(),
18
+ updatedAt: z.date(),
19
+ }),
20
+ });
21
+
22
+ export type Response = z.infer<typeof ResponseSchema>;
23
+ }
@@ -0,0 +1,27 @@
1
+ import { z } from 'zod';
2
+ import { SlideSchema } from '../../../models/tools/presentation';
3
+ import { SLIDE_CONTENT_TYPE, SLIDE_LAYOUT } from '../../../constants';
4
+
5
+ export namespace GenerateAndInsertSlideCommand {
6
+ export const RequestSchema = z.object({
7
+ contentTypeId: z.nativeEnum(SLIDE_CONTENT_TYPE),
8
+ prompt: z.string().max(10000).optional(),
9
+ title: z.string().min(1).max(80),
10
+ position: z.number().min(0),
11
+ layoutId: z.nativeEnum(SLIDE_LAYOUT).optional(),
12
+ });
13
+
14
+ export type Request = z.infer<typeof RequestSchema>;
15
+
16
+ export const RequestParamsSchema = z.object({
17
+ uuid: z.string().uuid(),
18
+ });
19
+
20
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
21
+
22
+ export const ResponseSchema = z.object({
23
+ data: z.array(SlideSchema),
24
+ });
25
+
26
+ export type Response = z.infer<typeof ResponseSchema>;
27
+ }
@@ -1,3 +1,4 @@
1
+ export * from './build-blank-slide.command';
1
2
  export * from './create-presentation.command';
2
3
  export * from './delete-all-user-presentations.command';
3
4
  export * from './delete-slide-outline.command';
@@ -7,9 +8,15 @@ export * from './find-presentation-by-uuid.command';
7
8
  export * from './find-presentation-outline.command';
8
9
  export * from './find-presentations.command';
9
10
  export * from './generate-presentation-slides.command';
11
+ export * from './generate-and-insert-slide.command';
10
12
  export * from './get-presentation-config.command';
11
13
  export * from './reposition-slide-outline.command';
12
14
  export * from './update-slide-outline.command';
13
15
  export * from './update-presentation-outline.command';
14
16
  export * from './update-presentation.command';
17
+ export * from './update-presentation-slides.command';
18
+ export * from './update-slide-image-slot.command';
15
19
  export * from './update-slide-outline.command';
20
+ export * from './presentation-paraphrase.command';
21
+ export * from './presentation-generate-report.command';
22
+ export * from './update-slide.command';
@@ -0,0 +1,21 @@
1
+ import { z } from 'zod';
2
+
3
+ export namespace PresentationGenerateReportCommand {
4
+ export const RequestParamsSchema = z.object({
5
+ presentationId: z.string(),
6
+ });
7
+
8
+ export const RequestSchema = RequestParamsSchema;
9
+
10
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
11
+ export type Request = z.infer<typeof RequestSchema>;
12
+
13
+ export const ResponseSchema = z.object({
14
+ data: z.object({
15
+ output: z.string(),
16
+ docxUrl: z.string(),
17
+ }),
18
+ });
19
+
20
+ export type Response = z.infer<typeof ResponseSchema>;
21
+ }
@@ -0,0 +1,26 @@
1
+ import { z } from 'zod';
2
+
3
+ export namespace PresentationParaphraseCommand {
4
+ export const RequestParamsSchema = z.object({
5
+ presentationId: z.string(),
6
+ slideId: z.string(),
7
+ });
8
+
9
+ export const RequestBodySchema = z.object({
10
+ selectionText: z.string().max(10000),
11
+ });
12
+
13
+ export const RequestSchema = RequestParamsSchema.merge(RequestBodySchema);
14
+
15
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
16
+ export type RequestBody = z.infer<typeof RequestBodySchema>;
17
+ export type Request = z.infer<typeof RequestSchema>;
18
+
19
+ export const ResponseSchema = z.object({
20
+ data: z.object({
21
+ output: z.string(),
22
+ }),
23
+ });
24
+
25
+ export type Response = z.infer<typeof ResponseSchema>;
26
+ }
@@ -0,0 +1,32 @@
1
+ import { z } from 'zod';
2
+ import { SlideBulkUpdateSchema } from '../../../models/tools/presentation';
3
+
4
+ export namespace UpdatePresentationSlidesCommand {
5
+ export const RequestSchema = z.object({
6
+ data: SlideBulkUpdateSchema,
7
+ });
8
+
9
+ export type Request = z.infer<typeof RequestSchema>;
10
+
11
+ export const RequestParamsSchema = z.object({
12
+ uuid: z.string().uuid(),
13
+ });
14
+
15
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
16
+
17
+ export const ResponseSchema = z.object({
18
+ data: z.array(
19
+ z.object({
20
+ uuid: z.string().uuid(),
21
+ order: z.number(),
22
+ contentTypeId: z.string(),
23
+ layoutId: z.string(),
24
+ content: z.record(z.any()),
25
+ createdAt: z.date(),
26
+ updatedAt: z.date(),
27
+ }),
28
+ ),
29
+ });
30
+
31
+ export type Response = z.infer<typeof ResponseSchema>;
32
+ }
@@ -5,11 +5,12 @@ export namespace UpdatePresentationCommand {
5
5
  export const RequestParamsSchema = z.object({
6
6
  uuid: z.string().uuid(),
7
7
  });
8
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
8
9
 
9
- export const RequestBodySchema = z.object({
10
- title: z.string(),
11
- });
12
-
10
+ export const RequestBodySchema = PresentationSchema.pick({
11
+ title: true,
12
+ templateId: true,
13
+ }).partial();
13
14
  export type Request = z.infer<typeof RequestBodySchema>;
14
15
 
15
16
  export const ResponseSchema = z.object({
@@ -0,0 +1,40 @@
1
+ import { z } from 'zod';
2
+ import { SLIDE_IMAGE_SLOT_ACTION } from '../../../constants';
3
+ import { SlideImageSlotSchema } from '../../../models/tools/presentation/slide-image-slot.schema';
4
+
5
+ export namespace UpdateSlideImageSlotCommand {
6
+ const ReplacePayload = z.object({
7
+ action: z.literal(SLIDE_IMAGE_SLOT_ACTION.REPLACE),
8
+ fileId: z.string().uuid(),
9
+ });
10
+
11
+ const GeneratePayload = z.object({
12
+ action: z.literal(SLIDE_IMAGE_SLOT_ACTION.GENERATE),
13
+ prompt: z.string().min(1).max(1000).optional(),
14
+ });
15
+
16
+ const UpdateImageSlotPayloadSchema = z.discriminatedUnion('action', [
17
+ ReplacePayload,
18
+ GeneratePayload,
19
+ ]);
20
+ export type UpdateImageSlotPayload = z.infer<typeof UpdateImageSlotPayloadSchema>;
21
+
22
+ export const RequestSchema = z.object({
23
+ payload: UpdateImageSlotPayloadSchema,
24
+ });
25
+ export type Request = z.infer<typeof RequestSchema>;
26
+
27
+ export const RequestParamsSchema = z.object({
28
+ presentationId: z.string().uuid(),
29
+ slideId: z.string().uuid(),
30
+ slotId: z.string().uuid().optional(),
31
+ });
32
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
33
+
34
+ export const ResponseSchema = z.object({
35
+ data: z.object({
36
+ imageSlot: SlideImageSlotSchema,
37
+ }),
38
+ });
39
+ export type Response = z.infer<typeof ResponseSchema>;
40
+ }
@@ -0,0 +1,25 @@
1
+ import { z } from 'zod';
2
+ import { SlideSchema, SlideUpdateSchema } from '../../../models/tools/presentation';
3
+
4
+ export namespace UpdateSlideCommand {
5
+ export const RequestParamsSchema = z.object({
6
+ presentationId: z.string(),
7
+ slideId: z.string(),
8
+ });
9
+
10
+ export const RequestBodySchema = z.object({
11
+ data: SlideUpdateSchema,
12
+ });
13
+
14
+ export const RequestSchema = RequestParamsSchema.merge(RequestBodySchema);
15
+
16
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
17
+ export type RequestBody = z.infer<typeof RequestBodySchema>;
18
+ export type Request = z.infer<typeof RequestSchema>;
19
+
20
+ export const ResponseSchema = z.object({
21
+ data: SlideSchema,
22
+ });
23
+
24
+ export type Response = z.infer<typeof ResponseSchema>;
25
+ }
@@ -0,0 +1,13 @@
1
+ import { z } from 'zod';
2
+
3
+ export namespace DeleteAllVideoEditorJobsCommand {
4
+ export const RequestSchema = z.object({});
5
+
6
+ export type Request = z.infer<typeof RequestSchema>;
7
+
8
+ export const ResponseSchema = z.object({
9
+ data: z.boolean(),
10
+ });
11
+
12
+ export type Response = z.infer<typeof ResponseSchema>;
13
+ }
@@ -0,0 +1,16 @@
1
+ import { z } from 'zod';
2
+ import { ToolJobSchema } from '../../../models';
3
+
4
+ export namespace DeleteVideoEditorJobByUUIDCommand {
5
+ export const RequestParamsSchema = ToolJobSchema.pick({
6
+ uuid: true,
7
+ });
8
+
9
+ export type Request = z.infer<typeof RequestParamsSchema>;
10
+
11
+ export const ResponseSchema = z.object({
12
+ data: z.boolean(),
13
+ });
14
+
15
+ export type Response = z.infer<typeof ResponseSchema>;
16
+ }
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+ import { VideoEditorJobSchema } from '../../../models';
3
+
4
+ export namespace EditVideoCommand {
5
+ export const RequestSchema = z.object({
6
+ modelId: z.string().uuid(),
7
+ prompt: z.string(),
8
+ fileId: z.string().uuid(),
9
+ });
10
+
11
+ export type Request = z.infer<typeof RequestSchema>;
12
+
13
+ export const ResponseSchema = z.object({
14
+ data: VideoEditorJobSchema,
15
+ });
16
+
17
+ export type Response = z.infer<typeof ResponseSchema>;
18
+ }
@@ -0,0 +1,16 @@
1
+ import { z } from 'zod';
2
+ import { VideoEditorJobSchema, ToolJobSchema } from '../../../models';
3
+
4
+ export namespace FindVideoEditorJobByIdCommand {
5
+ export const RequestParamsSchema = ToolJobSchema.pick({
6
+ uuid: true,
7
+ });
8
+
9
+ export type Request = z.infer<typeof RequestParamsSchema>;
10
+
11
+ export const ResponseSchema = z.object({
12
+ data: VideoEditorJobSchema,
13
+ });
14
+
15
+ export type Response = z.infer<typeof ResponseSchema>;
16
+ }
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+ import { VideoEditorJobSchema } from '../../../models';
3
+
4
+ export namespace FindVideoEditorJobsCommand {
5
+ export const RequestQuerySchema = z.object({
6
+ limit: z.coerce.number().min(1).optional(),
7
+ offset: z.coerce.number().min(0).default(0).optional(),
8
+ title: z.string().optional(),
9
+ });
10
+ export type RequestQuery = z.infer<typeof RequestQuerySchema>;
11
+
12
+ export const ResponseSchema = z.object({
13
+ data: z.array(VideoEditorJobSchema),
14
+ totalPages: z.number(),
15
+ page: z.number(),
16
+ });
17
+ export type Response = z.infer<typeof ResponseSchema>;
18
+ }
@@ -0,0 +1,16 @@
1
+ import { z } from 'zod';
2
+ import { VideoEditorModelSchema } from '../../../models';
3
+
4
+ export namespace GetVideoEditorConfigCommand {
5
+ export const RequestSchema = z.object({});
6
+
7
+ export type Request = z.infer<typeof RequestSchema>;
8
+
9
+ export const ResponseSchema = z.object({
10
+ data: z.object({
11
+ models: z.array(VideoEditorModelSchema),
12
+ }),
13
+ });
14
+
15
+ export type Response = z.infer<typeof ResponseSchema>;
16
+ }
@@ -0,0 +1,9 @@
1
+ export * from './delete-all-video-editor-jobs.command';
2
+ export * from './delete-video-editor-job-by-uuid.command';
3
+ export * from './edit-video.command';
4
+ export * from './find-video-editor-job-by-id.command';
5
+ export * from './find-video-editor-jobs.command';
6
+ export * from './get-video-editor-config.command';
7
+ export * from './retry-video-editor-job.command';
8
+ export * from './set-reaction-to-video-editor-job.command';
9
+ export * from './update-video-editor-job-title.command';
@@ -0,0 +1,16 @@
1
+ import { z } from 'zod';
2
+ import { VideoEditorJobSchema, ToolJobSchema } from '../../../models';
3
+
4
+ export namespace RetryVideoEditorJobCommand {
5
+ export const RequestParamsSchema = ToolJobSchema.pick({
6
+ uuid: true,
7
+ });
8
+
9
+ export type Request = z.infer<typeof RequestParamsSchema>;
10
+
11
+ export const ResponseSchema = z.object({
12
+ data: VideoEditorJobSchema,
13
+ });
14
+
15
+ export type Response = z.infer<typeof ResponseSchema>;
16
+ }
@@ -0,0 +1,21 @@
1
+ import { z } from 'zod';
2
+ import { VideoEditorJobSchema } from '../../../models';
3
+ import { USER_REACTION } from '../../../constants';
4
+
5
+ export namespace SetReactionToVideoEditorJobCommand {
6
+ export const RequestSchema = z.object({
7
+ reaction: z.nativeEnum(USER_REACTION).nullable(),
8
+ });
9
+ export type Request = z.infer<typeof RequestSchema>;
10
+
11
+ export const RequestParamsSchema = z.object({
12
+ uuid: z.string().uuid(),
13
+ });
14
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
15
+
16
+ export const ResponseSchema = z.object({
17
+ data: VideoEditorJobSchema,
18
+ });
19
+
20
+ export type Response = z.infer<typeof ResponseSchema>;
21
+ }
@@ -0,0 +1,20 @@
1
+ import { z } from 'zod';
2
+ import { VideoEditorJobSchema } from '../../../models';
3
+
4
+ export namespace UpdateVideoEditorJobTitleCommand {
5
+ export const RequestSchema = z.object({
6
+ title: z.string(),
7
+ });
8
+ export type Request = z.infer<typeof RequestSchema>;
9
+
10
+ export const RequestParamsSchema = z.object({
11
+ uuid: z.string().uuid(),
12
+ });
13
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
14
+
15
+ export const ResponseSchema = z.object({
16
+ data: VideoEditorJobSchema,
17
+ });
18
+
19
+ export type Response = z.infer<typeof ResponseSchema>;
20
+ }
@@ -7,6 +7,11 @@ export namespace GenerateWriterDocumentContentsCommand {
7
7
  });
8
8
  export type RequestParams = z.infer<typeof RequestParamsSchema>;
9
9
 
10
+ export const RequestBodySchema = z.object({
11
+ modelId: z.string().uuid(),
12
+ });
13
+ export type RequestBody = z.infer<typeof RequestBodySchema>;
14
+
10
15
  export const ResponseSchema = z.object({
11
16
  data: WriterDocumentSchema,
12
17
  });
@@ -13,3 +13,4 @@ export * from './writer-shorten-text.command';
13
13
  export * from './writer-fix-errors.command';
14
14
  export * from './writer-generate-text.command';
15
15
  export * from './export-writer-document-as-docx.command';
16
+ export * from './set-reaction.writer-document.command';
@@ -0,0 +1,21 @@
1
+ import { z } from 'zod';
2
+ import { USER_REACTION } from '../../../constants';
3
+ import { WriterDocumentSchema } from '../../../models';
4
+
5
+ export namespace SetReactionWriterDocumentCommand {
6
+ export const RequestParamsSchema = z.object({
7
+ uuid: z.string().uuid(),
8
+ });
9
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
10
+
11
+ export const RequestBodySchema = z.object({
12
+ reaction: z.nativeEnum(USER_REACTION),
13
+ });
14
+ export type RequestBody = z.infer<typeof RequestBodySchema>;
15
+
16
+ export const ResponseSchema = z.object({
17
+ data: WriterDocumentSchema,
18
+ });
19
+
20
+ export type Response = z.infer<typeof ResponseSchema>;
21
+ }
@@ -8,7 +8,7 @@ export namespace GetAggregatedUserData {
8
8
  export type Request = z.infer<typeof RequestSchema>;
9
9
 
10
10
  export const AggregatedUserSchema = z.object({
11
- uuid: z.string().uuid(),
11
+ userId: z.string().uuid(),
12
12
  email: z.string().email().nullable(),
13
13
  telegramId: z.number().nullable(),
14
14
  lastActivityAt: z.string().datetime(),
@@ -14,6 +14,7 @@ export namespace GetMeCommand {
14
14
  role: z.nativeEnum(ROLE),
15
15
  signupMethod: z.nativeEnum(SIGNUP_METHOD),
16
16
  telegramId: z.number().nullable(),
17
+ webmasterId: z.string().uuid().nullable(),
17
18
  }),
18
19
  });
19
20
 
@@ -0,0 +1,16 @@
1
+ import { z } from 'zod';
2
+ import { WebmasterBalanceSchema } from '../../models';
3
+
4
+ export namespace ConfirmWithdrawalCommand {
5
+ export const RequestSchema = z.object({
6
+ uuid: z.string().uuid(),
7
+ });
8
+
9
+ export type Request = z.infer<typeof RequestSchema>;
10
+
11
+ export const ResponseSchema = z.object({
12
+ data: WebmasterBalanceSchema,
13
+ });
14
+
15
+ export type Response = z.infer<typeof ResponseSchema>;
16
+ }
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+ import { WebmasterSchema } from '../../models';
3
+
4
+ export namespace CreateWebmasterCommand {
5
+ export const RequestSchema = WebmasterSchema.pick({
6
+ organization: true,
7
+ organizationType: true,
8
+ tin: true,
9
+ });
10
+
11
+ export type Request = z.infer<typeof RequestSchema>;
12
+
13
+ export const ResponseSchema = z.object({
14
+ data: WebmasterSchema,
15
+ });
16
+
17
+ export type Response = z.infer<typeof ResponseSchema>;
18
+ }
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+
3
+ export namespace CreateWithdrawalRequestCommand {
4
+ export const RequestSchema = z.object({
5
+ amount: z.number().positive(),
6
+ tgProfile: z.string(),
7
+ });
8
+
9
+ export type Request = z.infer<typeof RequestSchema>;
10
+
11
+ export const ResponseSchema = z.object({
12
+ data: z.object({
13
+ isSuccess: z.boolean(),
14
+ }),
15
+ });
16
+
17
+ export type Response = z.infer<typeof ResponseSchema>;
18
+ }