vidspotai-shared 1.0.54 → 1.0.56

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 (228) hide show
  1. package/lib/globals/types.d.ts +2 -1
  2. package/lib/globals/types.d.ts.map +1 -1
  3. package/lib/globals/types.js +1 -0
  4. package/lib/services/aiGen/providers/google/google.service.d.ts.map +1 -1
  5. package/lib/services/aiGen/providers/google/google.service.js +35 -0
  6. package/lib/utils/errors.d.ts +24 -2
  7. package/lib/utils/errors.d.ts.map +1 -1
  8. package/lib/utils/errors.js +23 -3
  9. package/lib/utils/helpers.d.ts +1 -0
  10. package/lib/utils/helpers.d.ts.map +1 -1
  11. package/lib/utils/helpers.js +26 -12
  12. package/package.json +1 -1
  13. package/lib/globals/aiModels/providers/alibaba.d.ts +0 -4
  14. package/lib/globals/aiModels/providers/alibaba.d.ts.map +0 -1
  15. package/lib/globals/aiModels/providers/alibaba.js +0 -183
  16. package/lib/globals/aiModels/providers/elevenlabs.d.ts +0 -13
  17. package/lib/globals/aiModels/providers/elevenlabs.d.ts.map +0 -1
  18. package/lib/globals/aiModels/providers/elevenlabs.js +0 -25
  19. package/lib/globals/aiModels/providers/pixverseTemplates.d.ts +0 -36
  20. package/lib/globals/aiModels/providers/pixverseTemplates.d.ts.map +0 -1
  21. package/lib/globals/aiModels/providers/pixverseTemplates.js +0 -42
  22. package/lib/globals/aiModels/tierHelpers.d.ts +0 -27
  23. package/lib/globals/aiModels/tierHelpers.d.ts.map +0 -1
  24. package/lib/globals/aiModels/tierHelpers.js +0 -73
  25. package/lib/globals/ttsModels/providers/minimax.d.ts +0 -8
  26. package/lib/globals/ttsModels/providers/minimax.d.ts.map +0 -1
  27. package/lib/globals/ttsModels/providers/minimax.js +0 -18
  28. package/lib/globals/ttsModels/providers/openai.d.ts +0 -8
  29. package/lib/globals/ttsModels/providers/openai.d.ts.map +0 -1
  30. package/lib/globals/ttsModels/providers/openai.js +0 -18
  31. package/lib/models/agent.model.d.ts +0 -117
  32. package/lib/models/agent.model.d.ts.map +0 -1
  33. package/lib/models/agent.model.js +0 -13
  34. package/lib/models/cachedAsset.model.d.ts +0 -18
  35. package/lib/models/cachedAsset.model.d.ts.map +0 -1
  36. package/lib/models/cachedAsset.model.js +0 -2
  37. package/lib/models/cachedRawAsset.model.d.ts +0 -20
  38. package/lib/models/cachedRawAsset.model.d.ts.map +0 -1
  39. package/lib/models/cachedRawAsset.model.js +0 -2
  40. package/lib/schemas/agentPersona.schema.d.ts +0 -10
  41. package/lib/schemas/agentPersona.schema.d.ts.map +0 -1
  42. package/lib/schemas/agentPersona.schema.js +0 -11
  43. package/lib/schemas/brandKit.schema.d.ts +0 -101
  44. package/lib/schemas/brandKit.schema.d.ts.map +0 -1
  45. package/lib/schemas/brandKit.schema.js +0 -46
  46. package/lib/schemas/brief.schema.d.ts +0 -216
  47. package/lib/schemas/brief.schema.d.ts.map +0 -1
  48. package/lib/schemas/brief.schema.js +0 -118
  49. package/lib/schemas/index.d.ts +0 -6
  50. package/lib/schemas/index.d.ts.map +0 -1
  51. package/lib/schemas/index.js +0 -21
  52. package/lib/schemas/project.schema.d.ts +0 -1005
  53. package/lib/schemas/project.schema.d.ts.map +0 -1
  54. package/lib/schemas/project.schema.js +0 -238
  55. package/lib/schemas/videoPlan.schema.d.ts +0 -145
  56. package/lib/schemas/videoPlan.schema.d.ts.map +0 -1
  57. package/lib/schemas/videoPlan.schema.js +0 -109
  58. package/lib/services/agent/beatSnap.d.ts +0 -10
  59. package/lib/services/agent/beatSnap.d.ts.map +0 -1
  60. package/lib/services/agent/beatSnap.js +0 -128
  61. package/lib/services/agent/costPreflight.d.ts +0 -22
  62. package/lib/services/agent/costPreflight.d.ts.map +0 -1
  63. package/lib/services/agent/costPreflight.js +0 -75
  64. package/lib/services/agent/critic.d.ts +0 -103
  65. package/lib/services/agent/critic.d.ts.map +0 -1
  66. package/lib/services/agent/critic.js +0 -132
  67. package/lib/services/agent/eval/index.d.ts +0 -5
  68. package/lib/services/agent/eval/index.d.ts.map +0 -1
  69. package/lib/services/agent/eval/index.js +0 -20
  70. package/lib/services/agent/eval/judge.d.ts +0 -14
  71. package/lib/services/agent/eval/judge.d.ts.map +0 -1
  72. package/lib/services/agent/eval/judge.js +0 -95
  73. package/lib/services/agent/eval/recorder.d.ts +0 -17
  74. package/lib/services/agent/eval/recorder.d.ts.map +0 -1
  75. package/lib/services/agent/eval/recorder.js +0 -65
  76. package/lib/services/agent/eval/seedBriefs.d.ts +0 -16
  77. package/lib/services/agent/eval/seedBriefs.d.ts.map +0 -1
  78. package/lib/services/agent/eval/seedBriefs.js +0 -1188
  79. package/lib/services/agent/eval/types.d.ts +0 -196
  80. package/lib/services/agent/eval/types.d.ts.map +0 -1
  81. package/lib/services/agent/eval/types.js +0 -65
  82. package/lib/services/agent/executor.d.ts +0 -50
  83. package/lib/services/agent/executor.d.ts.map +0 -1
  84. package/lib/services/agent/executor.js +0 -188
  85. package/lib/services/agent/index.d.ts +0 -15
  86. package/lib/services/agent/index.d.ts.map +0 -1
  87. package/lib/services/agent/index.js +0 -30
  88. package/lib/services/agent/llmCaller.d.ts +0 -77
  89. package/lib/services/agent/llmCaller.d.ts.map +0 -1
  90. package/lib/services/agent/llmCaller.js +0 -16
  91. package/lib/services/agent/llmCallerGateway.d.ts +0 -39
  92. package/lib/services/agent/llmCallerGateway.d.ts.map +0 -1
  93. package/lib/services/agent/llmCallerGateway.js +0 -246
  94. package/lib/services/agent/llmCallerRegistry.d.ts +0 -4
  95. package/lib/services/agent/llmCallerRegistry.d.ts.map +0 -1
  96. package/lib/services/agent/llmCallerRegistry.js +0 -19
  97. package/lib/services/agent/modelRouter.d.ts +0 -41
  98. package/lib/services/agent/modelRouter.d.ts.map +0 -1
  99. package/lib/services/agent/modelRouter.js +0 -57
  100. package/lib/services/agent/musicSelect.d.ts +0 -23
  101. package/lib/services/agent/musicSelect.d.ts.map +0 -1
  102. package/lib/services/agent/musicSelect.js +0 -65
  103. package/lib/services/agent/personas.d.ts +0 -60
  104. package/lib/services/agent/personas.d.ts.map +0 -1
  105. package/lib/services/agent/personas.js +0 -156
  106. package/lib/services/agent/planner.d.ts +0 -56
  107. package/lib/services/agent/planner.d.ts.map +0 -1
  108. package/lib/services/agent/planner.js +0 -237
  109. package/lib/services/agent/toolRegistry.d.ts +0 -64
  110. package/lib/services/agent/toolRegistry.d.ts.map +0 -1
  111. package/lib/services/agent/toolRegistry.js +0 -78
  112. package/lib/services/agent/tools/analyzeReference.tool.d.ts +0 -36
  113. package/lib/services/agent/tools/analyzeReference.tool.d.ts.map +0 -1
  114. package/lib/services/agent/tools/analyzeReference.tool.js +0 -44
  115. package/lib/services/agent/tools/animateImage.tool.d.ts +0 -23
  116. package/lib/services/agent/tools/animateImage.tool.d.ts.map +0 -1
  117. package/lib/services/agent/tools/animateImage.tool.js +0 -58
  118. package/lib/services/agent/tools/animateImageWithMotionBrush.tool.d.ts +0 -30
  119. package/lib/services/agent/tools/animateImageWithMotionBrush.tool.d.ts.map +0 -1
  120. package/lib/services/agent/tools/animateImageWithMotionBrush.tool.js +0 -90
  121. package/lib/services/agent/tools/composeScene.tool.d.ts +0 -948
  122. package/lib/services/agent/tools/composeScene.tool.d.ts.map +0 -1
  123. package/lib/services/agent/tools/composeScene.tool.js +0 -90
  124. package/lib/services/agent/tools/estimateCost.tool.d.ts +0 -342
  125. package/lib/services/agent/tools/estimateCost.tool.d.ts.map +0 -1
  126. package/lib/services/agent/tools/estimateCost.tool.js +0 -62
  127. package/lib/services/agent/tools/generateAvatarVideo.tool.d.ts +0 -32
  128. package/lib/services/agent/tools/generateAvatarVideo.tool.d.ts.map +0 -1
  129. package/lib/services/agent/tools/generateAvatarVideo.tool.js +0 -112
  130. package/lib/services/agent/tools/generateImage.tool.d.ts +0 -28
  131. package/lib/services/agent/tools/generateImage.tool.d.ts.map +0 -1
  132. package/lib/services/agent/tools/generateImage.tool.js +0 -97
  133. package/lib/services/agent/tools/generateVideo.tool.d.ts +0 -30
  134. package/lib/services/agent/tools/generateVideo.tool.d.ts.map +0 -1
  135. package/lib/services/agent/tools/generateVideo.tool.js +0 -84
  136. package/lib/services/agent/tools/generateVoiceover.tool.d.ts +0 -18
  137. package/lib/services/agent/tools/generateVoiceover.tool.d.ts.map +0 -1
  138. package/lib/services/agent/tools/generateVoiceover.tool.js +0 -72
  139. package/lib/services/agent/tools/index.d.ts +0 -19
  140. package/lib/services/agent/tools/index.d.ts.map +0 -1
  141. package/lib/services/agent/tools/index.js +0 -34
  142. package/lib/services/agent/tools/planVideo.tool.d.ts +0 -191
  143. package/lib/services/agent/tools/planVideo.tool.d.ts.map +0 -1
  144. package/lib/services/agent/tools/planVideo.tool.js +0 -46
  145. package/lib/services/agent/tools/render.tool.d.ts +0 -357
  146. package/lib/services/agent/tools/render.tool.d.ts.map +0 -1
  147. package/lib/services/agent/tools/render.tool.js +0 -48
  148. package/lib/services/agent/tools/searchMusic.tool.d.ts +0 -49
  149. package/lib/services/agent/tools/searchMusic.tool.d.ts.map +0 -1
  150. package/lib/services/agent/tools/searchMusic.tool.js +0 -74
  151. package/lib/services/agent/tools/searchStock.tool.d.ts +0 -37
  152. package/lib/services/agent/tools/searchStock.tool.d.ts.map +0 -1
  153. package/lib/services/agent/tools/searchStock.tool.js +0 -101
  154. package/lib/services/agent/tools/searchUserLibrary.tool.d.ts +0 -59
  155. package/lib/services/agent/tools/searchUserLibrary.tool.d.ts.map +0 -1
  156. package/lib/services/agent/tools/searchUserLibrary.tool.js +0 -58
  157. package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts +0 -31
  158. package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts.map +0 -1
  159. package/lib/services/aiGen/canonicalAdapters/cameraControl.types.js +0 -2
  160. package/lib/services/aiGen/canonicalAdapters/index.d.ts +0 -3
  161. package/lib/services/aiGen/canonicalAdapters/index.d.ts.map +0 -1
  162. package/lib/services/aiGen/canonicalAdapters/index.js +0 -18
  163. package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts +0 -23
  164. package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts.map +0 -1
  165. package/lib/services/aiGen/canonicalAdapters/multiShot.types.js +0 -12
  166. package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.d.ts +0 -18
  167. package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.d.ts.map +0 -1
  168. package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.js +0 -100
  169. package/lib/services/aiGen/providers/fal/falImage.service.d.ts +0 -9
  170. package/lib/services/aiGen/providers/fal/falImage.service.d.ts.map +0 -1
  171. package/lib/services/aiGen/providers/fal/falImage.service.js +0 -102
  172. package/lib/services/aiGen/providers/fal/index.d.ts +0 -2
  173. package/lib/services/aiGen/providers/fal/index.d.ts.map +0 -1
  174. package/lib/services/aiGen/providers/fal/index.js +0 -17
  175. package/lib/services/aiGen/providers/kling/cameraAdapter.d.ts +0 -4
  176. package/lib/services/aiGen/providers/kling/cameraAdapter.d.ts.map +0 -1
  177. package/lib/services/aiGen/providers/kling/cameraAdapter.js +0 -53
  178. package/lib/services/aiGen/providers/pexels/index.d.ts +0 -2
  179. package/lib/services/aiGen/providers/pexels/index.d.ts.map +0 -1
  180. package/lib/services/aiGen/providers/pexels/index.js +0 -17
  181. package/lib/services/aiGen/providers/pexels/pexels.service.d.ts +0 -11
  182. package/lib/services/aiGen/providers/pexels/pexels.service.d.ts.map +0 -1
  183. package/lib/services/aiGen/providers/pexels/pexels.service.js +0 -118
  184. package/lib/services/aiGen/providers/runway/cameraAdapter.d.ts +0 -3
  185. package/lib/services/aiGen/providers/runway/cameraAdapter.d.ts.map +0 -1
  186. package/lib/services/aiGen/providers/runway/cameraAdapter.js +0 -46
  187. package/lib/services/asr/assemblyai.service.d.ts +0 -72
  188. package/lib/services/asr/assemblyai.service.d.ts.map +0 -1
  189. package/lib/services/asr/assemblyai.service.js +0 -89
  190. package/lib/services/asr/index.d.ts +0 -2
  191. package/lib/services/asr/index.d.ts.map +0 -1
  192. package/lib/services/asr/index.js +0 -17
  193. package/lib/services/assetCache.service.d.ts +0 -54
  194. package/lib/services/assetCache.service.d.ts.map +0 -1
  195. package/lib/services/assetCache.service.js +0 -96
  196. package/lib/services/audioAnalysis/index.d.ts +0 -2
  197. package/lib/services/audioAnalysis/index.d.ts.map +0 -1
  198. package/lib/services/audioAnalysis/index.js +0 -17
  199. package/lib/services/audioAnalysis/onsetDetection.service.d.ts +0 -50
  200. package/lib/services/audioAnalysis/onsetDetection.service.d.ts.map +0 -1
  201. package/lib/services/audioAnalysis/onsetDetection.service.js +0 -136
  202. package/lib/services/editor/designToProject.d.ts +0 -60
  203. package/lib/services/editor/designToProject.d.ts.map +0 -1
  204. package/lib/services/editor/designToProject.js +0 -194
  205. package/lib/services/musicGen/index.d.ts +0 -6
  206. package/lib/services/musicGen/index.d.ts.map +0 -1
  207. package/lib/services/musicGen/index.js +0 -26
  208. package/lib/services/musicGen/musicSearchFactory.service.d.ts +0 -14
  209. package/lib/services/musicGen/musicSearchFactory.service.d.ts.map +0 -1
  210. package/lib/services/musicGen/musicSearchFactory.service.js +0 -59
  211. package/lib/services/musicGen/providers/curated.service.d.ts +0 -22
  212. package/lib/services/musicGen/providers/curated.service.d.ts.map +0 -1
  213. package/lib/services/musicGen/providers/curated.service.js +0 -171
  214. package/lib/services/musicGen/providers/jamendo.service.d.ts +0 -8
  215. package/lib/services/musicGen/providers/jamendo.service.d.ts.map +0 -1
  216. package/lib/services/musicGen/providers/jamendo.service.js +0 -93
  217. package/lib/services/musicGen/providers/mubert.service.d.ts +0 -9
  218. package/lib/services/musicGen/providers/mubert.service.d.ts.map +0 -1
  219. package/lib/services/musicGen/providers/mubert.service.js +0 -113
  220. package/lib/services/musicGen/types.d.ts +0 -42
  221. package/lib/services/musicGen/types.d.ts.map +0 -1
  222. package/lib/services/musicGen/types.js +0 -10
  223. package/lib/services/tts/providers/minimax.service.d.ts +0 -14
  224. package/lib/services/tts/providers/minimax.service.d.ts.map +0 -1
  225. package/lib/services/tts/providers/minimax.service.js +0 -78
  226. package/lib/services/tts/providers/openai.service.d.ts +0 -14
  227. package/lib/services/tts/providers/openai.service.d.ts.map +0 -1
  228. package/lib/services/tts/providers/openai.service.js +0 -71
@@ -110,7 +110,8 @@ export type TSubscriptionPlanDetails = Partial<Record<ESUBSCRIPTION_PLANS, Subsc
110
110
  export declare enum ERROR_CODE {
111
111
  INSUFFICIENT_CREDITS = "INSUFFICIENT_CREDITS",
112
112
  PROMPT_TOO_SHORT = "PROMPT_TOO_SHORT",
113
- PROMPT_MISSING = "PROMPT_MISSING"
113
+ PROMPT_MISSING = "PROMPT_MISSING",
114
+ SERVICE_UNAVAILABLE = "SERVICE_UNAVAILABLE"
114
115
  }
115
116
  export declare enum ELANGUAGE_CODE {
116
117
  af = "af",
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/globals/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/globals/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,cAAc,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,MAAM,EAAE,GAAG,EAAE,CAAC;CACf;AAED,oBAAY,eAAe;IACzB,MAAM,WAAW,CAAE,wCAAwC;IAC3D,WAAW,eAAe,CAAE,2DAA2D;IAGvF,SAAS,cAAc,CAAE,8CAA8C;IACvE,MAAM,WAAW,CAAE,+BAA+B;IAClD,mBAAmB,uBAAuB;CAC3C;AAED,oBAAY,iBAAiB;IAC3B,WAAW,eAAe,CAAE,qFAAqF;IACjH,SAAS,cAAc,CAAE,2FAA2F;IACpH,OAAO,YAAY,CAAE,kKAAkK;IACvL,MAAM,WAAW,CAAE,kEAAkE;IACrF,SAAS,cAAc,CAAE,sCAAsC;IAC/D;;;;;OAKG;IACH,SAAS,aAAa;CACvB;AAMD,oBAAY,YAAY;IACtB,UAAU,oBAAoB;CAC/B;AAED,eAAO,MAAM,YAAY,gBAA4B,CAAC;AAEtD,oBAAY,kBAAkB;IAC5B,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,SAAS,cAAc;CACxB;AAYD,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAEnC,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;KAC1B,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,UAAU,GAC3C,CAAC,CAAC,CAAC,CAAC,GACJ,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,GACxC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GACrB,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAChC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAC9B,CAAC,CAAC,CAAC,CAAC;CACT,CAAC;AAEF,oBAAY,uBAAuB;IACjC,WAAW,gBAAgB;CAC5B;AAED,oBAAY,mBAAmB;IAE7B,IAAI,SAAS,CAAE,kCAAkC;IACjD,KAAK,UAAU;IACf,GAAG,QAAQ;IACX,QAAQ,aAAa;CAEtB;AAED,oBAAY,kBAAkB;IAC5B,OAAO,YAAY;IAEnB,MAAM,WAAW;CAClB;AAED,oBAAY,oBAAoB;IAC9B,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,QAAQ,aAAa,CAAE,cAAc;IACrC,QAAQ,YAAY;CAQrB;AAED,oBAAY,SAAS;IACnB,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;CACZ;AAED,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,KAAK,CAAC;CACZ;AAED,oBAAY,KAAK;IACf,GAAG,QAAQ;IACX,IAAI,SAAS;CACd;AAED,UAAU,kBAAkB;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,CAChC,mBAAmB,EACnB,MAAM,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAC/C,CAAC;AAEF,UAAU,sBAAsB;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,wBAAwB,GAAG,OAAO,CAC5C,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CACpD,CAAC;AAEF,oBAAY,UAAU;IACpB,oBAAoB,yBAAyB;IAC7C,gBAAgB,qBAAqB;IACrC,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;CAC5C;AAED,oBAAY,cAAc;IACxB,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,GAAG,QAAQ;IACX,EAAE,OAAO;IACT,IAAI,UAAU;IACd,IAAI,UAAU;IACd,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,GAAG,QAAQ;IACX,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,GAAG,QAAQ;IACX,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;IACT,EAAE,OAAO;CACV;AAED,oBAAY,kBAAkB;IAC5B,QAAQ,OAAO;IACf,OAAO,OAAO;IACd,MAAM,OAAO;IACb,QAAQ,OAAO;IACf,OAAO,OAAO;IACd,OAAO,OAAO;IACd,SAAS,OAAO;IAChB,OAAO,OAAO;IACd,OAAO,OAAO;IACd,OAAO,OAAO;IACd,QAAQ,OAAO;IACf,KAAK,OAAO;IACZ,MAAM,OAAO;IACb,KAAK,OAAO;IACZ,QAAQ,OAAO;IACf,OAAO,OAAO;IACd,MAAM,OAAO;IACb,QAAQ,OAAO;IACf,MAAM,OAAO;IACb,KAAK,OAAO;IACZ,QAAQ,OAAO;IACf,KAAK,OAAO;IACZ,SAAS,OAAO;IAChB,SAAS,OAAO;IAChB,UAAU,OAAO;IACjB,OAAO,OAAO;IACd,QAAQ,OAAO;IACf,OAAO,OAAO;IACd,MAAM,OAAO;IACb,MAAM,OAAO;IACb,OAAO,OAAO;IACd,UAAU,OAAO;IACjB,UAAU,OAAO;IACjB,KAAK,OAAO;IACZ,SAAS,OAAO;IAChB,OAAO,OAAO;IACd,SAAS,OAAO;IAChB,SAAS,OAAO;IAChB,OAAO,OAAO;IACd,MAAM,OAAO;IACb,UAAU,OAAO;IACjB,OAAO,OAAO;IACd,QAAQ,OAAO;IACf,OAAO,OAAO;IACd,OAAO,OAAO;IACd,MAAM,OAAO;IACb,SAAS,OAAO;IAChB,MAAM,OAAO;IACb,OAAO,OAAO;IACd,OAAO,OAAO;IACd,OAAO,OAAO;IACd,OAAO,OAAO;IACd,KAAK,OAAO;IACZ,MAAM,OAAO;IACb,IAAI,OAAO;IACX,OAAO,OAAO;IACd,SAAS,OAAO;IAChB,IAAI,OAAO;IACX,UAAU,OAAO;CAClB;AAED,MAAM,WAAW,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,GAAG,SAAS;IACzE,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,SAAS,CAAC,EAAE,CAAC,CAAC;CACf;AAED,eAAO,MAAM,oBAAoB;;;;iBAQ/B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAElE,eAAO,MAAM,iBAAiB;;;;iBAQ5B,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAExE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;iBAY5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,yBAAyB;;;;iBAapC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;iBAEhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
@@ -111,6 +111,7 @@ var ERROR_CODE;
111
111
  ERROR_CODE["INSUFFICIENT_CREDITS"] = "INSUFFICIENT_CREDITS";
112
112
  ERROR_CODE["PROMPT_TOO_SHORT"] = "PROMPT_TOO_SHORT";
113
113
  ERROR_CODE["PROMPT_MISSING"] = "PROMPT_MISSING";
114
+ ERROR_CODE["SERVICE_UNAVAILABLE"] = "SERVICE_UNAVAILABLE";
114
115
  })(ERROR_CODE || (exports.ERROR_CODE = ERROR_CODE = {}));
115
116
  var ELANGUAGE_CODE;
116
117
  (function (ELANGUAGE_CODE) {
@@ -1 +1 @@
1
- {"version":3,"file":"google.service.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/google/google.service.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AA0DlB,qBAAa,aAAc,SAAQ,wBAAwB;IACzD,OAAO,CAAC,EAAE,CAAc;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAK;;IAO/C;;;;OAIG;YACW,kBAAkB;IA0B1B,aAAa,CACjB,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,qBAAqB,CAAC;IAqE3B,gBAAgB,CAAC,EACrB,IAAI,EACJ,cAAc,EACd,cAAyB,GAC1B,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAuFjD,aAAa,CAAC,EAAE,QAAQ,EAAE,QAAY,EAAE,UAAmB,EAAE,SAAiB,EAAE,EAAE,iBAAiB,GAAG,MAAM;CAiB7G"}
1
+ {"version":3,"file":"google.service.d.ts","sourceRoot":"","sources":["../../../../../src/services/aiGen/providers/google/google.service.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AA2FlB,qBAAa,aAAc,SAAQ,wBAAwB;IACzD,OAAO,CAAC,EAAE,CAAc;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAK;;IAO/C;;;;OAIG;YACW,kBAAkB;IA+B1B,aAAa,CACjB,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,qBAAqB,CAAC;IAqE3B,gBAAgB,CAAC,EACrB,IAAI,EACJ,cAAc,EACd,cAAyB,GAC1B,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAuFjD,aAAa,CAAC,EAAE,QAAQ,EAAE,QAAY,EAAE,UAAmB,EAAE,SAAiB,EAAE,EAAE,iBAAiB,GAAG,MAAM;CAiB7G"}
@@ -71,6 +71,35 @@ function isTransientFetchError(err) {
71
71
  const code = err.code ?? err.cause?.code;
72
72
  return !!code && TRANSIENT_NETWORK_CODES.has(code);
73
73
  }
74
+ /**
75
+ * Maps `@google/genai` `ApiError` failures (whose message is a JSON string)
76
+ * to a `UserFacingError` with a stable code the frontend can translate.
77
+ * Returns null when the error is not a known user-facing case (re-throw as-is).
78
+ */
79
+ function classifyGoogleApiError(err) {
80
+ const raw = err?.message ?? "";
81
+ try {
82
+ const parsed = JSON.parse(raw);
83
+ const inner = parsed.error ?? parsed;
84
+ const httpCode = inner.code;
85
+ const status = inner.status;
86
+ const msg = inner.message ?? raw;
87
+ if (status === "RESOURCE_EXHAUSTED" || httpCode === 429) {
88
+ return new errors_1.UserFacingError(msg, errors_1.USER_FACING_ERROR_CODES.VIDEO_PROVIDER_RATE_LIMITED);
89
+ }
90
+ // gRPC code 14 = UNAVAILABLE; Veo surfaces "high demand" failures with this.
91
+ if (httpCode === 14 || /high demand/i.test(msg)) {
92
+ return new errors_1.UserFacingError(msg, errors_1.USER_FACING_ERROR_CODES.VIDEO_PROVIDER_HIGH_DEMAND);
93
+ }
94
+ }
95
+ catch {
96
+ // Not JSON — fall through to non-JSON checks.
97
+ }
98
+ if (/timeout/i.test(raw) || err?.code === "ECONNABORTED") {
99
+ return new errors_1.UserFacingError(raw, errors_1.USER_FACING_ERROR_CODES.VIDEO_PROVIDER_TIMEOUT);
100
+ }
101
+ return null;
102
+ }
74
103
  class GoogleService extends baseAiGenProvider_service_1.BaseAiGenProviderService {
75
104
  constructor() {
76
105
  super();
@@ -91,6 +120,12 @@ class GoogleService extends baseAiGenProvider_service_1.BaseAiGenProviderService
91
120
  lastErr = err;
92
121
  const transient = isTransientFetchError(err);
93
122
  if (!transient || attempt === GoogleService.MAX_RETRY_ATTEMPTS) {
123
+ // Convert known provider errors (quota, high-demand, timeout) into a
124
+ // typed UserFacingError so the scene processor stores a translatable
125
+ // code instead of the raw provider JSON.
126
+ const userFacing = classifyGoogleApiError(err);
127
+ if (userFacing)
128
+ throw userFacing;
94
129
  throw err;
95
130
  }
96
131
  const backoffMs = 1000 * 2 ** (attempt - 1); // 1s, 2s, 4s
@@ -1,9 +1,31 @@
1
1
  /**
2
- * Thrown when an error is caused by invalid user input rather than a system failure.
2
+ * Thrown when an error should be shown to the user rather than retried/escalated.
3
3
  * These are logged as `warn` (Loki only) instead of `error` (Slack) to reduce noise.
4
+ *
5
+ * When `code` is set, downstream layers serialize the error as JSON `{code, message}`
6
+ * so the frontend can map it to a translated string. Without a code, the raw message
7
+ * is shown as-is.
4
8
  */
5
9
  export declare class UserFacingError extends Error {
6
10
  readonly isUserFacingError = true;
7
- constructor(message: string);
11
+ readonly code?: string;
12
+ constructor(message: string, code?: string);
13
+ /** Serialize for storage in `scene.errorMessage` / API responses. */
14
+ toJSON(): {
15
+ code?: string;
16
+ message: string;
17
+ };
8
18
  }
19
+ /**
20
+ * Stable error codes that the frontend translates via the `Toasts` namespace.
21
+ * Keep in sync with locales/en.json keys.
22
+ */
23
+ export declare const USER_FACING_ERROR_CODES: {
24
+ readonly VIDEO_PROVIDER_RATE_LIMITED: "VIDEO_PROVIDER_RATE_LIMITED";
25
+ readonly VIDEO_PROVIDER_HIGH_DEMAND: "VIDEO_PROVIDER_HIGH_DEMAND";
26
+ readonly VIDEO_PROVIDER_TIMEOUT: "VIDEO_PROVIDER_TIMEOUT";
27
+ readonly TTS_PROVIDER_TIMEOUT: "TTS_PROVIDER_TIMEOUT";
28
+ readonly TTS_PROVIDER_UNAVAILABLE: "TTS_PROVIDER_UNAVAILABLE";
29
+ };
30
+ export type UserFacingErrorCode = keyof typeof USER_FACING_ERROR_CODES;
9
31
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,iBAAiB,QAAQ;gBAEtB,OAAO,EAAE,MAAM;CAI5B"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,iBAAiB,QAAQ;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;gBAEX,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;IAM1C,qEAAqE;IACrE,MAAM,IAAI;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;CAG7C;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB;;;;;;CAM1B,CAAC;AACX,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,uBAAuB,CAAC"}
@@ -1,15 +1,35 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UserFacingError = void 0;
3
+ exports.USER_FACING_ERROR_CODES = exports.UserFacingError = void 0;
4
4
  /**
5
- * Thrown when an error is caused by invalid user input rather than a system failure.
5
+ * Thrown when an error should be shown to the user rather than retried/escalated.
6
6
  * These are logged as `warn` (Loki only) instead of `error` (Slack) to reduce noise.
7
+ *
8
+ * When `code` is set, downstream layers serialize the error as JSON `{code, message}`
9
+ * so the frontend can map it to a translated string. Without a code, the raw message
10
+ * is shown as-is.
7
11
  */
8
12
  class UserFacingError extends Error {
9
- constructor(message) {
13
+ constructor(message, code) {
10
14
  super(message);
11
15
  this.isUserFacingError = true;
12
16
  this.name = "UserFacingError";
17
+ this.code = code;
18
+ }
19
+ /** Serialize for storage in `scene.errorMessage` / API responses. */
20
+ toJSON() {
21
+ return this.code ? { code: this.code, message: this.message } : { message: this.message };
13
22
  }
14
23
  }
15
24
  exports.UserFacingError = UserFacingError;
25
+ /**
26
+ * Stable error codes that the frontend translates via the `Toasts` namespace.
27
+ * Keep in sync with locales/en.json keys.
28
+ */
29
+ exports.USER_FACING_ERROR_CODES = {
30
+ VIDEO_PROVIDER_RATE_LIMITED: "VIDEO_PROVIDER_RATE_LIMITED",
31
+ VIDEO_PROVIDER_HIGH_DEMAND: "VIDEO_PROVIDER_HIGH_DEMAND",
32
+ VIDEO_PROVIDER_TIMEOUT: "VIDEO_PROVIDER_TIMEOUT",
33
+ TTS_PROVIDER_TIMEOUT: "TTS_PROVIDER_TIMEOUT",
34
+ TTS_PROVIDER_UNAVAILABLE: "TTS_PROVIDER_UNAVAILABLE",
35
+ };
@@ -19,6 +19,7 @@ export declare const getCreditsFromCost: (cost: number, applyFloor?: boolean) =>
19
19
  */
20
20
  export declare const MULTI_CLIP_DISCOUNT_FACTORS: Partial<Record<EVideoDurationType, number>>;
21
21
  export declare function getMultiClipDiscountFactor(durationType: EVideoDurationType): number;
22
+ export declare const TRANSLATION_FAILED = "TRANSLATION_FAILED";
22
23
  export declare const getTranslationWrapper: (text: string, from: ELANGUAGE_CODE, to?: ELANGUAGE_CODE, version?: "v1" | "v2") => Promise<string>;
23
24
  export declare const detectLang: (text: string) => Promise<IDetectLang>;
24
25
  export declare function waitForFile(path: string, timeout?: number, interval?: number): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/utils/helpers.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAElB,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAE1B,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,eAAO,MAAM,eAAe,GAC1B,SAAS,MAAM,KACd,mBAAmB,GAAG,IASxB,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,SAAS,MAAM,KAAG,kBAAkB,GAAG,IASlE,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,MAAM,mBAAmB,EACzB,OAAM,kBAA+C,WAgBtD,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,EAAE,oBAAiB,KAAG,MASpE,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,2BAA2B,EAAE,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAInF,CAAC;AAEF,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,kBAAkB,GAAG,MAAM,CAEnF;AAED,eAAO,MAAM,qBAAqB,GAChC,MAAM,MAAM,EACZ,MAAM,cAAc,EACpB,KAAI,cAAkC,EACtC,UAAS,IAAI,GAAG,IAAW,KAC1B,OAAO,CAAC,MAAM,CAmBhB,CAAC;AAEF,eAAO,MAAM,UAAU,GAAU,MAAM,MAAM,KAAG,OAAO,CAAC,WAAW,CAqBlE,CAAC;AAEF,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,EACZ,OAAO,SAAQ,EACf,QAAQ,SAAM,oBAQf;AAGD,wBAAsB,mBAAmB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE;IAC1E,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,SAAS,EAAE,CAAC,CAAC;IACb,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAGxB,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AA+CrB,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAatE"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/utils/helpers.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAElB,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAE1B,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,eAAO,MAAM,eAAe,GAC1B,SAAS,MAAM,KACd,mBAAmB,GAAG,IASxB,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,SAAS,MAAM,KAAG,kBAAkB,GAAG,IASlE,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,MAAM,mBAAmB,EACzB,OAAM,kBAA+C,WAgBtD,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,EAAE,oBAAiB,KAAG,MASpE,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,2BAA2B,EAAE,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAInF,CAAC;AAEF,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,kBAAkB,GAAG,MAAM,CAEnF;AAED,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AAEvD,eAAO,MAAM,qBAAqB,GAChC,MAAM,MAAM,EACZ,MAAM,cAAc,EACpB,KAAI,cAAkC,EACtC,UAAS,IAAI,GAAG,IAAW,KAC1B,OAAO,CAAC,MAAM,CA+BhB,CAAC;AAEF,eAAO,MAAM,UAAU,GAAU,MAAM,MAAM,KAAG,OAAO,CAAC,WAAW,CAqBlE,CAAC;AAEF,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,EACZ,OAAO,SAAQ,EACf,QAAQ,SAAM,oBAQf;AAGD,wBAAsB,mBAAmB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE;IAC1E,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,SAAS,EAAE,CAAC,CAAC;IACb,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAGxB,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AA+CrB,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAatE"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.detectLang = exports.getTranslationWrapper = exports.MULTI_CLIP_DISCOUNT_FACTORS = exports.getCreditsFromCost = exports.getPriceIdByType = exports.getFreqById = exports.getPlanTypeById = void 0;
6
+ exports.detectLang = exports.getTranslationWrapper = exports.TRANSLATION_FAILED = exports.MULTI_CLIP_DISCOUNT_FACTORS = exports.getCreditsFromCost = exports.getPriceIdByType = exports.getFreqById = exports.getPlanTypeById = void 0;
7
7
  exports.getMultiClipDiscountFactor = getMultiClipDiscountFactor;
8
8
  exports.waitForFile = waitForFile;
9
9
  exports.generateAndValidate = generateAndValidate;
@@ -78,19 +78,33 @@ exports.MULTI_CLIP_DISCOUNT_FACTORS = {
78
78
  function getMultiClipDiscountFactor(durationType) {
79
79
  return exports.MULTI_CLIP_DISCOUNT_FACTORS[durationType] ?? 1.0;
80
80
  }
81
+ exports.TRANSLATION_FAILED = "TRANSLATION_FAILED";
81
82
  const getTranslationWrapper = async (text, from, to = types_1.ELANGUAGE_CODE.en, version = "v2") => {
82
- try {
83
- const res = await axios_1.default.post("https://us-central1-translation-service-3931b.cloudfunctions.net/translate", { text, from, to, version }, {
84
- headers: {
85
- "internal-key": process.env.TRANSLATION_SERVICE_KEY || "",
86
- },
87
- });
88
- return res.data.translated;
89
- }
90
- catch (err) {
91
- console.error("getTranslationWrapper error:- ", JSON.stringify(err.message));
83
+ const MAX_ATTEMPTS = 3;
84
+ const PER_ATTEMPT_TIMEOUT_MS = 8000;
85
+ let lastErr;
86
+ for (let attempt = 1; attempt <= MAX_ATTEMPTS; attempt++) {
87
+ try {
88
+ const res = await axios_1.default.post("https://us-central1-translation-service-3931b.cloudfunctions.net/translate", { text, from, to, version }, {
89
+ headers: {
90
+ "internal-key": process.env.TRANSLATION_SERVICE_KEY || "",
91
+ },
92
+ timeout: PER_ATTEMPT_TIMEOUT_MS,
93
+ });
94
+ return res.data.translated;
95
+ }
96
+ catch (err) {
97
+ lastErr = err;
98
+ const isLast = attempt === MAX_ATTEMPTS;
99
+ console.warn(`getTranslationWrapper attempt ${attempt}/${MAX_ATTEMPTS} failed${isLast ? " (giving up)" : ", retrying"}:`, err?.message ?? err);
100
+ if (isLast)
101
+ break;
102
+ await new Promise((r) => setTimeout(r, 200 * attempt));
103
+ }
92
104
  }
93
- return text;
105
+ const e = new Error(exports.TRANSLATION_FAILED);
106
+ e.cause = lastErr?.message ?? String(lastErr);
107
+ throw e;
94
108
  };
95
109
  exports.getTranslationWrapper = getTranslationWrapper;
96
110
  const detectLang = async (text) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vidspotai-shared",
3
- "version": "1.0.54",
3
+ "version": "1.0.56",
4
4
  "main": "lib/index.js",
5
5
  "types": "lib/index.d.ts",
6
6
  "exports": {
@@ -1,4 +0,0 @@
1
- import { TAiGenModel } from "../enums";
2
- import { IModelSchema } from "../types";
3
- export declare const alibabaConfigs: Partial<Record<TAiGenModel, IModelSchema>>;
4
- //# sourceMappingURL=alibaba.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"alibaba.d.ts","sourceRoot":"","sources":["../../../../src/globals/aiModels/providers/alibaba.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAaxC,eAAO,MAAM,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAiLrE,CAAC"}
@@ -1,183 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.alibabaConfigs = void 0;
4
- const wanCommonFields = {
5
- prompt: { required: true },
6
- aspectRatio: { allowedValues: ["16:9", "9:16", "1:1", "4:3", "3:4"] },
7
- resolution: { allowedValues: ["480p", "720p", "1080p"] },
8
- duration: { allowedValues: [5, 10] },
9
- negative_prompt: {},
10
- seed: {},
11
- watermark: {},
12
- promptOptimizer: {},
13
- };
14
- exports.alibabaConfigs = {
15
- // --- Wan 2.7 i2v --- (image2video; supports first-last-frame interpolation)
16
- "alibaba-wan-2.7-i2v": {
17
- modelId: "wan2.7-i2v-plus",
18
- type: ["image-to-video"],
19
- tier: "T3",
20
- fields: {
21
- ...wanCommonFields,
22
- inputImageUrl: { required: true },
23
- lastFrameImageUrl: {}, // FLF interpolation
24
- },
25
- cost: {
26
- table: {
27
- "832x480": { 5: 0.10, 10: 0.20 },
28
- "1280x720": { 5: 0.20, 10: 0.40 },
29
- "1920x1080": { 5: 0.40, 10: 0.80 },
30
- },
31
- },
32
- },
33
- // --- Wan 2.6 t2v ---
34
- "alibaba-wan-2.6-t2v": {
35
- modelId: "wan2.6-t2v-plus",
36
- type: ["text-to-video"],
37
- tier: "T3",
38
- fields: { ...wanCommonFields },
39
- cost: {
40
- table: {
41
- "832x480": { 5: 0.08, 10: 0.16 },
42
- "1280x720": { 5: 0.18, 10: 0.36 },
43
- "1920x1080": { 5: 0.36, 10: 0.72 },
44
- },
45
- },
46
- },
47
- // --- Wan 2.5 t2v ---
48
- "alibaba-wan-2.5-t2v": {
49
- modelId: "wan2.5-t2v-plus",
50
- type: ["text-to-video"],
51
- tier: "T2",
52
- fields: { ...wanCommonFields },
53
- cost: {
54
- table: {
55
- "832x480": { 5: 0.06, 10: 0.12 },
56
- "1280x720": { 5: 0.14, 10: 0.28 },
57
- "1920x1080": { 5: 0.28, 10: 0.56 },
58
- },
59
- },
60
- },
61
- // --- Wan 2.2 t2v ---
62
- "alibaba-wan-2.2-t2v": {
63
- modelId: "wan2.2-t2v-plus",
64
- type: ["text-to-video"],
65
- tier: "T2",
66
- fields: { ...wanCommonFields },
67
- cost: {
68
- table: {
69
- "832x480": { 5: 0.05, 10: 0.10 },
70
- "1280x720": { 5: 0.10, 10: 0.20 },
71
- "1920x1080": { 5: 0.20, 10: 0.40 },
72
- },
73
- },
74
- },
75
- // --- Wan 2.2 s2v --- (sound2video; audio drives motion, optional image for visual reference)
76
- "alibaba-wan-2.2-s2v": {
77
- modelId: "wan2.2-s2v",
78
- type: ["audio-to-video"],
79
- tier: "T2",
80
- fields: {
81
- prompt: {},
82
- inputAudioUrl: { required: true },
83
- inputImageUrl: {}, // optional visual reference
84
- duration: { allowedValues: [5, 10] },
85
- seed: {},
86
- watermark: {},
87
- },
88
- cost: {
89
- table: {
90
- // Pricing varies less by size for s2v; use a flat-ish table keyed on duration.
91
- "auto": { 5: 0.18, 10: 0.36 },
92
- },
93
- },
94
- },
95
- // ───────────────────────────────────────────────────────────────────────
96
- // Image-gen — Qwen-Image + Kolors (both via DashScope text2image / image2image)
97
- // ───────────────────────────────────────────────────────────────────────
98
- "alibaba-qwen-image-2.0-pro": {
99
- modelId: "qwen-image-2.0-pro",
100
- type: ["text-to-image"],
101
- tier: "T2",
102
- fields: {
103
- prompt: { required: true },
104
- aspectRatio: { allowedValues: ["1:1", "9:16", "16:9", "3:4", "4:3", "2:3", "3:2"] },
105
- numImages: { default: 1 },
106
- seed: {},
107
- watermark: {},
108
- promptOptimizer: {},
109
- negativePrompt: {},
110
- },
111
- cost: { fixed: 0.04 },
112
- },
113
- "alibaba-qwen-image-2.0": {
114
- modelId: "qwen-image-2.0",
115
- type: ["text-to-image"],
116
- tier: "T1",
117
- fields: {
118
- prompt: { required: true },
119
- aspectRatio: { allowedValues: ["1:1", "9:16", "16:9", "3:4", "4:3", "2:3", "3:2"] },
120
- numImages: { default: 1 },
121
- seed: {},
122
- watermark: {},
123
- promptOptimizer: {},
124
- negativePrompt: {},
125
- },
126
- cost: { fixed: 0.02 },
127
- },
128
- // Qwen-Image edit — instruction edit (1–3 reference images)
129
- "alibaba-qwen-image-edit-max": {
130
- modelId: "qwen-image-edit-max",
131
- type: ["image-to-image"],
132
- tier: "T2",
133
- fields: {
134
- prompt: { required: true },
135
- inputImageUrls: { required: true },
136
- seed: {},
137
- watermark: {},
138
- promptOptimizer: {},
139
- },
140
- cost: { fixed: 0.05 },
141
- },
142
- "alibaba-qwen-image-edit-plus": {
143
- modelId: "qwen-image-edit-plus",
144
- type: ["image-to-image"],
145
- tier: "T2",
146
- fields: {
147
- prompt: { required: true },
148
- inputImageUrls: { required: true },
149
- seed: {},
150
- watermark: {},
151
- promptOptimizer: {},
152
- },
153
- cost: { fixed: 0.04 },
154
- },
155
- "alibaba-qwen-image-edit": {
156
- modelId: "qwen-image-edit",
157
- type: ["image-to-image"],
158
- tier: "T1",
159
- fields: {
160
- prompt: { required: true },
161
- inputImageUrls: { required: true },
162
- seed: {},
163
- watermark: {},
164
- promptOptimizer: {},
165
- },
166
- cost: { fixed: 0.03 },
167
- },
168
- // Kolors (Kling) — hosted on DashScope; routed to AlibabaService in factory.
169
- "kling-kolors": {
170
- modelId: "kolors-v2",
171
- type: ["text-to-image"],
172
- tier: "T1",
173
- fields: {
174
- prompt: { required: true },
175
- aspectRatio: { allowedValues: ["1:1", "9:16", "16:9", "3:4", "4:3"] },
176
- numImages: { default: 1 },
177
- seed: {},
178
- watermark: {},
179
- negativePrompt: {},
180
- },
181
- cost: { fixed: 0.03 },
182
- },
183
- };
@@ -1,13 +0,0 @@
1
- import { IModelSchema } from "../types";
2
- /**
3
- * ElevenLabs sound-effects model configs. Sync — POST /v1/sound-generation
4
- * returns mp3 binary inline.
5
- *
6
- * Pricing: ElevenLabs charges ~40 character-credits per second of generated
7
- * audio on Creator/Pro tiers (~$0.0036/sec ≈ $0.08 for the 22s max clip).
8
- * Cost block exposes both `perSecond` (preferred when caller knows duration)
9
- * and `fixed` (worst-case ceiling, used when duration is absent).
10
- * Verified 2026-05-11 against ElevenLabs Creator-tier credit conversion.
11
- */
12
- export declare const elevenlabsConfigs: Record<string, IModelSchema>;
13
- //# sourceMappingURL=elevenlabs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"elevenlabs.d.ts","sourceRoot":"","sources":["../../../../src/globals/aiModels/providers/elevenlabs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAW1D,CAAC"}
@@ -1,25 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.elevenlabsConfigs = void 0;
4
- /**
5
- * ElevenLabs sound-effects model configs. Sync — POST /v1/sound-generation
6
- * returns mp3 binary inline.
7
- *
8
- * Pricing: ElevenLabs charges ~40 character-credits per second of generated
9
- * audio on Creator/Pro tiers (~$0.0036/sec ≈ $0.08 for the 22s max clip).
10
- * Cost block exposes both `perSecond` (preferred when caller knows duration)
11
- * and `fixed` (worst-case ceiling, used when duration is absent).
12
- * Verified 2026-05-11 against ElevenLabs Creator-tier credit conversion.
13
- */
14
- exports.elevenlabsConfigs = {
15
- "elevenlabs-sound-effects": {
16
- modelId: "eleven_text_to_sound_v2",
17
- type: ["sound-effects"],
18
- tier: "T1",
19
- fields: {
20
- prompt: { required: true },
21
- // ElevenLabs SFX duration range: 0.5–22 seconds
22
- },
23
- cost: { perSecond: 0.0036, fixed: 0.08 },
24
- },
25
- };
@@ -1,36 +0,0 @@
1
- /**
2
- * Pixverse Effects / Template registry.
3
- *
4
- * Pixverse exposes a curated library of "Effects" templates (Hug, Kiss, Squish,
5
- * AI Baby Podcast, etc.) accessible via POST /openapi/v2/video/template/generate
6
- * with a numeric `template_id` plus a `customer_img_url`. Most templates are
7
- * image-to-video — the user supplies a face/photo and the template animates it.
8
- *
9
- * Real IDs must be pulled from the Pixverse dashboard / template library API
10
- * (each template's ID is the numeric `template_id` shown in the docs UI).
11
- * The few entries below are placeholders documenting the shape — populate
12
- * with real IDs before exposing in the frontend.
13
- */
14
- export interface IPixverseEffectTemplate {
15
- /** Numeric Pixverse template_id (sent to /template/generate). */
16
- templateId: number;
17
- /** Slug used in the API surface (kebab-case, stable). */
18
- slug: string;
19
- /** Display label shown to users. */
20
- name: string;
21
- /** Coarse grouping for the picker UI. */
22
- category: "couple" | "transform" | "stylize" | "podcast" | "selfie" | "anime" | "other";
23
- /** Whether the template requires a user-supplied image (almost always true). */
24
- requiresImage: boolean;
25
- /** Optional default Pixverse model to pair with this template. */
26
- preferredModelId?: "v5" | "v5.5" | "v5.6";
27
- }
28
- /**
29
- * Curated list — POPULATE WITH REAL PIXVERSE TEMPLATE IDs from the dashboard.
30
- * Slugs are stable; templateIds are placeholder zeros until filled in.
31
- */
32
- export declare const PIXVERSE_EFFECT_TEMPLATES: IPixverseEffectTemplate[];
33
- export declare const PIXVERSE_TEMPLATES_BY_SLUG: Record<string, IPixverseEffectTemplate>;
34
- export declare function getPixverseTemplateBySlug(slug: string): IPixverseEffectTemplate | undefined;
35
- export declare function listPixverseTemplates(category?: IPixverseEffectTemplate["category"]): IPixverseEffectTemplate[];
36
- //# sourceMappingURL=pixverseTemplates.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pixverseTemplates.d.ts","sourceRoot":"","sources":["../../../../src/globals/aiModels/providers/pixverseTemplates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,uBAAuB;IACtC,iEAAiE;IACjE,UAAU,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,yCAAyC;IACzC,QAAQ,EACJ,QAAQ,GACR,WAAW,GACX,SAAS,GACT,SAAS,GACT,QAAQ,GACR,OAAO,GACP,OAAO,CAAC;IACZ,gFAAgF;IAChF,aAAa,EAAE,OAAO,CAAC;IACvB,kEAAkE;IAClE,gBAAgB,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;CAC3C;AAED;;;GAGG;AACH,eAAO,MAAM,yBAAyB,EAAE,uBAAuB,EAY9D,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CACR,CAAC;AAExE,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAE3F;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,CAAC,EAAE,uBAAuB,CAAC,UAAU,CAAC,GAAG,uBAAuB,EAAE,CAG/G"}
@@ -1,42 +0,0 @@
1
- "use strict";
2
- /**
3
- * Pixverse Effects / Template registry.
4
- *
5
- * Pixverse exposes a curated library of "Effects" templates (Hug, Kiss, Squish,
6
- * AI Baby Podcast, etc.) accessible via POST /openapi/v2/video/template/generate
7
- * with a numeric `template_id` plus a `customer_img_url`. Most templates are
8
- * image-to-video — the user supplies a face/photo and the template animates it.
9
- *
10
- * Real IDs must be pulled from the Pixverse dashboard / template library API
11
- * (each template's ID is the numeric `template_id` shown in the docs UI).
12
- * The few entries below are placeholders documenting the shape — populate
13
- * with real IDs before exposing in the frontend.
14
- */
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.PIXVERSE_TEMPLATES_BY_SLUG = exports.PIXVERSE_EFFECT_TEMPLATES = void 0;
17
- exports.getPixverseTemplateBySlug = getPixverseTemplateBySlug;
18
- exports.listPixverseTemplates = listPixverseTemplates;
19
- /**
20
- * Curated list — POPULATE WITH REAL PIXVERSE TEMPLATE IDs from the dashboard.
21
- * Slugs are stable; templateIds are placeholder zeros until filled in.
22
- */
23
- exports.PIXVERSE_EFFECT_TEMPLATES = [
24
- // --- Couple / interaction effects ---
25
- { templateId: 0, slug: "hug", name: "Hug", category: "couple", requiresImage: true, preferredModelId: "v5.6" },
26
- { templateId: 0, slug: "kiss", name: "Kiss", category: "couple", requiresImage: true, preferredModelId: "v5.6" },
27
- { templateId: 0, slug: "squish", name: "Squish", category: "transform", requiresImage: true, preferredModelId: "v5.6" },
28
- // --- Podcast / narration effects ---
29
- { templateId: 0, slug: "ai-baby-podcast", name: "AI Baby Podcast", category: "podcast", requiresImage: true, preferredModelId: "v5.6" },
30
- // --- Stylize / transform ---
31
- { templateId: 0, slug: "anime-me", name: "Anime Me", category: "anime", requiresImage: true, preferredModelId: "v5.5" },
32
- { templateId: 0, slug: "muscle", name: "Muscle Up", category: "transform", requiresImage: true, preferredModelId: "v5.6" },
33
- ];
34
- exports.PIXVERSE_TEMPLATES_BY_SLUG = Object.fromEntries(exports.PIXVERSE_EFFECT_TEMPLATES.map((t) => [t.slug, t]));
35
- function getPixverseTemplateBySlug(slug) {
36
- return exports.PIXVERSE_TEMPLATES_BY_SLUG[slug];
37
- }
38
- function listPixverseTemplates(category) {
39
- if (!category)
40
- return exports.PIXVERSE_EFFECT_TEMPLATES;
41
- return exports.PIXVERSE_EFFECT_TEMPLATES.filter((t) => t.category === category);
42
- }
@@ -1,27 +0,0 @@
1
- import type { Tier } from "../../schemas/project.schema";
2
- import type { GenerationType, IModelSchema } from "./types";
3
- /**
4
- * Helpers for the agent planner to query models by tier and capability.
5
- * Designed to be cheap and side-effect free — safe to call inside hot planner loops.
6
- */
7
- export interface ModelMatch {
8
- modelKey: string;
9
- config: IModelSchema;
10
- }
11
- /** Return every model whose tier matches. Optionally filter by GenerationType. */
12
- export declare function getModelsByTier(tier: Tier, type?: GenerationType): ModelMatch[];
13
- /** Return the cheapest model satisfying (tier, type). Uses cost.fixed → cost.perSecond → 0. */
14
- export declare function getCheapestModel(tier: Tier, type: GenerationType): ModelMatch | undefined;
15
- /** Return all models supporting a generation type, regardless of tier. */
16
- export declare function getModelsByType(type: GenerationType): ModelMatch[];
17
- /**
18
- * Build a compact, planner-readable summary of the model catalog grouped by
19
- * tier. Injected into the planner system prompt so the LLM can pick a concrete
20
- * `preferredModel` per scene with cost/quality awareness — e.g. cheap Kling
21
- * for b-roll, premium Veo for hero shots.
22
- *
23
- * Token budget matters here: ~10–20 lines, no JSON, sorted cheapest-first per
24
- * tier so the planner's default tendency aligns with cost minimization.
25
- */
26
- export declare function summarizeModelsForPlanner(type?: GenerationType): string;
27
- //# sourceMappingURL=tierHelpers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tierHelpers.d.ts","sourceRoot":"","sources":["../../../src/globals/aiModels/tierHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5D;;;GAGG;AAEH,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;CACtB;AAED,kFAAkF;AAClF,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,UAAU,EAAE,CAQ/E;AAED,+FAA+F;AAC/F,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,cAAc,GACnB,UAAU,GAAG,SAAS,CAIxB;AAED,0EAA0E;AAC1E,wBAAgB,eAAe,CAAC,IAAI,EAAE,cAAc,GAAG,UAAU,EAAE,CAMlE;AAQD;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,GAAE,cAAgC,GACrC,MAAM,CAaR"}