vidspotai-shared 1.0.68 → 1.0.69-dev.0

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 (502) hide show
  1. package/lib/globals/aiModels/enums.d.ts +63 -6
  2. package/lib/globals/aiModels/enums.d.ts.map +1 -1
  3. package/lib/globals/aiModels/enums.js +78 -9
  4. package/lib/globals/aiModels/index.d.ts +2 -30
  5. package/lib/globals/aiModels/index.d.ts.map +1 -1
  6. package/lib/globals/aiModels/index.js +7 -35
  7. package/lib/globals/aiModels/providers/alibaba.d.ts +4 -0
  8. package/lib/globals/aiModels/providers/alibaba.d.ts.map +1 -0
  9. package/lib/globals/aiModels/providers/alibaba.js +194 -0
  10. package/lib/globals/aiModels/providers/bytedance.d.ts.map +1 -1
  11. package/lib/globals/aiModels/providers/bytedance.js +19 -0
  12. package/lib/globals/aiModels/providers/elevenlabs.d.ts +14 -0
  13. package/lib/globals/aiModels/providers/elevenlabs.d.ts.map +1 -0
  14. package/lib/globals/aiModels/providers/elevenlabs.js +29 -0
  15. package/lib/globals/aiModels/providers/google.d.ts.map +1 -1
  16. package/lib/globals/aiModels/providers/google.js +150 -2
  17. package/lib/globals/aiModels/providers/kling.d.ts.map +1 -1
  18. package/lib/globals/aiModels/providers/kling.js +280 -37
  19. package/lib/globals/aiModels/providers/minimax.d.ts.map +1 -1
  20. package/lib/globals/aiModels/providers/minimax.js +76 -11
  21. package/lib/globals/aiModels/providers/openai.d.ts.map +1 -1
  22. package/lib/globals/aiModels/providers/openai.js +90 -6
  23. package/lib/globals/aiModels/providers/pixverse.d.ts.map +1 -1
  24. package/lib/globals/aiModels/providers/pixverse.js +111 -29
  25. package/lib/globals/aiModels/providers/pixverseTemplates.d.ts +36 -0
  26. package/lib/globals/aiModels/providers/pixverseTemplates.d.ts.map +1 -0
  27. package/lib/globals/aiModels/providers/pixverseTemplates.js +42 -0
  28. package/lib/globals/aiModels/providers/runway.d.ts.map +1 -1
  29. package/lib/globals/aiModels/providers/runway.js +64 -2
  30. package/lib/globals/aiModels/tierHelpers.d.ts +33 -0
  31. package/lib/globals/aiModels/tierHelpers.d.ts.map +1 -0
  32. package/lib/globals/aiModels/tierHelpers.js +109 -0
  33. package/lib/globals/aiModels/types.d.ts +20 -1
  34. package/lib/globals/aiModels/types.d.ts.map +1 -1
  35. package/lib/globals/ttsModels/index.d.ts +2 -0
  36. package/lib/globals/ttsModels/index.d.ts.map +1 -1
  37. package/lib/globals/ttsModels/index.js +9 -1
  38. package/lib/globals/ttsModels/providers/minimax.d.ts +8 -0
  39. package/lib/globals/ttsModels/providers/minimax.d.ts.map +1 -0
  40. package/lib/globals/ttsModels/providers/minimax.js +18 -0
  41. package/lib/globals/ttsModels/providers/openai.d.ts +12 -0
  42. package/lib/globals/ttsModels/providers/openai.d.ts.map +1 -0
  43. package/lib/globals/ttsModels/providers/openai.js +22 -0
  44. package/lib/globals/ttsModels/types.d.ts +1 -1
  45. package/lib/globals/ttsModels/types.d.ts.map +1 -1
  46. package/lib/globals/ttsModels/voices.d.ts +39 -4
  47. package/lib/globals/ttsModels/voices.d.ts.map +1 -1
  48. package/lib/globals/ttsModels/voices.js +273 -26
  49. package/lib/globals/types.d.ts +59 -1
  50. package/lib/globals/types.d.ts.map +1 -1
  51. package/lib/globals/types.js +81 -2
  52. package/lib/index.d.ts +1 -0
  53. package/lib/index.d.ts.map +1 -1
  54. package/lib/index.js +1 -0
  55. package/lib/models/agent.model.d.ts +357 -0
  56. package/lib/models/agent.model.d.ts.map +1 -0
  57. package/lib/models/agent.model.js +21 -0
  58. package/lib/models/cachedAsset.model.d.ts +18 -0
  59. package/lib/models/cachedAsset.model.d.ts.map +1 -0
  60. package/lib/models/cachedAsset.model.js +2 -0
  61. package/lib/models/cachedRawAsset.model.d.ts +20 -0
  62. package/lib/models/cachedRawAsset.model.d.ts.map +1 -0
  63. package/lib/models/cachedRawAsset.model.js +2 -0
  64. package/lib/models/image.model.d.ts +47 -0
  65. package/lib/models/image.model.d.ts.map +1 -0
  66. package/lib/models/image.model.js +2 -0
  67. package/lib/models/index.d.ts +6 -0
  68. package/lib/models/index.d.ts.map +1 -1
  69. package/lib/models/index.js +6 -0
  70. package/lib/models/notification.model.d.ts +25 -0
  71. package/lib/models/notification.model.d.ts.map +1 -0
  72. package/lib/models/notification.model.js +2 -0
  73. package/lib/models/ref.model.d.ts +80 -0
  74. package/lib/models/ref.model.d.ts.map +1 -0
  75. package/lib/models/ref.model.js +13 -0
  76. package/lib/models/share.model.d.ts +29 -0
  77. package/lib/models/share.model.d.ts.map +1 -0
  78. package/lib/models/share.model.js +2 -0
  79. package/lib/models/user.model.d.ts +12 -1
  80. package/lib/models/user.model.d.ts.map +1 -1
  81. package/lib/models/video.model.d.ts +120 -8
  82. package/lib/models/video.model.d.ts.map +1 -1
  83. package/lib/models/video.model.js +10 -0
  84. package/lib/schemas/agentPersona.schema.d.ts +10 -0
  85. package/lib/schemas/agentPersona.schema.d.ts.map +1 -0
  86. package/lib/schemas/agentPersona.schema.js +11 -0
  87. package/lib/schemas/agentRunJob.schema.d.ts +105 -0
  88. package/lib/schemas/agentRunJob.schema.d.ts.map +1 -0
  89. package/lib/schemas/agentRunJob.schema.js +88 -0
  90. package/lib/schemas/brandKit.schema.d.ts +113 -0
  91. package/lib/schemas/brandKit.schema.d.ts.map +1 -0
  92. package/lib/schemas/brandKit.schema.js +46 -0
  93. package/lib/schemas/brief.schema.d.ts +263 -0
  94. package/lib/schemas/brief.schema.d.ts.map +1 -0
  95. package/lib/schemas/brief.schema.js +157 -0
  96. package/lib/schemas/index.d.ts +7 -0
  97. package/lib/schemas/index.d.ts.map +1 -0
  98. package/lib/schemas/index.js +22 -0
  99. package/lib/schemas/project.schema.d.ts +1025 -0
  100. package/lib/schemas/project.schema.d.ts.map +1 -0
  101. package/lib/schemas/project.schema.js +256 -0
  102. package/lib/schemas/videoPlan.schema.d.ts +590 -0
  103. package/lib/schemas/videoPlan.schema.d.ts.map +1 -0
  104. package/lib/schemas/videoPlan.schema.js +412 -0
  105. package/lib/services/agent/beatSnap.d.ts +10 -0
  106. package/lib/services/agent/beatSnap.d.ts.map +1 -0
  107. package/lib/services/agent/beatSnap.js +128 -0
  108. package/lib/services/agent/bibleBuilder.d.ts +43 -0
  109. package/lib/services/agent/bibleBuilder.d.ts.map +1 -0
  110. package/lib/services/agent/bibleBuilder.js +102 -0
  111. package/lib/services/agent/bibleImageVision.d.ts +45 -0
  112. package/lib/services/agent/bibleImageVision.d.ts.map +1 -0
  113. package/lib/services/agent/bibleImageVision.js +169 -0
  114. package/lib/services/agent/chatAgent.d.ts +79 -0
  115. package/lib/services/agent/chatAgent.d.ts.map +1 -0
  116. package/lib/services/agent/chatAgent.js +136 -0
  117. package/lib/services/agent/costPreflight.d.ts +61 -0
  118. package/lib/services/agent/costPreflight.d.ts.map +1 -0
  119. package/lib/services/agent/costPreflight.js +143 -0
  120. package/lib/services/agent/critic.d.ts +103 -0
  121. package/lib/services/agent/critic.d.ts.map +1 -0
  122. package/lib/services/agent/critic.js +139 -0
  123. package/lib/services/agent/editClassifier.d.ts +262 -0
  124. package/lib/services/agent/editClassifier.d.ts.map +1 -0
  125. package/lib/services/agent/editClassifier.js +186 -0
  126. package/lib/services/agent/eval/index.d.ts +5 -0
  127. package/lib/services/agent/eval/index.d.ts.map +1 -0
  128. package/lib/services/agent/eval/index.js +20 -0
  129. package/lib/services/agent/eval/judge.d.ts +14 -0
  130. package/lib/services/agent/eval/judge.d.ts.map +1 -0
  131. package/lib/services/agent/eval/judge.js +96 -0
  132. package/lib/services/agent/eval/recorder.d.ts +28 -0
  133. package/lib/services/agent/eval/recorder.d.ts.map +1 -0
  134. package/lib/services/agent/eval/recorder.js +100 -0
  135. package/lib/services/agent/eval/seedBriefs.d.ts +16 -0
  136. package/lib/services/agent/eval/seedBriefs.d.ts.map +1 -0
  137. package/lib/services/agent/eval/seedBriefs.js +1188 -0
  138. package/lib/services/agent/eval/types.d.ts +230 -0
  139. package/lib/services/agent/eval/types.d.ts.map +1 -0
  140. package/lib/services/agent/eval/types.js +73 -0
  141. package/lib/services/agent/executor.d.ts +141 -0
  142. package/lib/services/agent/executor.d.ts.map +1 -0
  143. package/lib/services/agent/executor.js +561 -0
  144. package/lib/services/agent/globalActions.d.ts +49 -0
  145. package/lib/services/agent/globalActions.d.ts.map +1 -0
  146. package/lib/services/agent/globalActions.js +328 -0
  147. package/lib/services/agent/index.d.ts +38 -0
  148. package/lib/services/agent/index.d.ts.map +1 -0
  149. package/lib/services/agent/index.js +53 -0
  150. package/lib/services/agent/llmCaller.d.ts +144 -0
  151. package/lib/services/agent/llmCaller.d.ts.map +1 -0
  152. package/lib/services/agent/llmCaller.js +16 -0
  153. package/lib/services/agent/llmCallerAnthropic.d.ts +90 -0
  154. package/lib/services/agent/llmCallerAnthropic.d.ts.map +1 -0
  155. package/lib/services/agent/llmCallerAnthropic.js +255 -0
  156. package/lib/services/agent/llmCallerGateway.d.ts +61 -0
  157. package/lib/services/agent/llmCallerGateway.d.ts.map +1 -0
  158. package/lib/services/agent/llmCallerGateway.js +360 -0
  159. package/lib/services/agent/llmCallerRegistry.d.ts +6 -0
  160. package/lib/services/agent/llmCallerRegistry.d.ts.map +1 -0
  161. package/lib/services/agent/llmCallerRegistry.js +39 -0
  162. package/lib/services/agent/modelQualityNotes.d.ts +100 -0
  163. package/lib/services/agent/modelQualityNotes.d.ts.map +1 -0
  164. package/lib/services/agent/modelQualityNotes.js +248 -0
  165. package/lib/services/agent/modelRouter.d.ts +41 -0
  166. package/lib/services/agent/modelRouter.d.ts.map +1 -0
  167. package/lib/services/agent/modelRouter.js +65 -0
  168. package/lib/services/agent/musicSelect.d.ts +23 -0
  169. package/lib/services/agent/musicSelect.d.ts.map +1 -0
  170. package/lib/services/agent/musicSelect.js +109 -0
  171. package/lib/services/agent/overlayRenderer.d.ts +67 -0
  172. package/lib/services/agent/overlayRenderer.d.ts.map +1 -0
  173. package/lib/services/agent/overlayRenderer.js +253 -0
  174. package/lib/services/agent/perSceneCritic.d.ts +90 -0
  175. package/lib/services/agent/perSceneCritic.d.ts.map +1 -0
  176. package/lib/services/agent/perSceneCritic.js +125 -0
  177. package/lib/services/agent/personas.d.ts +78 -0
  178. package/lib/services/agent/personas.d.ts.map +1 -0
  179. package/lib/services/agent/personas.js +177 -0
  180. package/lib/services/agent/planDiff.d.ts +76 -0
  181. package/lib/services/agent/planDiff.d.ts.map +1 -0
  182. package/lib/services/agent/planDiff.js +182 -0
  183. package/lib/services/agent/planMutations.d.ts +46 -0
  184. package/lib/services/agent/planMutations.d.ts.map +1 -0
  185. package/lib/services/agent/planMutations.js +120 -0
  186. package/lib/services/agent/planner/Planner.d.ts +107 -0
  187. package/lib/services/agent/planner/Planner.d.ts.map +1 -0
  188. package/lib/services/agent/planner/Planner.js +591 -0
  189. package/lib/services/agent/planner/overlaySanity.d.ts +7 -0
  190. package/lib/services/agent/planner/overlaySanity.d.ts.map +1 -0
  191. package/lib/services/agent/planner/overlaySanity.js +86 -0
  192. package/lib/services/agent/planner/promptSections.d.ts +25 -0
  193. package/lib/services/agent/planner/promptSections.d.ts.map +1 -0
  194. package/lib/services/agent/planner/promptSections.js +174 -0
  195. package/lib/services/agent/planner/repair.d.ts +16 -0
  196. package/lib/services/agent/planner/repair.d.ts.map +1 -0
  197. package/lib/services/agent/planner/repair.js +51 -0
  198. package/lib/services/agent/planner/structuralRules.d.ts +10 -0
  199. package/lib/services/agent/planner/structuralRules.d.ts.map +1 -0
  200. package/lib/services/agent/planner/structuralRules.js +111 -0
  201. package/lib/services/agent/planner/validators.d.ts +65 -0
  202. package/lib/services/agent/planner/validators.d.ts.map +1 -0
  203. package/lib/services/agent/planner/validators.js +284 -0
  204. package/lib/services/agent/planner.d.ts +3 -0
  205. package/lib/services/agent/planner.d.ts.map +1 -0
  206. package/lib/services/agent/planner.js +14 -0
  207. package/lib/services/agent/providerFallback/chains.d.ts +100 -0
  208. package/lib/services/agent/providerFallback/chains.d.ts.map +1 -0
  209. package/lib/services/agent/providerFallback/chains.js +198 -0
  210. package/lib/services/agent/providerFallback/classifier.d.ts +36 -0
  211. package/lib/services/agent/providerFallback/classifier.d.ts.map +1 -0
  212. package/lib/services/agent/providerFallback/classifier.js +103 -0
  213. package/lib/services/agent/providerFallback/index.d.ts +4 -0
  214. package/lib/services/agent/providerFallback/index.d.ts.map +1 -0
  215. package/lib/services/agent/providerFallback/index.js +19 -0
  216. package/lib/services/agent/providerFallback/withFallback.d.ts +60 -0
  217. package/lib/services/agent/providerFallback/withFallback.d.ts.map +1 -0
  218. package/lib/services/agent/providerFallback/withFallback.js +93 -0
  219. package/lib/services/agent/providerTaskCache.d.ts +50 -0
  220. package/lib/services/agent/providerTaskCache.d.ts.map +1 -0
  221. package/lib/services/agent/providerTaskCache.js +98 -0
  222. package/lib/services/agent/qualityGate.d.ts +82 -0
  223. package/lib/services/agent/qualityGate.d.ts.map +1 -0
  224. package/lib/services/agent/qualityGate.js +232 -0
  225. package/lib/services/agent/referenceImageRenderer.d.ts +37 -0
  226. package/lib/services/agent/referenceImageRenderer.d.ts.map +1 -0
  227. package/lib/services/agent/referenceImageRenderer.js +92 -0
  228. package/lib/services/agent/regenCore.d.ts +60 -0
  229. package/lib/services/agent/regenCore.d.ts.map +1 -0
  230. package/lib/services/agent/regenCore.js +487 -0
  231. package/lib/services/agent/runHelpers.d.ts +44 -0
  232. package/lib/services/agent/runHelpers.d.ts.map +1 -0
  233. package/lib/services/agent/runHelpers.js +196 -0
  234. package/lib/services/agent/sceneLayoutVision.d.ts +90 -0
  235. package/lib/services/agent/sceneLayoutVision.d.ts.map +1 -0
  236. package/lib/services/agent/sceneLayoutVision.js +212 -0
  237. package/lib/services/agent/stitchedVideoCritic.d.ts +136 -0
  238. package/lib/services/agent/stitchedVideoCritic.d.ts.map +1 -0
  239. package/lib/services/agent/stitchedVideoCritic.gemini.d.ts +26 -0
  240. package/lib/services/agent/stitchedVideoCritic.gemini.d.ts.map +1 -0
  241. package/lib/services/agent/stitchedVideoCritic.gemini.js +198 -0
  242. package/lib/services/agent/stitchedVideoCritic.js +162 -0
  243. package/lib/services/agent/taskPoller.d.ts +65 -0
  244. package/lib/services/agent/taskPoller.d.ts.map +1 -0
  245. package/lib/services/agent/taskPoller.js +176 -0
  246. package/lib/services/agent/textOverlayStyles.d.ts +60 -0
  247. package/lib/services/agent/textOverlayStyles.d.ts.map +1 -0
  248. package/lib/services/agent/textOverlayStyles.js +174 -0
  249. package/lib/services/agent/toolRegistry.d.ts +73 -0
  250. package/lib/services/agent/toolRegistry.d.ts.map +1 -0
  251. package/lib/services/agent/toolRegistry.js +95 -0
  252. package/lib/services/agent/tools/analyzeReference.tool.d.ts +36 -0
  253. package/lib/services/agent/tools/analyzeReference.tool.d.ts.map +1 -0
  254. package/lib/services/agent/tools/analyzeReference.tool.js +44 -0
  255. package/lib/services/agent/tools/animateImage.tool.d.ts +24 -0
  256. package/lib/services/agent/tools/animateImage.tool.d.ts.map +1 -0
  257. package/lib/services/agent/tools/animateImage.tool.js +115 -0
  258. package/lib/services/agent/tools/animateImageWithMotionBrush.tool.d.ts +32 -0
  259. package/lib/services/agent/tools/animateImageWithMotionBrush.tool.d.ts.map +1 -0
  260. package/lib/services/agent/tools/animateImageWithMotionBrush.tool.js +135 -0
  261. package/lib/services/agent/tools/composeScene.tool.d.ts +978 -0
  262. package/lib/services/agent/tools/composeScene.tool.d.ts.map +1 -0
  263. package/lib/services/agent/tools/composeScene.tool.js +90 -0
  264. package/lib/services/agent/tools/estimateCost.tool.d.ts +352 -0
  265. package/lib/services/agent/tools/estimateCost.tool.d.ts.map +1 -0
  266. package/lib/services/agent/tools/estimateCost.tool.js +62 -0
  267. package/lib/services/agent/tools/generateAvatarVideo.tool.d.ts +32 -0
  268. package/lib/services/agent/tools/generateAvatarVideo.tool.d.ts.map +1 -0
  269. package/lib/services/agent/tools/generateAvatarVideo.tool.js +143 -0
  270. package/lib/services/agent/tools/generateCaptions.tool.d.ts +42 -0
  271. package/lib/services/agent/tools/generateCaptions.tool.d.ts.map +1 -0
  272. package/lib/services/agent/tools/generateCaptions.tool.js +196 -0
  273. package/lib/services/agent/tools/generateImage.tool.d.ts +74 -0
  274. package/lib/services/agent/tools/generateImage.tool.d.ts.map +1 -0
  275. package/lib/services/agent/tools/generateImage.tool.js +206 -0
  276. package/lib/services/agent/tools/generateVideo.tool.d.ts +31 -0
  277. package/lib/services/agent/tools/generateVideo.tool.d.ts.map +1 -0
  278. package/lib/services/agent/tools/generateVideo.tool.js +153 -0
  279. package/lib/services/agent/tools/generateVoiceover.tool.d.ts +44 -0
  280. package/lib/services/agent/tools/generateVoiceover.tool.d.ts.map +1 -0
  281. package/lib/services/agent/tools/generateVoiceover.tool.js +206 -0
  282. package/lib/services/agent/tools/index.d.ts +20 -0
  283. package/lib/services/agent/tools/index.d.ts.map +1 -0
  284. package/lib/services/agent/tools/index.js +35 -0
  285. package/lib/services/agent/tools/planVideo.tool.d.ts +343 -0
  286. package/lib/services/agent/tools/planVideo.tool.d.ts.map +1 -0
  287. package/lib/services/agent/tools/planVideo.tool.js +46 -0
  288. package/lib/services/agent/tools/render.tool.d.ts +367 -0
  289. package/lib/services/agent/tools/render.tool.d.ts.map +1 -0
  290. package/lib/services/agent/tools/render.tool.js +48 -0
  291. package/lib/services/agent/tools/searchMusic.tool.d.ts +49 -0
  292. package/lib/services/agent/tools/searchMusic.tool.d.ts.map +1 -0
  293. package/lib/services/agent/tools/searchMusic.tool.js +74 -0
  294. package/lib/services/agent/tools/searchStock.tool.d.ts +41 -0
  295. package/lib/services/agent/tools/searchStock.tool.d.ts.map +1 -0
  296. package/lib/services/agent/tools/searchStock.tool.js +314 -0
  297. package/lib/services/agent/tools/searchUserLibrary.tool.d.ts +59 -0
  298. package/lib/services/agent/tools/searchUserLibrary.tool.d.ts.map +1 -0
  299. package/lib/services/agent/tools/searchUserLibrary.tool.js +58 -0
  300. package/lib/services/agent/ttsDuration.d.ts +29 -0
  301. package/lib/services/agent/ttsDuration.d.ts.map +1 -0
  302. package/lib/services/agent/ttsDuration.js +60 -0
  303. package/lib/services/aiGen/aiGenFactory.service.d.ts +21 -1
  304. package/lib/services/aiGen/aiGenFactory.service.d.ts.map +1 -1
  305. package/lib/services/aiGen/aiGenFactory.service.js +84 -21
  306. package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts +31 -0
  307. package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts.map +1 -0
  308. package/lib/services/aiGen/canonicalAdapters/cameraControl.types.js +2 -0
  309. package/lib/services/aiGen/canonicalAdapters/index.d.ts +3 -0
  310. package/lib/services/aiGen/canonicalAdapters/index.d.ts.map +1 -0
  311. package/lib/services/aiGen/canonicalAdapters/index.js +18 -0
  312. package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts +23 -0
  313. package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts.map +1 -0
  314. package/lib/services/aiGen/canonicalAdapters/multiShot.types.js +12 -0
  315. package/lib/services/aiGen/helpers.d.ts.map +1 -1
  316. package/lib/services/aiGen/helpers.js +10 -0
  317. package/lib/services/aiGen/providers/alibaba/alibaba.d.ts +14 -3
  318. package/lib/services/aiGen/providers/alibaba/alibaba.d.ts.map +1 -1
  319. package/lib/services/aiGen/providers/alibaba/alibaba.js +155 -22
  320. package/lib/services/aiGen/providers/baseAiGenProvider.service.d.ts +22 -4
  321. package/lib/services/aiGen/providers/baseAiGenProvider.service.d.ts.map +1 -1
  322. package/lib/services/aiGen/providers/baseAiGenProvider.service.js +32 -0
  323. package/lib/services/aiGen/providers/bytedance/bytedance.service.d.ts.map +1 -1
  324. package/lib/services/aiGen/providers/bytedance/bytedance.service.js +13 -19
  325. package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.d.ts +18 -0
  326. package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.d.ts.map +1 -0
  327. package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.js +102 -0
  328. package/lib/services/aiGen/providers/fal/falImage.service.d.ts +15 -0
  329. package/lib/services/aiGen/providers/fal/falImage.service.d.ts.map +1 -0
  330. package/lib/services/aiGen/providers/fal/falImage.service.js +141 -0
  331. package/lib/services/aiGen/providers/fal/index.d.ts +2 -0
  332. package/lib/services/aiGen/providers/fal/index.d.ts.map +1 -0
  333. package/lib/services/aiGen/providers/fal/index.js +17 -0
  334. package/lib/services/aiGen/providers/google/google.service.d.ts +11 -2
  335. package/lib/services/aiGen/providers/google/google.service.d.ts.map +1 -1
  336. package/lib/services/aiGen/providers/google/google.service.js +245 -28
  337. package/lib/services/aiGen/providers/index.d.ts +3 -0
  338. package/lib/services/aiGen/providers/index.d.ts.map +1 -1
  339. package/lib/services/aiGen/providers/index.js +3 -0
  340. package/lib/services/aiGen/providers/kling/cameraAdapter.d.ts +4 -0
  341. package/lib/services/aiGen/providers/kling/cameraAdapter.d.ts.map +1 -0
  342. package/lib/services/aiGen/providers/kling/cameraAdapter.js +53 -0
  343. package/lib/services/aiGen/providers/kling/index.d.ts +1 -0
  344. package/lib/services/aiGen/providers/kling/index.d.ts.map +1 -1
  345. package/lib/services/aiGen/providers/kling/index.js +1 -0
  346. package/lib/services/aiGen/providers/kling/kling.service.d.ts +12 -1
  347. package/lib/services/aiGen/providers/kling/kling.service.d.ts.map +1 -1
  348. package/lib/services/aiGen/providers/kling/kling.service.js +357 -26
  349. package/lib/services/aiGen/providers/kling/klingImage.service.d.ts +21 -0
  350. package/lib/services/aiGen/providers/kling/klingImage.service.d.ts.map +1 -0
  351. package/lib/services/aiGen/providers/kling/klingImage.service.js +208 -0
  352. package/lib/services/aiGen/providers/kling/types.d.ts +105 -0
  353. package/lib/services/aiGen/providers/kling/types.d.ts.map +1 -1
  354. package/lib/services/aiGen/providers/minimax/minimax.service.d.ts +15 -2
  355. package/lib/services/aiGen/providers/minimax/minimax.service.d.ts.map +1 -1
  356. package/lib/services/aiGen/providers/minimax/minimax.service.js +128 -5
  357. package/lib/services/aiGen/providers/minimax/types.d.ts +10 -1
  358. package/lib/services/aiGen/providers/minimax/types.d.ts.map +1 -1
  359. package/lib/services/aiGen/providers/openai/openai.service.d.ts +8 -2
  360. package/lib/services/aiGen/providers/openai/openai.service.d.ts.map +1 -1
  361. package/lib/services/aiGen/providers/openai/openai.service.js +184 -7
  362. package/lib/services/aiGen/providers/pexels/index.d.ts +2 -0
  363. package/lib/services/aiGen/providers/pexels/index.d.ts.map +1 -0
  364. package/lib/services/aiGen/providers/{azure → pexels}/index.js +1 -1
  365. package/lib/services/aiGen/providers/pexels/pexels.service.d.ts +11 -0
  366. package/lib/services/aiGen/providers/pexels/pexels.service.d.ts.map +1 -0
  367. package/lib/services/aiGen/providers/pexels/pexels.service.js +150 -0
  368. package/lib/services/aiGen/providers/pixabay/index.d.ts +2 -0
  369. package/lib/services/aiGen/providers/pixabay/index.d.ts.map +1 -0
  370. package/lib/services/aiGen/providers/pixabay/index.js +17 -0
  371. package/lib/services/aiGen/providers/pixabay/pixabay.service.d.ts +12 -0
  372. package/lib/services/aiGen/providers/pixabay/pixabay.service.d.ts.map +1 -0
  373. package/lib/services/aiGen/providers/pixabay/pixabay.service.js +156 -0
  374. package/lib/services/aiGen/providers/pixverse/pixverse.service.d.ts.map +1 -1
  375. package/lib/services/aiGen/providers/pixverse/pixverse.service.js +125 -2
  376. package/lib/services/aiGen/providers/runway/cameraAdapter.d.ts +3 -0
  377. package/lib/services/aiGen/providers/runway/cameraAdapter.d.ts.map +1 -0
  378. package/lib/services/aiGen/providers/runway/cameraAdapter.js +46 -0
  379. package/lib/services/aiGen/providers/runway/runway.service.d.ts +12 -2
  380. package/lib/services/aiGen/providers/runway/runway.service.d.ts.map +1 -1
  381. package/lib/services/aiGen/providers/runway/runway.service.js +224 -21
  382. package/lib/services/aiGen/providers/types.d.ts +263 -6
  383. package/lib/services/aiGen/providers/types.d.ts.map +1 -1
  384. package/lib/services/aiGen/providers/unsplash/index.d.ts +2 -0
  385. package/lib/services/aiGen/providers/unsplash/index.d.ts.map +1 -0
  386. package/lib/services/aiGen/providers/unsplash/index.js +17 -0
  387. package/lib/services/aiGen/providers/unsplash/unsplash.service.d.ts +16 -0
  388. package/lib/services/aiGen/providers/unsplash/unsplash.service.d.ts.map +1 -0
  389. package/lib/services/aiGen/providers/unsplash/unsplash.service.js +131 -0
  390. package/lib/services/analytics.service.js +2 -4
  391. package/lib/services/apiUsageCounter.service.d.ts +20 -0
  392. package/lib/services/apiUsageCounter.service.d.ts.map +1 -0
  393. package/lib/services/apiUsageCounter.service.js +84 -0
  394. package/lib/services/asr/assemblyai.service.d.ts +72 -0
  395. package/lib/services/asr/assemblyai.service.d.ts.map +1 -0
  396. package/lib/services/asr/assemblyai.service.js +89 -0
  397. package/lib/services/asr/index.d.ts +3 -0
  398. package/lib/services/asr/index.d.ts.map +1 -0
  399. package/lib/services/asr/index.js +18 -0
  400. package/lib/services/asr/whisper.service.d.ts +18 -0
  401. package/lib/services/asr/whisper.service.d.ts.map +1 -0
  402. package/lib/services/asr/whisper.service.js +151 -0
  403. package/lib/services/assetCache.service.d.ts +54 -0
  404. package/lib/services/assetCache.service.d.ts.map +1 -0
  405. package/lib/services/assetCache.service.js +109 -0
  406. package/lib/services/audioAnalysis/index.d.ts +2 -0
  407. package/lib/services/audioAnalysis/index.d.ts.map +1 -0
  408. package/lib/services/audioAnalysis/index.js +17 -0
  409. package/lib/services/audioAnalysis/onsetDetection.service.d.ts +50 -0
  410. package/lib/services/audioAnalysis/onsetDetection.service.d.ts.map +1 -0
  411. package/lib/services/audioAnalysis/onsetDetection.service.js +140 -0
  412. package/lib/services/bullmq.service.d.ts +6 -1
  413. package/lib/services/bullmq.service.d.ts.map +1 -1
  414. package/lib/services/bullmq.service.js +62 -14
  415. package/lib/services/credit.service.d.ts.map +1 -1
  416. package/lib/services/credit.service.js +45 -7
  417. package/lib/services/credits/pricing.d.ts +58 -0
  418. package/lib/services/credits/pricing.d.ts.map +1 -0
  419. package/lib/services/credits/pricing.js +111 -0
  420. package/lib/services/editor/designToProject.d.ts +75 -0
  421. package/lib/services/editor/designToProject.d.ts.map +1 -0
  422. package/lib/services/editor/designToProject.js +295 -0
  423. package/lib/services/editor/planToProject.d.ts +84 -0
  424. package/lib/services/editor/planToProject.d.ts.map +1 -0
  425. package/lib/services/editor/planToProject.js +395 -0
  426. package/lib/services/editor/projectToDesign.d.ts +4 -0
  427. package/lib/services/editor/projectToDesign.d.ts.map +1 -0
  428. package/lib/services/editor/projectToDesign.js +186 -0
  429. package/lib/services/firestore.service.d.ts +17 -0
  430. package/lib/services/firestore.service.d.ts.map +1 -1
  431. package/lib/services/firestore.service.js +30 -0
  432. package/lib/services/gcp/index.d.ts +1 -0
  433. package/lib/services/gcp/index.d.ts.map +1 -1
  434. package/lib/services/gcp/index.js +1 -0
  435. package/lib/services/gcp/uploadAudioBuffer.d.ts +13 -0
  436. package/lib/services/gcp/uploadAudioBuffer.d.ts.map +1 -0
  437. package/lib/services/gcp/uploadAudioBuffer.js +28 -0
  438. package/lib/services/index.d.ts +13 -0
  439. package/lib/services/index.d.ts.map +1 -1
  440. package/lib/services/index.js +13 -0
  441. package/lib/services/musicGen/index.d.ts +6 -0
  442. package/lib/services/musicGen/index.d.ts.map +1 -0
  443. package/lib/services/musicGen/index.js +26 -0
  444. package/lib/services/musicGen/musicSearchFactory.service.d.ts +14 -0
  445. package/lib/services/musicGen/musicSearchFactory.service.d.ts.map +1 -0
  446. package/lib/services/musicGen/musicSearchFactory.service.js +59 -0
  447. package/lib/services/musicGen/providers/curated.service.d.ts +24 -0
  448. package/lib/services/musicGen/providers/curated.service.d.ts.map +1 -0
  449. package/lib/services/musicGen/providers/curated.service.js +173 -0
  450. package/lib/services/musicGen/providers/jamendo.service.d.ts +8 -0
  451. package/lib/services/musicGen/providers/jamendo.service.d.ts.map +1 -0
  452. package/lib/services/musicGen/providers/jamendo.service.js +113 -0
  453. package/lib/services/musicGen/providers/mubert.service.d.ts +10 -0
  454. package/lib/services/musicGen/providers/mubert.service.d.ts.map +1 -0
  455. package/lib/services/musicGen/providers/mubert.service.js +128 -0
  456. package/lib/services/musicGen/types.d.ts +46 -0
  457. package/lib/services/musicGen/types.d.ts.map +1 -0
  458. package/lib/services/musicGen/types.js +10 -0
  459. package/lib/services/notification.service.d.ts +22 -0
  460. package/lib/services/notification.service.d.ts.map +1 -0
  461. package/lib/services/notification.service.js +76 -0
  462. package/lib/services/rateLimiter/distributedRateLimiter.service.d.ts +78 -0
  463. package/lib/services/rateLimiter/distributedRateLimiter.service.d.ts.map +1 -0
  464. package/lib/services/rateLimiter/distributedRateLimiter.service.js +269 -0
  465. package/lib/services/rateLimiter/index.d.ts +2 -0
  466. package/lib/services/rateLimiter/index.d.ts.map +1 -0
  467. package/lib/services/rateLimiter/index.js +17 -0
  468. package/lib/services/redis.service.d.ts +9 -0
  469. package/lib/services/redis.service.d.ts.map +1 -1
  470. package/lib/services/redis.service.js +20 -11
  471. package/lib/services/redisOptions.d.ts +22 -0
  472. package/lib/services/redisOptions.d.ts.map +1 -0
  473. package/lib/services/redisOptions.js +51 -0
  474. package/lib/services/tts/index.d.ts +2 -0
  475. package/lib/services/tts/index.d.ts.map +1 -1
  476. package/lib/services/tts/index.js +2 -0
  477. package/lib/services/tts/providers/elevenlabs.service.d.ts.map +1 -1
  478. package/lib/services/tts/providers/elevenlabs.service.js +91 -24
  479. package/lib/services/tts/providers/minimax.service.d.ts +14 -0
  480. package/lib/services/tts/providers/minimax.service.d.ts.map +1 -0
  481. package/lib/services/tts/providers/minimax.service.js +78 -0
  482. package/lib/services/tts/providers/openai.service.d.ts +14 -0
  483. package/lib/services/tts/providers/openai.service.d.ts.map +1 -0
  484. package/lib/services/tts/providers/openai.service.js +73 -0
  485. package/lib/services/tts/ttsFactory.service.d.ts.map +1 -1
  486. package/lib/services/tts/ttsFactory.service.js +6 -0
  487. package/lib/services/tts/types.d.ts +33 -0
  488. package/lib/services/tts/types.d.ts.map +1 -1
  489. package/lib/utils/errors.d.ts +8 -0
  490. package/lib/utils/errors.d.ts.map +1 -1
  491. package/lib/utils/errors.js +8 -0
  492. package/lib/utils/helpers.d.ts +13 -0
  493. package/lib/utils/helpers.d.ts.map +1 -1
  494. package/lib/utils/helpers.js +48 -11
  495. package/lib/utils/logger.d.ts.map +1 -1
  496. package/lib/utils/logger.js +37 -1
  497. package/package.json +5 -1
  498. package/lib/services/aiGen/providers/azure/azure.service.d.ts +0 -14
  499. package/lib/services/aiGen/providers/azure/azure.service.d.ts.map +0 -1
  500. package/lib/services/aiGen/providers/azure/azure.service.js +0 -108
  501. package/lib/services/aiGen/providers/azure/index.d.ts +0 -2
  502. package/lib/services/aiGen/providers/azure/index.d.ts.map +0 -1
@@ -1,3 +1,4 @@
1
1
  export * from "./gcp.service";
2
2
  export * from "./gsheet.service";
3
+ export * from "./uploadAudioBuffer";
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/gcp/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/gcp/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC"}
@@ -16,3 +16,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./gcp.service"), exports);
18
18
  __exportStar(require("./gsheet.service"), exports);
19
+ __exportStar(require("./uploadAudioBuffer"), exports);
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Uploads an audio buffer to the project's Firebase Storage bucket and
3
+ * returns a public download URL. Used by the agent VO pipeline: ElevenLabs
4
+ * returns base64 inline and would blow Firestore's 1 MiB doc cap, so the
5
+ * worker flips base64 → URL before persisting projectJson.
6
+ *
7
+ * The download token follows the same `firebasestorageDownloadTokens`
8
+ * pattern as handleUploadFile so the resulting URL is publicly fetchable
9
+ * without a signed-URL refresh dance — matches how generated visual assets
10
+ * are exposed today.
11
+ */
12
+ export declare function uploadAudioBufferToGcs(buffer: Buffer, destination: string, contentType?: string): Promise<string>;
13
+ //# sourceMappingURL=uploadAudioBuffer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uploadAudioBuffer.d.ts","sourceRoot":"","sources":["../../../src/services/gcp/uploadAudioBuffer.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,WAAW,GAAE,MAAqB,GACjC,OAAO,CAAC,MAAM,CAAC,CAWjB"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.uploadAudioBufferToGcs = uploadAudioBufferToGcs;
4
+ const node_crypto_1 = require("node:crypto");
5
+ const firebase_1 = require("../../libs/firebase");
6
+ /**
7
+ * Uploads an audio buffer to the project's Firebase Storage bucket and
8
+ * returns a public download URL. Used by the agent VO pipeline: ElevenLabs
9
+ * returns base64 inline and would blow Firestore's 1 MiB doc cap, so the
10
+ * worker flips base64 → URL before persisting projectJson.
11
+ *
12
+ * The download token follows the same `firebasestorageDownloadTokens`
13
+ * pattern as handleUploadFile so the resulting URL is publicly fetchable
14
+ * without a signed-URL refresh dance — matches how generated visual assets
15
+ * are exposed today.
16
+ */
17
+ async function uploadAudioBufferToGcs(buffer, destination, contentType = "audio/mpeg") {
18
+ const bucket = (0, firebase_1.getBucket)();
19
+ const file = bucket.file(destination);
20
+ const downloadToken = (0, node_crypto_1.randomUUID)();
21
+ await file.save(buffer, {
22
+ metadata: {
23
+ contentType,
24
+ metadata: { firebaseStorageDownloadTokens: downloadToken },
25
+ },
26
+ });
27
+ return `https://firebasestorage.googleapis.com/v0/b/${bucket.name}/o/${encodeURIComponent(destination)}?alt=media&token=${downloadToken}`;
28
+ }
@@ -1,9 +1,22 @@
1
1
  export * from "./redis.service";
2
+ export * from "./redisOptions";
3
+ export * from "./rateLimiter";
2
4
  export * from "./firestore.service";
3
5
  export * from "./aiGen";
4
6
  export * from "./bullmq.service";
5
7
  export * from "./gcp";
6
8
  export * from "./credit.service";
9
+ export * from "./notification.service";
10
+ export * from "./credits/pricing";
7
11
  export * from "./analytics.service";
8
12
  export * from "./tts";
13
+ export * from "./musicGen";
14
+ export * from "./audioAnalysis";
15
+ export * from "./asr";
16
+ export * from "./agent";
17
+ export * from "./assetCache.service";
18
+ export * from "./apiUsageCounter.service";
19
+ export * from "./editor/designToProject";
20
+ export * from "./editor/projectToDesign";
21
+ export * from "./editor/planToProject";
9
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,OAAO,CAAC;AACtB,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,OAAO,CAAC;AACtB,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC"}
@@ -15,10 +15,23 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./redis.service"), exports);
18
+ __exportStar(require("./redisOptions"), exports);
19
+ __exportStar(require("./rateLimiter"), exports);
18
20
  __exportStar(require("./firestore.service"), exports);
19
21
  __exportStar(require("./aiGen"), exports);
20
22
  __exportStar(require("./bullmq.service"), exports);
21
23
  __exportStar(require("./gcp"), exports);
22
24
  __exportStar(require("./credit.service"), exports);
25
+ __exportStar(require("./notification.service"), exports);
26
+ __exportStar(require("./credits/pricing"), exports);
23
27
  __exportStar(require("./analytics.service"), exports);
24
28
  __exportStar(require("./tts"), exports);
29
+ __exportStar(require("./musicGen"), exports);
30
+ __exportStar(require("./audioAnalysis"), exports);
31
+ __exportStar(require("./asr"), exports);
32
+ __exportStar(require("./agent"), exports);
33
+ __exportStar(require("./assetCache.service"), exports);
34
+ __exportStar(require("./apiUsageCounter.service"), exports);
35
+ __exportStar(require("./editor/designToProject"), exports);
36
+ __exportStar(require("./editor/projectToDesign"), exports);
37
+ __exportStar(require("./editor/planToProject"), exports);
@@ -0,0 +1,6 @@
1
+ export * from "./types";
2
+ export * from "./musicSearchFactory.service";
3
+ export { CURATED_CATALOG, CuratedMusicProvider } from "./providers/curated.service";
4
+ export { JamendoMusicProvider } from "./providers/jamendo.service";
5
+ export { MubertMusicProvider } from "./providers/mubert.service";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/musicGen/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.MubertMusicProvider = exports.JamendoMusicProvider = exports.CuratedMusicProvider = exports.CURATED_CATALOG = void 0;
18
+ __exportStar(require("./types"), exports);
19
+ __exportStar(require("./musicSearchFactory.service"), exports);
20
+ var curated_service_1 = require("./providers/curated.service");
21
+ Object.defineProperty(exports, "CURATED_CATALOG", { enumerable: true, get: function () { return curated_service_1.CURATED_CATALOG; } });
22
+ Object.defineProperty(exports, "CuratedMusicProvider", { enumerable: true, get: function () { return curated_service_1.CuratedMusicProvider; } });
23
+ var jamendo_service_1 = require("./providers/jamendo.service");
24
+ Object.defineProperty(exports, "JamendoMusicProvider", { enumerable: true, get: function () { return jamendo_service_1.JamendoMusicProvider; } });
25
+ var mubert_service_1 = require("./providers/mubert.service");
26
+ Object.defineProperty(exports, "MubertMusicProvider", { enumerable: true, get: function () { return mubert_service_1.MubertMusicProvider; } });
@@ -0,0 +1,14 @@
1
+ import { MusicSearchParams, MusicSearchProvider, MusicSearchResult, MusicSource } from "./types";
2
+ export declare function getMusicSearchProvider(source: MusicSource): MusicSearchProvider;
3
+ export declare function listAvailableMusicSources(): MusicSource[];
4
+ /**
5
+ * Walk providers in priority order; stop at the first one that returns a
6
+ * track. Skips providers that aren't configured. Caller chooses one of the
7
+ * tracks — usually the first.
8
+ */
9
+ export declare function searchAllMusicSources(params: MusicSearchParams, opts?: {
10
+ preferred?: MusicSource;
11
+ }): Promise<MusicSearchResult & {
12
+ sourceUsed?: MusicSource;
13
+ }>;
14
+ //# sourceMappingURL=musicSearchFactory.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"musicSearchFactory.service.d.ts","sourceRoot":"","sources":["../../../src/services/musicGen/musicSearchFactory.service.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,WAAW,EACZ,MAAM,SAAS,CAAC;AA4BjB,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,WAAW,GAAG,mBAAmB,CAI/E;AAED,wBAAgB,yBAAyB,IAAI,WAAW,EAAE,CAEzD;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,iBAAiB,EACzB,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,WAAW,CAAA;CAAO,GACrC,OAAO,CAAC,iBAAiB,GAAG;IAAE,UAAU,CAAC,EAAE,WAAW,CAAA;CAAE,CAAC,CAY3D"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getMusicSearchProvider = getMusicSearchProvider;
4
+ exports.listAvailableMusicSources = listAvailableMusicSources;
5
+ exports.searchAllMusicSources = searchAllMusicSources;
6
+ const curated_service_1 = require("./providers/curated.service");
7
+ const jamendo_service_1 = require("./providers/jamendo.service");
8
+ const mubert_service_1 = require("./providers/mubert.service");
9
+ /**
10
+ * Factory + multi-source dispatcher for music search.
11
+ *
12
+ * Resolution rules:
13
+ * - When a specific source is requested, return its provider (even if not
14
+ * available — caller can branch on isAvailable() for clearer errors).
15
+ * - `searchAll(params)` walks the priority list (curated → jamendo → mubert)
16
+ * and returns the first non-empty result. Curated is always first because
17
+ * it ships zero-latency, zero-cost; Mubert is last because it generates
18
+ * and bills per call.
19
+ */
20
+ const PRIORITY = ["curated", "jamendo", "mubert"];
21
+ let providerCache;
22
+ function providers() {
23
+ if (providerCache)
24
+ return providerCache;
25
+ providerCache = new Map([
26
+ ["curated", new curated_service_1.CuratedMusicProvider()],
27
+ ["jamendo", new jamendo_service_1.JamendoMusicProvider()],
28
+ ["mubert", new mubert_service_1.MubertMusicProvider()],
29
+ ]);
30
+ return providerCache;
31
+ }
32
+ function getMusicSearchProvider(source) {
33
+ const p = providers().get(source);
34
+ if (!p)
35
+ throw new Error(`Unknown music source: ${source}`);
36
+ return p;
37
+ }
38
+ function listAvailableMusicSources() {
39
+ return PRIORITY.filter((s) => providers().get(s)?.isAvailable());
40
+ }
41
+ /**
42
+ * Walk providers in priority order; stop at the first one that returns a
43
+ * track. Skips providers that aren't configured. Caller chooses one of the
44
+ * tracks — usually the first.
45
+ */
46
+ async function searchAllMusicSources(params, opts = {}) {
47
+ const order = opts.preferred
48
+ ? [opts.preferred, ...PRIORITY.filter((s) => s !== opts.preferred)]
49
+ : PRIORITY;
50
+ for (const source of order) {
51
+ const provider = providers().get(source);
52
+ if (!provider?.isAvailable())
53
+ continue;
54
+ const result = await provider.search(params);
55
+ if (result.tracks.length)
56
+ return { ...result, sourceUsed: source };
57
+ }
58
+ return { tracks: [] };
59
+ }
@@ -0,0 +1,24 @@
1
+ import { MusicSearchParams, MusicSearchProvider, MusicSearchResult, MusicTrack } from "../types";
2
+ /**
3
+ * Curated music catalog — always-on, zero-config.
4
+ *
5
+ * Tracks are sourced from Pixabay's free music library (Pixabay Content
6
+ * License: free for commercial use, no attribution required). URLs point
7
+ * at cdn.pixabay.com directly to avoid us hosting / paying egress.
8
+ * AG-36 (2026-05-17): previously pointed at a never-created GCS bucket
9
+ * (vidspot-public-music) so every selection 404'd; replaced with verified
10
+ * pixabay CDN URLs scraped via scrapePixabayMusic.py.
11
+ *
12
+ * If the CDN proves unreliable later, mirror these to our own bucket via
13
+ * the same script + a gsutil cp pass; the catalog shape doesn't change.
14
+ *
15
+ * BPM values are approximate (eyeballed from the Pixabay listing's
16
+ * tempo band). Refine when AG-39 onset-detection picks them up.
17
+ */
18
+ export declare const CURATED_CATALOG: MusicTrack[];
19
+ export declare class CuratedMusicProvider implements MusicSearchProvider {
20
+ readonly source: "curated";
21
+ isAvailable(): boolean;
22
+ search(params: MusicSearchParams): Promise<MusicSearchResult>;
23
+ }
24
+ //# sourceMappingURL=curated.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"curated.service.d.ts","sourceRoot":"","sources":["../../../../src/services/musicGen/providers/curated.service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,UAAU,EACX,MAAM,UAAU,CAAC;AAElB;;;;;;;;;;;;;;;GAeG;AAEH,eAAO,MAAM,eAAe,EAAE,UAAU,EAiFvC,CAAC;AAsDF,qBAAa,oBAAqB,YAAW,mBAAmB;IAC9D,QAAQ,CAAC,MAAM,EAAG,SAAS,CAAU;IACrC,WAAW,IAAI,OAAO;IAIhB,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAUpE"}
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CuratedMusicProvider = exports.CURATED_CATALOG = void 0;
4
+ /**
5
+ * Curated music catalog — always-on, zero-config.
6
+ *
7
+ * Tracks are sourced from Pixabay's free music library (Pixabay Content
8
+ * License: free for commercial use, no attribution required). URLs point
9
+ * at cdn.pixabay.com directly to avoid us hosting / paying egress.
10
+ * AG-36 (2026-05-17): previously pointed at a never-created GCS bucket
11
+ * (vidspot-public-music) so every selection 404'd; replaced with verified
12
+ * pixabay CDN URLs scraped via scrapePixabayMusic.py.
13
+ *
14
+ * If the CDN proves unreliable later, mirror these to our own bucket via
15
+ * the same script + a gsutil cp pass; the catalog shape doesn't change.
16
+ *
17
+ * BPM values are approximate (eyeballed from the Pixabay listing's
18
+ * tempo band). Refine when AG-39 onset-detection picks them up.
19
+ */
20
+ exports.CURATED_CATALOG = [
21
+ {
22
+ id: "curated-energetic-120",
23
+ url: "https://cdn.pixabay.com/audio/2026/04/23/audio_8593d985e3.mp3",
24
+ durationSec: 100,
25
+ bpm: 120,
26
+ mood: "energetic",
27
+ tags: ["pop", "upbeat", "social-recap", "ugc-ad"],
28
+ attribution: "Pixabay (Pixabay Content License)",
29
+ source: "curated",
30
+ },
31
+ {
32
+ id: "curated-energetic-128",
33
+ url: "https://cdn.pixabay.com/audio/2026/04/23/audio_044dad33c3.mp3",
34
+ durationSec: 117,
35
+ bpm: 128,
36
+ mood: "energetic",
37
+ tags: ["edm", "drop", "social-recap"],
38
+ attribution: "Pixabay (Pixabay Content License)",
39
+ source: "curated",
40
+ },
41
+ {
42
+ id: "curated-uplifting-110",
43
+ url: "https://cdn.pixabay.com/audio/2026/04/23/audio_50f1e7f615.mp3",
44
+ durationSec: 218,
45
+ bpm: 110,
46
+ mood: "uplifting",
47
+ tags: ["corporate", "ugc-ad", "product-demo"],
48
+ attribution: "Pixabay (Pixabay Content License)",
49
+ source: "curated",
50
+ },
51
+ {
52
+ id: "curated-cinematic-90",
53
+ url: "https://cdn.pixabay.com/audio/2026/04/24/audio_0ea6bfb236.mp3",
54
+ durationSec: 236,
55
+ bpm: 90,
56
+ mood: "cinematic",
57
+ tags: ["orchestral", "trailer", "talking-head"],
58
+ attribution: "Pixabay (Pixabay Content License)",
59
+ source: "curated",
60
+ },
61
+ {
62
+ id: "curated-calm-80",
63
+ url: "https://cdn.pixabay.com/audio/2026/04/24/audio_f485b72a9c.mp3",
64
+ durationSec: 169,
65
+ bpm: 80,
66
+ mood: "calm",
67
+ tags: ["piano", "ambient", "talking-head"],
68
+ attribution: "Pixabay (Pixabay Content License)",
69
+ source: "curated",
70
+ },
71
+ {
72
+ id: "curated-dark-100",
73
+ url: "https://cdn.pixabay.com/audio/2026/05/07/audio_e11ff00f80.mp3",
74
+ durationSec: 141,
75
+ bpm: 100,
76
+ mood: "dark",
77
+ tags: ["trap", "moody", "social-recap"],
78
+ attribution: "Pixabay (Pixabay Content License)",
79
+ source: "curated",
80
+ },
81
+ {
82
+ id: "curated-acoustic-95",
83
+ url: "https://cdn.pixabay.com/audio/2026/04/24/audio_be8fac0c2b.mp3",
84
+ durationSec: 187,
85
+ bpm: 95,
86
+ mood: "acoustic",
87
+ tags: ["folk", "guitar", "ugc-ad"],
88
+ attribution: "Pixabay (Pixabay Content License)",
89
+ source: "curated",
90
+ },
91
+ {
92
+ id: "curated-retro-115",
93
+ url: "https://cdn.pixabay.com/audio/2026/04/22/audio_1364f85847.mp3",
94
+ durationSec: 108,
95
+ bpm: 115,
96
+ mood: "retro",
97
+ tags: ["synthwave", "80s", "product-demo"],
98
+ attribution: "Pixabay (Pixabay Content License)",
99
+ source: "curated",
100
+ },
101
+ ];
102
+ const MOOD_ALIASES = {
103
+ energetic: "energetic",
104
+ upbeat: "energetic",
105
+ hype: "energetic",
106
+ cinematic: "cinematic",
107
+ epic: "cinematic",
108
+ dramatic: "cinematic",
109
+ calm: "calm",
110
+ chill: "calm",
111
+ ambient: "calm",
112
+ uplifting: "uplifting",
113
+ inspirational: "uplifting",
114
+ dark: "dark",
115
+ moody: "dark",
116
+ acoustic: "acoustic",
117
+ folk: "acoustic",
118
+ retro: "retro",
119
+ vintage: "retro",
120
+ quirky: "retro",
121
+ };
122
+ function tokens(s) {
123
+ if (!s)
124
+ return [];
125
+ return s
126
+ .toLowerCase()
127
+ .replace(/[^a-z0-9\s]+/g, " ")
128
+ .split(/\s+/)
129
+ .filter((t) => t.length >= 2);
130
+ }
131
+ function score(track, params) {
132
+ let s = 0;
133
+ const wantedMood = params.mood ? MOOD_ALIASES[params.mood.toLowerCase()] : undefined;
134
+ if (wantedMood && track.mood === wantedMood)
135
+ s += 50;
136
+ const queryToks = tokens(params.query);
137
+ if (queryToks.length) {
138
+ const hay = [track.mood, ...(track.tags ?? [])].join(" ").toLowerCase();
139
+ for (const t of queryToks)
140
+ if (hay.includes(t))
141
+ s += 5;
142
+ }
143
+ if (params.bpmTarget && track.bpm) {
144
+ const diff = Math.abs(track.bpm - params.bpmTarget);
145
+ s += Math.max(0, 30 - diff); // perfect match = 30, ±30bpm = 0
146
+ }
147
+ if (params.bpmMin && track.bpm && track.bpm < params.bpmMin)
148
+ s -= 20;
149
+ if (params.bpmMax && track.bpm && track.bpm > params.bpmMax)
150
+ s -= 20;
151
+ if (params.durationSecMin && track.durationSec < params.durationSecMin)
152
+ s -= 100;
153
+ return s;
154
+ }
155
+ class CuratedMusicProvider {
156
+ constructor() {
157
+ this.source = "curated";
158
+ }
159
+ isAvailable() {
160
+ return exports.CURATED_CATALOG.length > 0;
161
+ }
162
+ async search(params) {
163
+ const limit = params.limit ?? 5;
164
+ const ranked = exports.CURATED_CATALOG
165
+ .map((t) => ({ t, s: score(t, params) }))
166
+ .filter((r) => r.s > -50)
167
+ .sort((a, b) => b.s - a.s)
168
+ .slice(0, limit)
169
+ .map(({ t }) => t);
170
+ return { tracks: ranked };
171
+ }
172
+ }
173
+ exports.CuratedMusicProvider = CuratedMusicProvider;
@@ -0,0 +1,8 @@
1
+ import { MusicSearchParams, MusicSearchProvider, MusicSearchResult } from "../types";
2
+ export declare class JamendoMusicProvider implements MusicSearchProvider {
3
+ readonly source: "jamendo";
4
+ private readonly clientId;
5
+ isAvailable(): boolean;
6
+ search(params: MusicSearchParams): Promise<MusicSearchResult>;
7
+ }
8
+ //# sourceMappingURL=jamendo.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jamendo.service.d.ts","sourceRoot":"","sources":["../../../../src/services/musicGen/providers/jamendo.service.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EAElB,MAAM,UAAU,CAAC;AAiDlB,qBAAa,oBAAqB,YAAW,mBAAmB;IAC9D,QAAQ,CAAC,MAAM,EAAG,SAAS,CAAU;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiC;IAE1D,WAAW,IAAI,OAAO;IAIhB,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;CA8DpE"}
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.JamendoMusicProvider = void 0;
7
+ const axios_1 = __importDefault(require("axios"));
8
+ const apiUsageCounter_service_1 = require("../../apiUsageCounter.service");
9
+ // Jamendo free tier: 35,000 req/month per client_id. Cap at 30,000 to leave
10
+ // headroom; override via env.
11
+ const JAMENDO_MONTHLY_CAP = Number(process.env.JAMENDO_MONTHLY_CAP ?? 30000);
12
+ /**
13
+ * Jamendo Music API v3.
14
+ *
15
+ * Free for app integration via client_id; per-track commercial use requires
16
+ * a Pro license purchased through Jamendo Licensing. We surface tracks here
17
+ * but the host UI must show the license CTA before a user ships a video that
18
+ * uses the track. Track BPM comes back via `musicinfo.bpm` when we request
19
+ * `include=musicinfo`.
20
+ *
21
+ * Env: JAMENDO_CLIENT_ID — provider is unavailable until set.
22
+ */
23
+ const JAMENDO_TRACKS_URL = "https://api.jamendo.com/v3.0/tracks";
24
+ const MOOD_TO_TAGS = {
25
+ energetic: "energetic+upbeat",
26
+ cinematic: "epic+orchestral",
27
+ calm: "calm+ambient",
28
+ uplifting: "uplifting+inspirational",
29
+ dark: "dark+moody",
30
+ acoustic: "acoustic+folk",
31
+ retro: "retro+synthwave",
32
+ quirky: "quirky+playful",
33
+ };
34
+ class JamendoMusicProvider {
35
+ constructor() {
36
+ this.source = "jamendo";
37
+ this.clientId = process.env.JAMENDO_CLIENT_ID;
38
+ }
39
+ isAvailable() {
40
+ return Boolean(this.clientId);
41
+ }
42
+ async search(params) {
43
+ if (!this.clientId)
44
+ return { tracks: [] };
45
+ const allowed = await apiUsageCounter_service_1.ApiUsageCounterService.tryConsume({
46
+ provider: "jamendo",
47
+ monthlyCap: JAMENDO_MONTHLY_CAP,
48
+ });
49
+ if (!allowed) {
50
+ throw new Error(`JAMENDO_RATE_LIMITED: monthly cap of ${JAMENDO_MONTHLY_CAP} exceeded — back off`);
51
+ }
52
+ const tags = params.mood ? MOOD_TO_TAGS[params.mood.toLowerCase()] : undefined;
53
+ const search = params.query?.trim();
54
+ // Pick a single `speed` bucket: prefer explicit bpmTarget, then bpmMin/Max midpoint.
55
+ const speedSeed = params.bpmTarget
56
+ ?? (params.bpmMin && params.bpmMax ? (params.bpmMin + params.bpmMax) / 2 : params.bpmMin);
57
+ // Jamendo server-side `durationbetween=min_max` (seconds). Send both bounds
58
+ // when we have them so the page budget isn't wasted on out-of-range tracks.
59
+ const durationBetween = params.durationSecMin || params.durationSecMax
60
+ ? `${params.durationSecMin ?? 0}_${params.durationSecMax ?? 3600}`
61
+ : undefined;
62
+ const res = await axios_1.default.get(JAMENDO_TRACKS_URL, {
63
+ params: {
64
+ client_id: this.clientId,
65
+ format: "json",
66
+ limit: Math.min(params.limit ?? 10, 20),
67
+ include: "musicinfo",
68
+ // Jamendo prefers `tags` for mood and `search` for free-text.
69
+ ...(tags ? { tags } : {}),
70
+ ...(search ? { search } : {}),
71
+ ...(speedSeed ? { speed: bpmToSpeed(speedSeed) } : {}),
72
+ ...(durationBetween ? { durationbetween: durationBetween } : {}),
73
+ ...(params.vocalInstrumental ? { vocalinstrumental: params.vocalInstrumental } : {}),
74
+ audioformat: "mp32",
75
+ },
76
+ timeout: 8000,
77
+ });
78
+ const tracks = res.data.results
79
+ .filter((t) => !!t.audio)
80
+ .map((t) => ({
81
+ id: `jamendo-${t.id}`,
82
+ url: t.audio,
83
+ durationSec: t.duration,
84
+ bpm: t.musicinfo?.bpm,
85
+ mood: params.mood,
86
+ tags: t.musicinfo?.tags?.vartags,
87
+ attribution: `${t.name} — ${t.artist_name} (Jamendo)`,
88
+ source: "jamendo",
89
+ }));
90
+ if (params.bpmTarget) {
91
+ tracks.sort((a, b) => bpmDistance(a, params.bpmTarget) - bpmDistance(b, params.bpmTarget));
92
+ }
93
+ return { tracks };
94
+ }
95
+ }
96
+ exports.JamendoMusicProvider = JamendoMusicProvider;
97
+ function bpmDistance(t, target) {
98
+ if (!t.bpm)
99
+ return 999;
100
+ return Math.abs(t.bpm - target);
101
+ }
102
+ // Jamendo's `speed` param is a coarse 5-bucket bin; map BPM ranges to it.
103
+ function bpmToSpeed(bpm) {
104
+ if (bpm < 70)
105
+ return "verylow";
106
+ if (bpm < 95)
107
+ return "low";
108
+ if (bpm < 120)
109
+ return "medium";
110
+ if (bpm < 145)
111
+ return "high";
112
+ return "veryhigh";
113
+ }
@@ -0,0 +1,10 @@
1
+ import { MusicSearchParams, MusicSearchProvider, MusicSearchResult } from "../types";
2
+ export declare class MubertMusicProvider implements MusicSearchProvider {
3
+ readonly source: "mubert";
4
+ private readonly customerId;
5
+ private readonly accessToken;
6
+ isAvailable(): boolean;
7
+ search(params: MusicSearchParams): Promise<MusicSearchResult>;
8
+ private pollTrackUrl;
9
+ }
10
+ //# sourceMappingURL=mubert.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mubert.service.d.ts","sourceRoot":"","sources":["../../../../src/services/musicGen/providers/mubert.service.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAuDlB,qBAAa,mBAAoB,YAAW,mBAAmB;IAC7D,QAAQ,CAAC,MAAM,EAAG,QAAQ,CAAU;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkC;IAC7D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmC;IAE/D,WAAW,IAAI,OAAO;IAIhB,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;YA0DrD,YAAY;CAyB3B"}