@devmotion/cli 0.6.3 → 0.7.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 (1365) hide show
  1. package/dist/index.js +4 -5
  2. package/mcp/mcp-stdio.mjs +377 -156
  3. package/package.json +1 -1
  4. package/studio/client/_app/immutable/assets/0.Lv_sH-a4.css +1 -0
  5. package/studio/client/_app/immutable/assets/0.Lv_sH-a4.css.br +0 -0
  6. package/studio/client/_app/immutable/assets/0.Lv_sH-a4.css.gz +0 -0
  7. package/studio/client/_app/immutable/assets/editor.BN5lBQZg.css +1 -0
  8. package/studio/client/_app/immutable/assets/editor.BN5lBQZg.css.br +0 -0
  9. package/studio/client/_app/immutable/assets/editor.BN5lBQZg.css.gz +0 -0
  10. package/studio/client/_app/immutable/chunks/0jm3sjlg.js +1 -0
  11. package/studio/client/_app/immutable/chunks/0jm3sjlg.js.br +2 -0
  12. package/studio/client/_app/immutable/chunks/0jm3sjlg.js.gz +0 -0
  13. package/studio/client/_app/immutable/chunks/5L1qzVZj.js +1 -0
  14. package/studio/client/_app/immutable/chunks/5L1qzVZj.js.br +0 -0
  15. package/studio/client/_app/immutable/chunks/5L1qzVZj.js.gz +0 -0
  16. package/studio/client/_app/immutable/chunks/8kx1slbN.js +1 -0
  17. package/studio/client/_app/immutable/chunks/8kx1slbN.js.br +0 -0
  18. package/studio/client/_app/immutable/chunks/8kx1slbN.js.gz +0 -0
  19. package/studio/client/_app/immutable/chunks/8vtb60R1.js +1 -0
  20. package/studio/client/_app/immutable/chunks/8vtb60R1.js.br +0 -0
  21. package/studio/client/_app/immutable/chunks/8vtb60R1.js.gz +0 -0
  22. package/studio/client/_app/immutable/chunks/B1Kon8VR.js +1 -0
  23. package/studio/client/_app/immutable/chunks/B1Kon8VR.js.br +0 -0
  24. package/studio/client/_app/immutable/chunks/B1Kon8VR.js.gz +0 -0
  25. package/studio/client/_app/immutable/chunks/B4dMvZH-.js +1 -0
  26. package/studio/client/_app/immutable/chunks/B4dMvZH-.js.br +0 -0
  27. package/studio/client/_app/immutable/chunks/B4dMvZH-.js.gz +0 -0
  28. package/studio/client/_app/immutable/chunks/B7fQzRev.js +1 -0
  29. package/studio/client/_app/immutable/chunks/B7fQzRev.js.br +0 -0
  30. package/studio/client/_app/immutable/chunks/B7fQzRev.js.gz +0 -0
  31. package/studio/client/_app/immutable/chunks/BAYadMNA.js +1 -0
  32. package/studio/client/_app/immutable/chunks/BAYadMNA.js.br +0 -0
  33. package/studio/client/_app/immutable/chunks/BAYadMNA.js.gz +0 -0
  34. package/studio/client/_app/immutable/chunks/BMGFIROs.js +1 -0
  35. package/studio/client/_app/immutable/chunks/BMGFIROs.js.br +0 -0
  36. package/studio/client/_app/immutable/chunks/BMGFIROs.js.gz +0 -0
  37. package/studio/client/_app/immutable/chunks/BYo4Jpme.js +16 -0
  38. package/studio/client/_app/immutable/chunks/BYo4Jpme.js.br +0 -0
  39. package/studio/client/_app/immutable/chunks/BYo4Jpme.js.gz +0 -0
  40. package/studio/client/_app/immutable/chunks/BeTUgF4S.js +1 -0
  41. package/studio/client/_app/immutable/chunks/BeTUgF4S.js.br +0 -0
  42. package/studio/client/_app/immutable/chunks/BeTUgF4S.js.gz +0 -0
  43. package/studio/client/_app/immutable/chunks/BidNKR6p.js +5 -0
  44. package/studio/client/_app/immutable/chunks/BidNKR6p.js.br +0 -0
  45. package/studio/client/_app/immutable/chunks/BidNKR6p.js.gz +0 -0
  46. package/studio/client/_app/immutable/chunks/BujAtXXM.js +1 -0
  47. package/studio/client/_app/immutable/chunks/BujAtXXM.js.br +0 -0
  48. package/studio/client/_app/immutable/chunks/BujAtXXM.js.gz +0 -0
  49. package/studio/client/_app/immutable/chunks/BvpaRDa_.js +1 -0
  50. package/studio/client/_app/immutable/chunks/BvpaRDa_.js.br +0 -0
  51. package/studio/client/_app/immutable/chunks/BvpaRDa_.js.gz +0 -0
  52. package/studio/client/_app/immutable/chunks/C4dDhPtf.js +1 -0
  53. package/studio/client/_app/immutable/chunks/C4dDhPtf.js.br +0 -0
  54. package/studio/client/_app/immutable/chunks/C4dDhPtf.js.gz +0 -0
  55. package/studio/client/_app/immutable/chunks/C9qsOfWE.js +1 -0
  56. package/studio/client/_app/immutable/chunks/C9qsOfWE.js.br +0 -0
  57. package/studio/client/_app/immutable/chunks/C9qsOfWE.js.gz +0 -0
  58. package/studio/client/_app/immutable/chunks/CNNzQrlb.js +1 -0
  59. package/studio/client/_app/immutable/chunks/CNNzQrlb.js.br +0 -0
  60. package/studio/client/_app/immutable/chunks/CNNzQrlb.js.gz +0 -0
  61. package/studio/client/_app/immutable/chunks/CP2t8wzc.js +1 -0
  62. package/studio/client/_app/immutable/chunks/CP2t8wzc.js.br +0 -0
  63. package/studio/client/_app/immutable/chunks/CP2t8wzc.js.gz +0 -0
  64. package/studio/client/_app/immutable/chunks/Ccg49IMO.js +96 -0
  65. package/studio/client/_app/immutable/chunks/Ccg49IMO.js.br +0 -0
  66. package/studio/client/_app/immutable/chunks/Ccg49IMO.js.gz +0 -0
  67. package/studio/client/_app/immutable/chunks/CidmzZr_.js +99 -0
  68. package/studio/client/_app/immutable/chunks/CidmzZr_.js.br +0 -0
  69. package/studio/client/_app/immutable/chunks/CidmzZr_.js.gz +0 -0
  70. package/studio/client/_app/immutable/chunks/CmzRa5tW.js +1 -0
  71. package/studio/client/_app/immutable/chunks/CmzRa5tW.js.br +0 -0
  72. package/studio/client/_app/immutable/chunks/CmzRa5tW.js.gz +0 -0
  73. package/studio/client/_app/immutable/chunks/Cu3vhtIm.js +1 -0
  74. package/studio/client/_app/immutable/chunks/Cu3vhtIm.js.br +3 -0
  75. package/studio/client/_app/immutable/chunks/Cu3vhtIm.js.gz +0 -0
  76. package/studio/client/_app/immutable/chunks/D1jFvxj0.js +1 -0
  77. package/studio/client/_app/immutable/chunks/D1jFvxj0.js.br +0 -0
  78. package/studio/client/_app/immutable/chunks/D1jFvxj0.js.gz +0 -0
  79. package/studio/client/_app/immutable/chunks/DGsO816A.js +1 -0
  80. package/studio/client/_app/immutable/chunks/DGsO816A.js.br +1 -0
  81. package/studio/client/_app/immutable/chunks/DGsO816A.js.gz +0 -0
  82. package/studio/client/_app/immutable/chunks/DKZDxza2.js +1 -0
  83. package/studio/client/_app/immutable/chunks/DKZDxza2.js.br +0 -0
  84. package/studio/client/_app/immutable/chunks/DKZDxza2.js.gz +0 -0
  85. package/studio/client/_app/immutable/chunks/DWycBSvS.js +1 -0
  86. package/studio/client/_app/immutable/chunks/DWycBSvS.js.br +0 -0
  87. package/studio/client/_app/immutable/chunks/DWycBSvS.js.gz +0 -0
  88. package/studio/client/_app/immutable/chunks/DaYfM_aT.js +512 -0
  89. package/studio/client/_app/immutable/chunks/DaYfM_aT.js.br +0 -0
  90. package/studio/client/_app/immutable/chunks/DaYfM_aT.js.gz +0 -0
  91. package/studio/client/_app/immutable/chunks/Dgdpq5VR.js +1 -0
  92. package/studio/client/_app/immutable/chunks/Dgdpq5VR.js.br +0 -0
  93. package/studio/client/_app/immutable/chunks/Dgdpq5VR.js.gz +0 -0
  94. package/studio/client/_app/immutable/chunks/DlBik49G.js +1 -0
  95. package/studio/client/_app/immutable/chunks/DlBik49G.js.br +0 -0
  96. package/studio/client/_app/immutable/chunks/DlBik49G.js.gz +0 -0
  97. package/studio/client/_app/immutable/chunks/DnZvuu1V.js +1 -0
  98. package/studio/client/_app/immutable/chunks/DnZvuu1V.js.br +0 -0
  99. package/studio/client/_app/immutable/chunks/DnZvuu1V.js.gz +0 -0
  100. package/studio/client/_app/immutable/chunks/Dru5mrF1.js +1 -0
  101. package/studio/client/_app/immutable/chunks/Dru5mrF1.js.br +0 -0
  102. package/studio/client/_app/immutable/chunks/Dru5mrF1.js.gz +0 -0
  103. package/studio/client/_app/immutable/chunks/DtOmmgoM.js +4 -0
  104. package/studio/client/_app/immutable/chunks/DtOmmgoM.js.br +0 -0
  105. package/studio/client/_app/immutable/chunks/DtOmmgoM.js.gz +0 -0
  106. package/studio/client/_app/immutable/chunks/DvcCXeL2.js +1 -0
  107. package/studio/client/_app/immutable/chunks/DvcCXeL2.js.br +0 -0
  108. package/studio/client/_app/immutable/chunks/DvcCXeL2.js.gz +0 -0
  109. package/studio/client/_app/immutable/chunks/DvvYiUNt.js +4 -0
  110. package/studio/client/_app/immutable/chunks/DvvYiUNt.js.br +0 -0
  111. package/studio/client/_app/immutable/chunks/DvvYiUNt.js.gz +0 -0
  112. package/studio/client/_app/immutable/chunks/DzAxJut6.js +1 -0
  113. package/studio/client/_app/immutable/chunks/DzAxJut6.js.br +0 -0
  114. package/studio/client/_app/immutable/chunks/DzAxJut6.js.gz +0 -0
  115. package/studio/client/_app/immutable/chunks/FKE3oSoF.js +2 -0
  116. package/studio/client/_app/immutable/chunks/FKE3oSoF.js.br +0 -0
  117. package/studio/client/_app/immutable/chunks/FKE3oSoF.js.gz +0 -0
  118. package/studio/client/_app/immutable/chunks/GL0yz1Mp.js +1 -0
  119. package/studio/client/_app/immutable/chunks/GL0yz1Mp.js.br +0 -0
  120. package/studio/client/_app/immutable/chunks/GL0yz1Mp.js.gz +0 -0
  121. package/studio/client/_app/immutable/chunks/IIGX7hY5.js +1 -0
  122. package/studio/client/_app/immutable/chunks/IIGX7hY5.js.br +0 -0
  123. package/studio/client/_app/immutable/chunks/IIGX7hY5.js.gz +0 -0
  124. package/studio/client/_app/immutable/chunks/KMhWafV2.js +1 -0
  125. package/studio/client/_app/immutable/chunks/KMhWafV2.js.br +0 -0
  126. package/studio/client/_app/immutable/chunks/KMhWafV2.js.gz +0 -0
  127. package/studio/client/_app/immutable/chunks/R0PS9H7p.js +1 -0
  128. package/studio/client/_app/immutable/chunks/R0PS9H7p.js.br +0 -0
  129. package/studio/client/_app/immutable/chunks/R0PS9H7p.js.gz +0 -0
  130. package/studio/client/_app/immutable/chunks/YwFQw-CS.js +730 -0
  131. package/studio/client/_app/immutable/chunks/YwFQw-CS.js.br +0 -0
  132. package/studio/client/_app/immutable/chunks/YwFQw-CS.js.gz +0 -0
  133. package/studio/client/_app/immutable/chunks/_y8Y_bWZ.js +2 -0
  134. package/studio/client/_app/immutable/chunks/_y8Y_bWZ.js.br +0 -0
  135. package/studio/client/_app/immutable/chunks/_y8Y_bWZ.js.gz +0 -0
  136. package/studio/client/_app/immutable/chunks/a4b4Uis3.js +1 -0
  137. package/studio/client/_app/immutable/chunks/a4b4Uis3.js.br +0 -0
  138. package/studio/client/_app/immutable/chunks/a4b4Uis3.js.gz +0 -0
  139. package/studio/client/_app/immutable/chunks/bGtUFIGQ.js +1 -0
  140. package/studio/client/_app/immutable/chunks/bGtUFIGQ.js.br +0 -0
  141. package/studio/client/_app/immutable/chunks/bGtUFIGQ.js.gz +0 -0
  142. package/studio/client/_app/immutable/chunks/nTtOQUuo.js +1 -0
  143. package/studio/client/_app/immutable/chunks/nTtOQUuo.js.br +0 -0
  144. package/studio/client/_app/immutable/chunks/nTtOQUuo.js.gz +0 -0
  145. package/studio/client/_app/immutable/chunks/pT1u3Hqy.js +1 -0
  146. package/studio/client/_app/immutable/chunks/pT1u3Hqy.js.br +0 -0
  147. package/studio/client/_app/immutable/chunks/pT1u3Hqy.js.gz +0 -0
  148. package/studio/client/_app/immutable/entry/app.BlMsBed_.js +2 -0
  149. package/studio/client/_app/immutable/entry/app.BlMsBed_.js.br +0 -0
  150. package/studio/client/_app/immutable/entry/app.BlMsBed_.js.gz +0 -0
  151. package/studio/client/_app/immutable/entry/start.Br1JKkZD.js +1 -0
  152. package/studio/client/_app/immutable/entry/start.Br1JKkZD.js.br +0 -0
  153. package/studio/client/_app/immutable/entry/start.Br1JKkZD.js.gz +0 -0
  154. package/studio/client/_app/immutable/nodes/0.CH4rtrFP.js +2 -0
  155. package/studio/client/_app/immutable/nodes/0.CH4rtrFP.js.br +0 -0
  156. package/studio/client/_app/immutable/nodes/0.CH4rtrFP.js.gz +0 -0
  157. package/studio/client/_app/immutable/nodes/1.BA5TTBGM.js +1 -0
  158. package/studio/client/_app/immutable/nodes/1.BA5TTBGM.js.br +0 -0
  159. package/studio/client/_app/immutable/nodes/1.BA5TTBGM.js.gz +0 -0
  160. package/studio/client/_app/immutable/nodes/10.DjmeS5CE.js +1 -0
  161. package/studio/client/_app/immutable/nodes/10.DjmeS5CE.js.br +0 -0
  162. package/studio/client/_app/immutable/nodes/10.DjmeS5CE.js.gz +0 -0
  163. package/studio/client/_app/immutable/nodes/11.B5lOMsv4.js +1 -0
  164. package/studio/client/_app/immutable/nodes/11.B5lOMsv4.js.br +0 -0
  165. package/studio/client/_app/immutable/nodes/11.B5lOMsv4.js.gz +0 -0
  166. package/studio/client/_app/immutable/nodes/12.Bdh67hUI.js +2 -0
  167. package/studio/client/_app/immutable/nodes/12.Bdh67hUI.js.br +0 -0
  168. package/studio/client/_app/immutable/nodes/12.Bdh67hUI.js.gz +0 -0
  169. package/studio/client/_app/immutable/nodes/13.DeCCmCaZ.js +1 -0
  170. package/studio/client/_app/immutable/nodes/13.DeCCmCaZ.js.br +0 -0
  171. package/studio/client/_app/immutable/nodes/13.DeCCmCaZ.js.gz +0 -0
  172. package/studio/client/_app/immutable/nodes/14.BK_MYNTB.js +1 -0
  173. package/studio/client/_app/immutable/nodes/14.BK_MYNTB.js.br +0 -0
  174. package/studio/client/_app/immutable/nodes/14.BK_MYNTB.js.gz +0 -0
  175. package/studio/client/_app/immutable/nodes/15.DTOUruaa.js +1 -0
  176. package/studio/client/_app/immutable/nodes/15.DTOUruaa.js.br +0 -0
  177. package/studio/client/_app/immutable/nodes/15.DTOUruaa.js.gz +0 -0
  178. package/studio/client/_app/immutable/nodes/16.4YmSrppF.js +8 -0
  179. package/studio/client/_app/immutable/nodes/16.4YmSrppF.js.br +0 -0
  180. package/studio/client/_app/immutable/nodes/16.4YmSrppF.js.gz +0 -0
  181. package/studio/client/_app/immutable/nodes/17.DUeNi0aB.js +1 -0
  182. package/studio/client/_app/immutable/nodes/17.DUeNi0aB.js.br +0 -0
  183. package/studio/client/_app/immutable/nodes/17.DUeNi0aB.js.gz +0 -0
  184. package/studio/client/_app/immutable/nodes/18.DilqYUUv.js +1 -0
  185. package/studio/client/_app/immutable/nodes/18.DilqYUUv.js.br +0 -0
  186. package/studio/client/_app/immutable/nodes/18.DilqYUUv.js.gz +0 -0
  187. package/studio/client/_app/immutable/nodes/19.QEH9WR1D.js +1 -0
  188. package/studio/client/_app/immutable/nodes/19.QEH9WR1D.js.br +0 -0
  189. package/studio/client/_app/immutable/nodes/19.QEH9WR1D.js.gz +0 -0
  190. package/studio/client/_app/immutable/nodes/20.DIa-6Wtj.js +45 -0
  191. package/studio/client/_app/immutable/nodes/20.DIa-6Wtj.js.br +0 -0
  192. package/studio/client/_app/immutable/nodes/20.DIa-6Wtj.js.gz +0 -0
  193. package/studio/client/_app/immutable/nodes/21.C7plrZc8.js +16 -0
  194. package/studio/client/_app/immutable/nodes/21.C7plrZc8.js.br +0 -0
  195. package/studio/client/_app/immutable/nodes/21.C7plrZc8.js.gz +0 -0
  196. package/studio/client/_app/immutable/nodes/28.BwKSpFi_.js +8 -0
  197. package/studio/client/_app/immutable/nodes/28.BwKSpFi_.js.br +0 -0
  198. package/studio/client/_app/immutable/nodes/28.BwKSpFi_.js.gz +0 -0
  199. package/studio/client/_app/immutable/nodes/3._qhjdqhg.js +1 -0
  200. package/studio/client/_app/immutable/nodes/3._qhjdqhg.js.br +0 -0
  201. package/studio/client/_app/immutable/nodes/3._qhjdqhg.js.gz +0 -0
  202. package/studio/client/_app/immutable/nodes/30.DA7Me2YV.js +26 -0
  203. package/studio/client/_app/immutable/nodes/30.DA7Me2YV.js.br +0 -0
  204. package/studio/client/_app/immutable/nodes/30.DA7Me2YV.js.gz +0 -0
  205. package/studio/client/_app/immutable/nodes/38.DwvBsnGj.js +1 -0
  206. package/studio/client/_app/immutable/nodes/38.DwvBsnGj.js.br +0 -0
  207. package/studio/client/_app/immutable/nodes/38.DwvBsnGj.js.gz +0 -0
  208. package/studio/client/_app/immutable/nodes/39.DrGfz0RO.js +88 -0
  209. package/studio/client/_app/immutable/nodes/39.DrGfz0RO.js.br +0 -0
  210. package/studio/client/_app/immutable/nodes/39.DrGfz0RO.js.gz +0 -0
  211. package/studio/client/_app/immutable/nodes/4.R0oJOWD_.js +1 -0
  212. package/studio/client/_app/immutable/nodes/4.R0oJOWD_.js.br +0 -0
  213. package/studio/client/_app/immutable/nodes/4.R0oJOWD_.js.gz +0 -0
  214. package/studio/client/_app/immutable/nodes/41.Dmbm2Egz.js +1 -0
  215. package/studio/client/_app/immutable/nodes/41.Dmbm2Egz.js.br +0 -0
  216. package/studio/client/_app/immutable/nodes/41.Dmbm2Egz.js.gz +0 -0
  217. package/studio/client/_app/immutable/nodes/42.D205SuZX.js +1 -0
  218. package/studio/client/_app/immutable/nodes/42.D205SuZX.js.br +0 -0
  219. package/studio/client/_app/immutable/nodes/42.D205SuZX.js.gz +0 -0
  220. package/studio/client/_app/immutable/nodes/43.Bg1auisF.js +1 -0
  221. package/studio/client/_app/immutable/nodes/43.Bg1auisF.js.br +0 -0
  222. package/studio/client/_app/immutable/nodes/43.Bg1auisF.js.gz +0 -0
  223. package/studio/client/_app/immutable/nodes/44.CPLxW4El.js +1 -0
  224. package/studio/client/_app/immutable/nodes/44.CPLxW4El.js.br +0 -0
  225. package/studio/client/_app/immutable/nodes/44.CPLxW4El.js.gz +0 -0
  226. package/studio/client/_app/immutable/nodes/45.DSssrLbd.js +2 -0
  227. package/studio/client/_app/immutable/nodes/45.DSssrLbd.js.br +0 -0
  228. package/studio/client/_app/immutable/nodes/45.DSssrLbd.js.gz +0 -0
  229. package/studio/client/_app/immutable/nodes/46.CmYGMWb4.js +1 -0
  230. package/studio/client/_app/immutable/nodes/46.CmYGMWb4.js.br +0 -0
  231. package/studio/client/_app/immutable/nodes/46.CmYGMWb4.js.gz +0 -0
  232. package/studio/client/_app/immutable/nodes/47.DJ6V3A94.js +1 -0
  233. package/studio/client/_app/immutable/nodes/47.DJ6V3A94.js.br +0 -0
  234. package/studio/client/_app/immutable/nodes/47.DJ6V3A94.js.gz +0 -0
  235. package/studio/client/_app/immutable/nodes/48.BOPN4KRW.js +1 -0
  236. package/studio/client/_app/immutable/nodes/48.BOPN4KRW.js.br +0 -0
  237. package/studio/client/_app/immutable/nodes/48.BOPN4KRW.js.gz +0 -0
  238. package/studio/client/_app/immutable/nodes/49.7I6h2rM6.js +7 -0
  239. package/studio/client/_app/immutable/nodes/49.7I6h2rM6.js.br +0 -0
  240. package/studio/client/_app/immutable/nodes/49.7I6h2rM6.js.gz +0 -0
  241. package/studio/client/_app/immutable/nodes/5.R0oJOWD_.js +1 -0
  242. package/studio/client/_app/immutable/nodes/5.R0oJOWD_.js.br +0 -0
  243. package/studio/client/_app/immutable/nodes/5.R0oJOWD_.js.gz +0 -0
  244. package/studio/client/_app/immutable/nodes/7.VcgX8ZgJ.js +1 -0
  245. package/studio/client/_app/immutable/nodes/7.VcgX8ZgJ.js.br +0 -0
  246. package/studio/client/_app/immutable/nodes/7.VcgX8ZgJ.js.gz +0 -0
  247. package/studio/client/_app/immutable/nodes/8.ZwVfexZ0.js +1 -0
  248. package/studio/client/_app/immutable/nodes/8.ZwVfexZ0.js.br +0 -0
  249. package/studio/client/_app/immutable/nodes/8.ZwVfexZ0.js.gz +0 -0
  250. package/studio/client/_app/immutable/nodes/9.DPwqLu6G.js +1 -0
  251. package/studio/client/_app/immutable/nodes/9.DPwqLu6G.js.br +0 -0
  252. package/studio/client/_app/immutable/nodes/9.DPwqLu6G.js.gz +0 -0
  253. package/studio/client/_app/version.json +1 -1
  254. package/studio/client/_app/version.json.br +0 -0
  255. package/studio/client/_app/version.json.gz +0 -0
  256. package/studio/prerendered/docs/api/errors.html +38 -38
  257. package/studio/prerendered/docs/api/errors.html.br +0 -0
  258. package/studio/prerendered/docs/api/errors.html.gz +0 -0
  259. package/studio/prerendered/docs/api/projects.html +38 -38
  260. package/studio/prerendered/docs/api/projects.html.br +0 -0
  261. package/studio/prerendered/docs/api/projects.html.gz +0 -0
  262. package/studio/prerendered/docs/api/renders.html +38 -38
  263. package/studio/prerendered/docs/api/renders.html.br +0 -0
  264. package/studio/prerendered/docs/api/renders.html.gz +0 -0
  265. package/studio/prerendered/docs/api/templates.html +38 -38
  266. package/studio/prerendered/docs/api/templates.html.br +0 -0
  267. package/studio/prerendered/docs/api/templates.html.gz +0 -0
  268. package/studio/prerendered/docs/api/webhooks.html +38 -38
  269. package/studio/prerendered/docs/api/webhooks.html.br +0 -0
  270. package/studio/prerendered/docs/api/webhooks.html.gz +0 -0
  271. package/studio/prerendered/docs/api.html +38 -38
  272. package/studio/prerendered/docs/api.html.br +0 -0
  273. package/studio/prerendered/docs/api.html.gz +0 -0
  274. package/studio/prerendered/docs/mcp/integrations/autogen.html +40 -40
  275. package/studio/prerendered/docs/mcp/integrations/autogen.html.br +0 -0
  276. package/studio/prerendered/docs/mcp/integrations/autogen.html.gz +0 -0
  277. package/studio/prerendered/docs/mcp/integrations/crewai.html +38 -38
  278. package/studio/prerendered/docs/mcp/integrations/crewai.html.br +0 -0
  279. package/studio/prerendered/docs/mcp/integrations/crewai.html.gz +0 -0
  280. package/studio/prerendered/docs/mcp/integrations/dify.html +38 -38
  281. package/studio/prerendered/docs/mcp/integrations/dify.html.br +0 -0
  282. package/studio/prerendered/docs/mcp/integrations/dify.html.gz +0 -0
  283. package/studio/prerendered/docs/mcp/integrations/flowise.html +38 -38
  284. package/studio/prerendered/docs/mcp/integrations/flowise.html.br +0 -0
  285. package/studio/prerendered/docs/mcp/integrations/flowise.html.gz +0 -0
  286. package/studio/prerendered/docs/mcp/integrations/langchain.html +38 -38
  287. package/studio/prerendered/docs/mcp/integrations/langchain.html.br +0 -0
  288. package/studio/prerendered/docs/mcp/integrations/langchain.html.gz +0 -0
  289. package/studio/prerendered/docs/mcp/integrations/llamaindex.html +38 -38
  290. package/studio/prerendered/docs/mcp/integrations/llamaindex.html.br +0 -0
  291. package/studio/prerendered/docs/mcp/integrations/llamaindex.html.gz +0 -0
  292. package/studio/prerendered/docs/mcp/integrations/make.html +38 -38
  293. package/studio/prerendered/docs/mcp/integrations/make.html.br +0 -0
  294. package/studio/prerendered/docs/mcp/integrations/make.html.gz +0 -0
  295. package/studio/prerendered/docs/mcp/integrations/n8n.html +38 -38
  296. package/studio/prerendered/docs/mcp/integrations/n8n.html.br +0 -0
  297. package/studio/prerendered/docs/mcp/integrations/n8n.html.gz +0 -0
  298. package/studio/prerendered/docs/mcp/integrations.html +38 -38
  299. package/studio/prerendered/docs/mcp/integrations.html.br +0 -0
  300. package/studio/prerendered/docs/mcp/integrations.html.gz +0 -0
  301. package/studio/prerendered/docs/mcp/plans.html +40 -40
  302. package/studio/prerendered/docs/mcp/plans.html.br +0 -0
  303. package/studio/prerendered/docs/mcp/plans.html.gz +0 -0
  304. package/studio/prerendered/docs/mcp/reference.html +48 -47
  305. package/studio/prerendered/docs/mcp/reference.html.br +0 -0
  306. package/studio/prerendered/docs/mcp/reference.html.gz +0 -0
  307. package/studio/prerendered/docs/mcp/setup.html +38 -38
  308. package/studio/prerendered/docs/mcp/setup.html.br +0 -0
  309. package/studio/prerendered/docs/mcp/setup.html.gz +0 -0
  310. package/studio/prerendered/docs/mcp.html +40 -40
  311. package/studio/prerendered/docs/mcp.html.br +0 -0
  312. package/studio/prerendered/docs/mcp.html.gz +0 -0
  313. package/studio/prerendered/docs.html +37 -37
  314. package/studio/prerendered/docs.html.br +0 -0
  315. package/studio/prerendered/docs.html.gz +0 -0
  316. package/studio/prerendered/dub/arabic.html +36 -36
  317. package/studio/prerendered/dub/arabic.html.br +0 -0
  318. package/studio/prerendered/dub/arabic.html.gz +0 -0
  319. package/studio/prerendered/dub/chinese-simplified.html +36 -36
  320. package/studio/prerendered/dub/chinese-simplified.html.br +0 -0
  321. package/studio/prerendered/dub/chinese-simplified.html.gz +0 -0
  322. package/studio/prerendered/dub/dutch.html +36 -36
  323. package/studio/prerendered/dub/dutch.html.br +0 -0
  324. package/studio/prerendered/dub/dutch.html.gz +0 -0
  325. package/studio/prerendered/dub/french.html +36 -36
  326. package/studio/prerendered/dub/french.html.br +0 -0
  327. package/studio/prerendered/dub/french.html.gz +0 -0
  328. package/studio/prerendered/dub/german.html +36 -36
  329. package/studio/prerendered/dub/german.html.br +0 -0
  330. package/studio/prerendered/dub/german.html.gz +0 -0
  331. package/studio/prerendered/dub/hindi.html +36 -36
  332. package/studio/prerendered/dub/hindi.html.br +0 -0
  333. package/studio/prerendered/dub/hindi.html.gz +0 -0
  334. package/studio/prerendered/dub/italian.html +36 -36
  335. package/studio/prerendered/dub/italian.html.br +0 -0
  336. package/studio/prerendered/dub/italian.html.gz +0 -0
  337. package/studio/prerendered/dub/japanese.html +36 -36
  338. package/studio/prerendered/dub/japanese.html.br +0 -0
  339. package/studio/prerendered/dub/japanese.html.gz +0 -0
  340. package/studio/prerendered/dub/korean.html +36 -36
  341. package/studio/prerendered/dub/korean.html.br +0 -0
  342. package/studio/prerendered/dub/korean.html.gz +0 -0
  343. package/studio/prerendered/dub/polish.html +36 -36
  344. package/studio/prerendered/dub/polish.html.br +0 -0
  345. package/studio/prerendered/dub/polish.html.gz +0 -0
  346. package/studio/prerendered/dub/portuguese.html +36 -36
  347. package/studio/prerendered/dub/portuguese.html.br +0 -0
  348. package/studio/prerendered/dub/portuguese.html.gz +0 -0
  349. package/studio/prerendered/dub/spanish.html +36 -36
  350. package/studio/prerendered/dub/spanish.html.br +0 -0
  351. package/studio/prerendered/dub/spanish.html.gz +0 -0
  352. package/studio/prerendered/sitemap.xml +90 -90
  353. package/studio/prerendered/sitemap.xml.br +0 -0
  354. package/studio/prerendered/sitemap.xml.gz +0 -0
  355. package/studio/prerendered/tools/add-captions/instagram.html +36 -36
  356. package/studio/prerendered/tools/add-captions/instagram.html.br +0 -0
  357. package/studio/prerendered/tools/add-captions/instagram.html.gz +0 -0
  358. package/studio/prerendered/tools/add-captions/linkedin.html +36 -36
  359. package/studio/prerendered/tools/add-captions/linkedin.html.br +0 -0
  360. package/studio/prerendered/tools/add-captions/linkedin.html.gz +0 -0
  361. package/studio/prerendered/tools/add-captions/tiktok.html +36 -36
  362. package/studio/prerendered/tools/add-captions/tiktok.html.br +0 -0
  363. package/studio/prerendered/tools/add-captions/tiktok.html.gz +0 -0
  364. package/studio/prerendered/tools/add-captions/twitter-x.html +36 -36
  365. package/studio/prerendered/tools/add-captions/twitter-x.html.br +0 -0
  366. package/studio/prerendered/tools/add-captions/twitter-x.html.gz +0 -0
  367. package/studio/prerendered/tools/add-captions/youtube.html +36 -36
  368. package/studio/prerendered/tools/add-captions/youtube.html.br +0 -0
  369. package/studio/prerendered/tools/add-captions/youtube.html.gz +0 -0
  370. package/studio/prerendered/tools/add-captions.html +40 -40
  371. package/studio/prerendered/tools/add-captions.html.br +0 -0
  372. package/studio/prerendered/tools/add-captions.html.gz +0 -0
  373. package/studio/prerendered/tools/auto-cut/linkedin.html +36 -36
  374. package/studio/prerendered/tools/auto-cut/linkedin.html.br +0 -0
  375. package/studio/prerendered/tools/auto-cut/linkedin.html.gz +0 -0
  376. package/studio/prerendered/tools/auto-cut/podcast.html +36 -36
  377. package/studio/prerendered/tools/auto-cut/podcast.html.br +0 -0
  378. package/studio/prerendered/tools/auto-cut/podcast.html.gz +0 -0
  379. package/studio/prerendered/tools/auto-cut/tiktok.html +36 -36
  380. package/studio/prerendered/tools/auto-cut/tiktok.html.br +0 -0
  381. package/studio/prerendered/tools/auto-cut/tiktok.html.gz +0 -0
  382. package/studio/prerendered/tools/auto-cut/youtube.html +36 -36
  383. package/studio/prerendered/tools/auto-cut/youtube.html.br +0 -0
  384. package/studio/prerendered/tools/auto-cut/youtube.html.gz +0 -0
  385. package/studio/prerendered/tools/auto-cut.html +40 -40
  386. package/studio/prerendered/tools/auto-cut.html.br +0 -0
  387. package/studio/prerendered/tools/auto-cut.html.gz +0 -0
  388. package/studio/prerendered/tools/generate-video/instagram.html +36 -36
  389. package/studio/prerendered/tools/generate-video/instagram.html.br +0 -0
  390. package/studio/prerendered/tools/generate-video/instagram.html.gz +0 -0
  391. package/studio/prerendered/tools/generate-video/tiktok.html +36 -36
  392. package/studio/prerendered/tools/generate-video/tiktok.html.br +0 -0
  393. package/studio/prerendered/tools/generate-video/tiktok.html.gz +0 -0
  394. package/studio/prerendered/tools/generate-video/twitter-x.html +36 -36
  395. package/studio/prerendered/tools/generate-video/twitter-x.html.br +0 -0
  396. package/studio/prerendered/tools/generate-video/twitter-x.html.gz +0 -0
  397. package/studio/prerendered/tools/generate-video/youtube.html +36 -36
  398. package/studio/prerendered/tools/generate-video/youtube.html.br +0 -0
  399. package/studio/prerendered/tools/generate-video/youtube.html.gz +0 -0
  400. package/studio/prerendered/tools/generate-video.html +40 -40
  401. package/studio/prerendered/tools/generate-video.html.br +0 -0
  402. package/studio/prerendered/tools/generate-video.html.gz +0 -0
  403. package/studio/prerendered/tools/laptop-3d-intro/linkedin.html +36 -36
  404. package/studio/prerendered/tools/laptop-3d-intro/linkedin.html.br +0 -0
  405. package/studio/prerendered/tools/laptop-3d-intro/linkedin.html.gz +0 -0
  406. package/studio/prerendered/tools/laptop-3d-intro/saas.html +36 -36
  407. package/studio/prerendered/tools/laptop-3d-intro/saas.html.br +0 -0
  408. package/studio/prerendered/tools/laptop-3d-intro/saas.html.gz +0 -0
  409. package/studio/prerendered/tools/laptop-3d-intro/twitter-x.html +36 -36
  410. package/studio/prerendered/tools/laptop-3d-intro/twitter-x.html.br +0 -0
  411. package/studio/prerendered/tools/laptop-3d-intro/twitter-x.html.gz +0 -0
  412. package/studio/prerendered/tools/laptop-3d-intro/youtube.html +36 -36
  413. package/studio/prerendered/tools/laptop-3d-intro/youtube.html.br +0 -0
  414. package/studio/prerendered/tools/laptop-3d-intro/youtube.html.gz +0 -0
  415. package/studio/prerendered/tools/laptop-3d-intro.html +40 -40
  416. package/studio/prerendered/tools/laptop-3d-intro.html.br +0 -0
  417. package/studio/prerendered/tools/laptop-3d-intro.html.gz +0 -0
  418. package/studio/prerendered/tools/screen-webcam-demo/linkedin.html +36 -36
  419. package/studio/prerendered/tools/screen-webcam-demo/linkedin.html.br +0 -0
  420. package/studio/prerendered/tools/screen-webcam-demo/linkedin.html.gz +0 -0
  421. package/studio/prerendered/tools/screen-webcam-demo/saas.html +36 -36
  422. package/studio/prerendered/tools/screen-webcam-demo/saas.html.br +0 -0
  423. package/studio/prerendered/tools/screen-webcam-demo/saas.html.gz +0 -0
  424. package/studio/prerendered/tools/screen-webcam-demo/twitter-x.html +36 -36
  425. package/studio/prerendered/tools/screen-webcam-demo/twitter-x.html.br +0 -0
  426. package/studio/prerendered/tools/screen-webcam-demo/twitter-x.html.gz +0 -0
  427. package/studio/prerendered/tools/screen-webcam-demo/youtube.html +36 -36
  428. package/studio/prerendered/tools/screen-webcam-demo/youtube.html.br +0 -0
  429. package/studio/prerendered/tools/screen-webcam-demo/youtube.html.gz +0 -0
  430. package/studio/prerendered/tools/screen-webcam-demo.html +40 -40
  431. package/studio/prerendered/tools/screen-webcam-demo.html.br +0 -0
  432. package/studio/prerendered/tools/screen-webcam-demo.html.gz +0 -0
  433. package/studio/prerendered/tools/screenshot-to-social/facebook.html +36 -36
  434. package/studio/prerendered/tools/screenshot-to-social/facebook.html.br +0 -0
  435. package/studio/prerendered/tools/screenshot-to-social/facebook.html.gz +0 -0
  436. package/studio/prerendered/tools/screenshot-to-social/instagram.html +36 -36
  437. package/studio/prerendered/tools/screenshot-to-social/instagram.html.br +0 -0
  438. package/studio/prerendered/tools/screenshot-to-social/instagram.html.gz +0 -0
  439. package/studio/prerendered/tools/screenshot-to-social/linkedin.html +36 -36
  440. package/studio/prerendered/tools/screenshot-to-social/linkedin.html.br +0 -0
  441. package/studio/prerendered/tools/screenshot-to-social/linkedin.html.gz +0 -0
  442. package/studio/prerendered/tools/screenshot-to-social/twitter-x.html +36 -36
  443. package/studio/prerendered/tools/screenshot-to-social/twitter-x.html.br +0 -0
  444. package/studio/prerendered/tools/screenshot-to-social/twitter-x.html.gz +0 -0
  445. package/studio/prerendered/tools/screenshot-to-social.html +40 -40
  446. package/studio/prerendered/tools/screenshot-to-social.html.br +0 -0
  447. package/studio/prerendered/tools/screenshot-to-social.html.gz +0 -0
  448. package/studio/prerendered/tools/translate-video/instagram.html +36 -36
  449. package/studio/prerendered/tools/translate-video/instagram.html.br +0 -0
  450. package/studio/prerendered/tools/translate-video/instagram.html.gz +0 -0
  451. package/studio/prerendered/tools/translate-video/linkedin.html +36 -36
  452. package/studio/prerendered/tools/translate-video/linkedin.html.br +0 -0
  453. package/studio/prerendered/tools/translate-video/linkedin.html.gz +0 -0
  454. package/studio/prerendered/tools/translate-video/tiktok.html +36 -36
  455. package/studio/prerendered/tools/translate-video/tiktok.html.br +0 -0
  456. package/studio/prerendered/tools/translate-video/tiktok.html.gz +0 -0
  457. package/studio/prerendered/tools/translate-video/youtube.html +36 -36
  458. package/studio/prerendered/tools/translate-video/youtube.html.br +0 -0
  459. package/studio/prerendered/tools/translate-video/youtube.html.gz +0 -0
  460. package/studio/prerendered/tools/translate-video.html +40 -40
  461. package/studio/prerendered/tools/translate-video.html.br +0 -0
  462. package/studio/prerendered/tools/translate-video.html.gz +0 -0
  463. package/studio/prerendered/tools/video-beautifier.html +40 -40
  464. package/studio/prerendered/tools/video-beautifier.html.br +0 -0
  465. package/studio/prerendered/tools/video-beautifier.html.gz +0 -0
  466. package/studio/prerendered/tools/video-to-browser/linkedin.html +36 -36
  467. package/studio/prerendered/tools/video-to-browser/linkedin.html.br +0 -0
  468. package/studio/prerendered/tools/video-to-browser/linkedin.html.gz +0 -0
  469. package/studio/prerendered/tools/video-to-browser/saas.html +36 -36
  470. package/studio/prerendered/tools/video-to-browser/saas.html.br +0 -0
  471. package/studio/prerendered/tools/video-to-browser/saas.html.gz +0 -0
  472. package/studio/prerendered/tools/video-to-browser/twitter-x.html +36 -36
  473. package/studio/prerendered/tools/video-to-browser/twitter-x.html.br +0 -0
  474. package/studio/prerendered/tools/video-to-browser/twitter-x.html.gz +0 -0
  475. package/studio/prerendered/tools/video-to-browser/youtube.html +36 -36
  476. package/studio/prerendered/tools/video-to-browser/youtube.html.br +0 -0
  477. package/studio/prerendered/tools/video-to-browser/youtube.html.gz +0 -0
  478. package/studio/prerendered/tools/video-to-browser.html +40 -40
  479. package/studio/prerendered/tools/video-to-browser.html.br +0 -0
  480. package/studio/prerendered/tools/video-to-browser.html.gz +0 -0
  481. package/studio/prerendered/tools/video-to-phone.html +40 -40
  482. package/studio/prerendered/tools/video-to-phone.html.br +0 -0
  483. package/studio/prerendered/tools/video-to-phone.html.gz +0 -0
  484. package/studio/prerendered/vs/canva.html +36 -36
  485. package/studio/prerendered/vs/canva.html.br +0 -0
  486. package/studio/prerendered/vs/canva.html.gz +0 -0
  487. package/studio/prerendered/vs/captions-ai.html +36 -36
  488. package/studio/prerendered/vs/captions-ai.html.br +0 -0
  489. package/studio/prerendered/vs/captions-ai.html.gz +0 -0
  490. package/studio/prerendered/vs/clipchamp.html +36 -36
  491. package/studio/prerendered/vs/clipchamp.html.br +0 -0
  492. package/studio/prerendered/vs/clipchamp.html.gz +0 -0
  493. package/studio/prerendered/vs/descript.html +36 -36
  494. package/studio/prerendered/vs/descript.html.br +0 -0
  495. package/studio/prerendered/vs/descript.html.gz +0 -0
  496. package/studio/prerendered/vs/kapwing.html +36 -36
  497. package/studio/prerendered/vs/kapwing.html.br +0 -0
  498. package/studio/prerendered/vs/kapwing.html.gz +0 -0
  499. package/studio/prerendered/vs/runway.html +36 -36
  500. package/studio/prerendered/vs/runway.html.br +0 -0
  501. package/studio/prerendered/vs/runway.html.gz +0 -0
  502. package/studio/prerendered/vs/submagic.html +36 -36
  503. package/studio/prerendered/vs/submagic.html.br +0 -0
  504. package/studio/prerendered/vs/submagic.html.gz +0 -0
  505. package/studio/prerendered/vs/veed.html +36 -36
  506. package/studio/prerendered/vs/veed.html.br +0 -0
  507. package/studio/prerendered/vs/veed.html.gz +0 -0
  508. package/studio/server/chunks/0-DrCbOn_U.js +32 -0
  509. package/studio/server/chunks/0-DrCbOn_U.js.map +1 -0
  510. package/studio/server/chunks/1-BHuYqaGp.js +9 -0
  511. package/studio/server/chunks/1-BHuYqaGp.js.map +1 -0
  512. package/studio/server/chunks/11-DcT9eofp.js +9 -0
  513. package/studio/server/chunks/11-DcT9eofp.js.map +1 -0
  514. package/studio/server/chunks/12-Br9qZR1c.js +9 -0
  515. package/studio/server/chunks/12-Br9qZR1c.js.map +1 -0
  516. package/studio/server/chunks/13-CXLQr4dU.js +59 -0
  517. package/studio/server/chunks/13-CXLQr4dU.js.map +1 -0
  518. package/studio/server/chunks/14-BcReNzGU.js +60 -0
  519. package/studio/server/chunks/14-BcReNzGU.js.map +1 -0
  520. package/studio/server/chunks/15-BR8pxyN_.js +9 -0
  521. package/studio/server/chunks/15-BR8pxyN_.js.map +1 -0
  522. package/studio/server/chunks/16-B-CvhSUs.js +72 -0
  523. package/studio/server/chunks/16-B-CvhSUs.js.map +1 -0
  524. package/studio/server/chunks/17-BLykPSq7.js +9 -0
  525. package/studio/server/chunks/17-BLykPSq7.js.map +1 -0
  526. package/studio/server/chunks/18-C7DjU0t5.js +9 -0
  527. package/studio/server/chunks/18-C7DjU0t5.js.map +1 -0
  528. package/studio/server/chunks/19-Cq0Qyivk.js +9 -0
  529. package/studio/server/chunks/19-Cq0Qyivk.js.map +1 -0
  530. package/studio/server/chunks/20-CRk87lvq.js +139 -0
  531. package/studio/server/chunks/20-CRk87lvq.js.map +1 -0
  532. package/studio/server/chunks/3-ChhTSXfT.js +9 -0
  533. package/studio/server/chunks/3-ChhTSXfT.js.map +1 -0
  534. package/studio/server/chunks/4-B9vyTnuL.js +9 -0
  535. package/studio/server/chunks/4-B9vyTnuL.js.map +1 -0
  536. package/studio/server/chunks/42-DOBpFqDR.js +56 -0
  537. package/studio/server/chunks/42-DOBpFqDR.js.map +1 -0
  538. package/studio/server/chunks/43-DRw-2-GS.js +9 -0
  539. package/studio/server/chunks/43-DRw-2-GS.js.map +1 -0
  540. package/studio/server/chunks/44-DLxClkX_.js +9 -0
  541. package/studio/server/chunks/44-DLxClkX_.js.map +1 -0
  542. package/studio/server/chunks/45-wVQw8tBx.js +115 -0
  543. package/studio/server/chunks/45-wVQw8tBx.js.map +1 -0
  544. package/studio/server/chunks/49-CSfj1Xtu.js +14 -0
  545. package/studio/server/chunks/49-CSfj1Xtu.js.map +1 -0
  546. package/studio/server/chunks/5-8UA2oVVT.js +9 -0
  547. package/studio/server/chunks/5-8UA2oVVT.js.map +1 -0
  548. package/studio/server/chunks/7-judL9OYr.js +215 -0
  549. package/studio/server/chunks/7-judL9OYr.js.map +1 -0
  550. package/studio/server/chunks/_error.svelte-C3N4FEB2.js +98 -0
  551. package/studio/server/chunks/_error.svelte-C3N4FEB2.js.map +1 -0
  552. package/studio/server/chunks/_error.svelte-C7sYQCnM.js +98 -0
  553. package/studio/server/chunks/_error.svelte-C7sYQCnM.js.map +1 -0
  554. package/studio/server/chunks/_layout.svelte-B7vWmRFJ.js +64 -0
  555. package/studio/server/chunks/_layout.svelte-B7vWmRFJ.js.map +1 -0
  556. package/studio/server/chunks/_layout.svelte-BIVwEY2g.js +1054 -0
  557. package/studio/server/chunks/_layout.svelte-BIVwEY2g.js.map +1 -0
  558. package/studio/server/chunks/_layout.svelte-CDrHT5wt.js +400 -0
  559. package/studio/server/chunks/_layout.svelte-CDrHT5wt.js.map +1 -0
  560. package/studio/server/chunks/_layout.svelte-DAYtUucm.js +64 -0
  561. package/studio/server/chunks/_layout.svelte-DAYtUucm.js.map +1 -0
  562. package/studio/server/chunks/_page.svelte-B1cMW63M.js +79 -0
  563. package/studio/server/chunks/_page.svelte-B1cMW63M.js.map +1 -0
  564. package/studio/server/chunks/_page.svelte-BL2j2QYJ.js +192 -0
  565. package/studio/server/chunks/_page.svelte-BL2j2QYJ.js.map +1 -0
  566. package/studio/server/chunks/_page.svelte-BiTflcHr.js +111 -0
  567. package/studio/server/chunks/_page.svelte-BiTflcHr.js.map +1 -0
  568. package/studio/server/chunks/_page.svelte-BwEzxkCN.js +418 -0
  569. package/studio/server/chunks/_page.svelte-BwEzxkCN.js.map +1 -0
  570. package/studio/server/chunks/_page.svelte-ByzdoeDB.js +11350 -0
  571. package/studio/server/chunks/_page.svelte-ByzdoeDB.js.map +1 -0
  572. package/studio/server/chunks/_page.svelte-CSU5TGt6.js +1732 -0
  573. package/studio/server/chunks/_page.svelte-CSU5TGt6.js.map +1 -0
  574. package/studio/server/chunks/_page.svelte-Ch08b7on.js +256 -0
  575. package/studio/server/chunks/_page.svelte-Ch08b7on.js.map +1 -0
  576. package/studio/server/chunks/_page.svelte-CyAzKzS1.js +506 -0
  577. package/studio/server/chunks/_page.svelte-CyAzKzS1.js.map +1 -0
  578. package/studio/server/chunks/_page.svelte-D3NFENjP.js +113 -0
  579. package/studio/server/chunks/_page.svelte-D3NFENjP.js.map +1 -0
  580. package/studio/server/chunks/_page.svelte-DoI4FMeA.js +319 -0
  581. package/studio/server/chunks/_page.svelte-DoI4FMeA.js.map +1 -0
  582. package/studio/server/chunks/_page.svelte-az4tVjJ_.js +1021 -0
  583. package/studio/server/chunks/_page.svelte-az4tVjJ_.js.map +1 -0
  584. package/studio/server/chunks/_page.svelte-czU-SjNZ.js +160 -0
  585. package/studio/server/chunks/_page.svelte-czU-SjNZ.js.map +1 -0
  586. package/studio/server/chunks/_server.ts-BMJ-08P_.js +34 -0
  587. package/studio/server/chunks/_server.ts-BMJ-08P_.js.map +1 -0
  588. package/studio/server/chunks/_server.ts-BsgeMvN0.js +722 -0
  589. package/studio/server/chunks/_server.ts-BsgeMvN0.js.map +1 -0
  590. package/studio/server/chunks/_server.ts-ByVY8xND.js +41 -0
  591. package/studio/server/chunks/_server.ts-ByVY8xND.js.map +1 -0
  592. package/studio/server/chunks/_server.ts-CA1HxfdZ.js +58 -0
  593. package/studio/server/chunks/_server.ts-CA1HxfdZ.js.map +1 -0
  594. package/studio/server/chunks/_server.ts-CBlNBm5s.js +70 -0
  595. package/studio/server/chunks/_server.ts-CBlNBm5s.js.map +1 -0
  596. package/studio/server/chunks/_server.ts-CGi39j79.js +232 -0
  597. package/studio/server/chunks/_server.ts-CGi39j79.js.map +1 -0
  598. package/studio/server/chunks/_server.ts-CLHP8Zrh.js +109 -0
  599. package/studio/server/chunks/_server.ts-CLHP8Zrh.js.map +1 -0
  600. package/studio/server/chunks/_server.ts-CNJZSPm5.js +60 -0
  601. package/studio/server/chunks/_server.ts-CNJZSPm5.js.map +1 -0
  602. package/studio/server/chunks/_server.ts-Cd1TmSSo.js +303 -0
  603. package/studio/server/chunks/_server.ts-Cd1TmSSo.js.map +1 -0
  604. package/studio/server/chunks/_server.ts-CkVDrj32.js +79 -0
  605. package/studio/server/chunks/_server.ts-CkVDrj32.js.map +1 -0
  606. package/studio/server/chunks/_server.ts-Ckj93zLL.js +49 -0
  607. package/studio/server/chunks/_server.ts-Ckj93zLL.js.map +1 -0
  608. package/studio/server/chunks/_server.ts-CriU7HwI.js +22 -0
  609. package/studio/server/chunks/_server.ts-CriU7HwI.js.map +1 -0
  610. package/studio/server/chunks/_server.ts-D1inEYb_.js +87 -0
  611. package/studio/server/chunks/_server.ts-D1inEYb_.js.map +1 -0
  612. package/studio/server/chunks/_server.ts-DA3zdbWI.js +48 -0
  613. package/studio/server/chunks/_server.ts-DA3zdbWI.js.map +1 -0
  614. package/studio/server/chunks/_server.ts-D_YUIRqi.js +87 -0
  615. package/studio/server/chunks/_server.ts-D_YUIRqi.js.map +1 -0
  616. package/studio/server/chunks/_server.ts-D_fEYx6c.js +158 -0
  617. package/studio/server/chunks/_server.ts-D_fEYx6c.js.map +1 -0
  618. package/studio/server/chunks/_server.ts-Da8qrASe.js +118 -0
  619. package/studio/server/chunks/_server.ts-Da8qrASe.js.map +1 -0
  620. package/studio/server/chunks/_server.ts-Dcr0g4Vq.js +52 -0
  621. package/studio/server/chunks/_server.ts-Dcr0g4Vq.js.map +1 -0
  622. package/studio/server/chunks/_server.ts-DnGq-qro.js +68 -0
  623. package/studio/server/chunks/_server.ts-DnGq-qro.js.map +1 -0
  624. package/studio/server/chunks/_server.ts-Do6qk473.js +56 -0
  625. package/studio/server/chunks/_server.ts-Do6qk473.js.map +1 -0
  626. package/studio/server/chunks/_server.ts-DsTz4hAe.js +96 -0
  627. package/studio/server/chunks/_server.ts-DsTz4hAe.js.map +1 -0
  628. package/studio/server/chunks/_server.ts-DxwlzaT7.js +122 -0
  629. package/studio/server/chunks/_server.ts-DxwlzaT7.js.map +1 -0
  630. package/studio/server/chunks/_server.ts-KHs6y_Wc.js +760 -0
  631. package/studio/server/chunks/_server.ts-KHs6y_Wc.js.map +1 -0
  632. package/studio/server/chunks/_server.ts-_eJk5Eiu.js +91 -0
  633. package/studio/server/chunks/_server.ts-_eJk5Eiu.js.map +1 -0
  634. package/studio/server/chunks/adapter-XtQVoo_l.js +91 -0
  635. package/studio/server/chunks/adapter-XtQVoo_l.js.map +1 -0
  636. package/studio/server/chunks/admin.remote-C-MAmmW-.js +105 -0
  637. package/studio/server/chunks/admin.remote-C-MAmmW-.js.map +1 -0
  638. package/studio/server/chunks/ai-access-Cm_VC4xc.js +299 -0
  639. package/studio/server/chunks/ai-access-Cm_VC4xc.js.map +1 -0
  640. package/studio/server/chunks/ai.remote-waQUpsLn.js +37 -0
  641. package/studio/server/chunks/ai.remote-waQUpsLn.js.map +1 -0
  642. package/studio/server/chunks/alert-dialog-description-B4VfiJRT.js +578 -0
  643. package/studio/server/chunks/alert-dialog-description-B4VfiJRT.js.map +1 -0
  644. package/studio/server/chunks/animation-sOd5R1cE.js +2912 -0
  645. package/studio/server/chunks/animation-sOd5R1cE.js.map +1 -0
  646. package/studio/server/chunks/api-Do--xZ9M.js +434 -0
  647. package/studio/server/chunks/api-Do--xZ9M.js.map +1 -0
  648. package/studio/server/chunks/api-keys-CcmgUWTH.js +117 -0
  649. package/studio/server/chunks/api-keys-CcmgUWTH.js.map +1 -0
  650. package/studio/server/chunks/api-keys.remote-JFKHDaD1.js +88 -0
  651. package/studio/server/chunks/api-keys.remote-JFKHDaD1.js.map +1 -0
  652. package/studio/server/chunks/app-header-Ck_YeZr5.js +96 -0
  653. package/studio/server/chunks/app-header-Ck_YeZr5.js.map +1 -0
  654. package/studio/server/chunks/assets.remote-CX2FvnlZ.js +113 -0
  655. package/studio/server/chunks/assets.remote-CX2FvnlZ.js.map +1 -0
  656. package/studio/server/chunks/attribute-protocol-DQ-1julf.js +151 -0
  657. package/studio/server/chunks/attribute-protocol-DQ-1julf.js.map +1 -0
  658. package/studio/server/chunks/auth-mx1dhuCn.js +22472 -0
  659. package/studio/server/chunks/auth-mx1dhuCn.js.map +1 -0
  660. package/studio/server/chunks/auth.remote-CN4se14K.js +351 -0
  661. package/studio/server/chunks/auth.remote-CN4se14K.js.map +1 -0
  662. package/studio/server/chunks/base-qepI6vHK.js +210 -0
  663. package/studio/server/chunks/base-qepI6vHK.js.map +1 -0
  664. package/studio/server/chunks/bun-sqlite-dialect-C8OaCWSL-BNevlRD6.js +197 -0
  665. package/studio/server/chunks/bun-sqlite-dialect-C8OaCWSL-BNevlRD6.js.map +1 -0
  666. package/studio/server/chunks/captions.remote-Pp1JQnfB.js +184 -0
  667. package/studio/server/chunks/captions.remote-Pp1JQnfB.js.map +1 -0
  668. package/studio/server/chunks/client2-DNrSxzuu.js +66 -0
  669. package/studio/server/chunks/client2-DNrSxzuu.js.map +1 -0
  670. package/studio/server/chunks/d1-sqlite-dialect-sYHNqBte-D67tOo2R.js +160 -0
  671. package/studio/server/chunks/d1-sqlite-dialect-sYHNqBte-D67tOo2R.js.map +1 -0
  672. package/studio/server/chunks/design-knowledge-D2NUeAAo.js +334 -0
  673. package/studio/server/chunks/design-knowledge-D2NUeAAo.js.map +1 -0
  674. package/studio/server/chunks/desktop-bootstrap-IVK9LbDz.js +67 -0
  675. package/studio/server/chunks/desktop-bootstrap-IVK9LbDz.js.map +1 -0
  676. package/studio/server/chunks/dubbing.remote-CZkC5M_a.js +153 -0
  677. package/studio/server/chunks/dubbing.remote-CZkC5M_a.js.map +1 -0
  678. package/studio/server/chunks/editor.svelte-Dd-2ZfWO.js +21027 -0
  679. package/studio/server/chunks/editor.svelte-Dd-2ZfWO.js.map +1 -0
  680. package/studio/server/chunks/env-AoZ3P0fg.js +92 -0
  681. package/studio/server/chunks/env-AoZ3P0fg.js.map +1 -0
  682. package/studio/server/chunks/extract-audio.remote-BKBT80-g.js +95 -0
  683. package/studio/server/chunks/extract-audio.remote-BKBT80-g.js.map +1 -0
  684. package/studio/server/chunks/feedback.remote-DveIB_5_.js +49 -0
  685. package/studio/server/chunks/feedback.remote-DveIB_5_.js.map +1 -0
  686. package/studio/server/chunks/find-stock-image-DDfrK_rA.js +709 -0
  687. package/studio/server/chunks/find-stock-image-DDfrK_rA.js.map +1 -0
  688. package/studio/server/chunks/fs-project-BxA38YDy.js +134 -0
  689. package/studio/server/chunks/fs-project-BxA38YDy.js.map +1 -0
  690. package/studio/server/chunks/hooks.server-DcXHGCUQ.js +309 -0
  691. package/studio/server/chunks/hooks.server-DcXHGCUQ.js.map +1 -0
  692. package/studio/server/chunks/html-parser-t3Ydy25K.js +8516 -0
  693. package/studio/server/chunks/html-parser-t3Ydy25K.js.map +1 -0
  694. package/studio/server/chunks/html-writer-D8dOWi0D.js +242 -0
  695. package/studio/server/chunks/html-writer-D8dOWi0D.js.map +1 -0
  696. package/studio/server/chunks/image-generation.remote-GIIJ69ro.js +140 -0
  697. package/studio/server/chunks/image-generation.remote-GIIJ69ro.js.map +1 -0
  698. package/studio/server/chunks/index-Bz4Ugmn7.js +4578 -0
  699. package/studio/server/chunks/index-Bz4Ugmn7.js.map +1 -0
  700. package/studio/server/chunks/index12-CP2lVQd1.js +265 -0
  701. package/studio/server/chunks/index12-CP2lVQd1.js.map +1 -0
  702. package/studio/server/chunks/index2-BvzNGjoj.js +23 -0
  703. package/studio/server/chunks/index2-BvzNGjoj.js.map +1 -0
  704. package/studio/server/chunks/index3-B3arCRqx.js +8 -0
  705. package/studio/server/chunks/index3-B3arCRqx.js.map +1 -0
  706. package/studio/server/chunks/index4-ByfR32IV.js +48 -0
  707. package/studio/server/chunks/index4-ByfR32IV.js.map +1 -0
  708. package/studio/server/chunks/index6-BwFC1GDh.js +239 -0
  709. package/studio/server/chunks/index6-BwFC1GDh.js.map +1 -0
  710. package/studio/server/chunks/index8-Dt6GB1aJ.js +44 -0
  711. package/studio/server/chunks/index8-Dt6GB1aJ.js.map +1 -0
  712. package/studio/server/chunks/layout-template-DRFNZLVI.js +1371 -0
  713. package/studio/server/chunks/layout-template-DRFNZLVI.js.map +1 -0
  714. package/studio/server/chunks/lummi-Cu3Js7rz.js +189 -0
  715. package/studio/server/chunks/lummi-Cu3Js7rz.js.map +1 -0
  716. package/studio/server/chunks/lummi.remote-BMN4XopC.js +44 -0
  717. package/studio/server/chunks/lummi.remote-BMN4XopC.js.map +1 -0
  718. package/studio/server/chunks/media-analysis-Ch1fmDUt.js +229 -0
  719. package/studio/server/chunks/media-analysis-Ch1fmDUt.js.map +1 -0
  720. package/studio/server/chunks/media-analysis.remote-yI6aCZ78.js +63 -0
  721. package/studio/server/chunks/media-analysis.remote-yI6aCZ78.js.map +1 -0
  722. package/studio/server/chunks/media-v9Bq2kuR.js +157 -0
  723. package/studio/server/chunks/media-v9Bq2kuR.js.map +1 -0
  724. package/studio/server/chunks/middleware-D0o6fOUG.js +72 -0
  725. package/studio/server/chunks/middleware-D0o6fOUG.js.map +1 -0
  726. package/studio/server/chunks/mutations-CkUdOAoa.js +551 -0
  727. package/studio/server/chunks/mutations-CkUdOAoa.js.map +1 -0
  728. package/studio/server/chunks/node-sqlite-dialect-Di8ZYXD0.js +197 -0
  729. package/studio/server/chunks/node-sqlite-dialect-Di8ZYXD0.js.map +1 -0
  730. package/studio/server/chunks/onboarding-email-BvuCl7dz.js +311 -0
  731. package/studio/server/chunks/onboarding-email-BvuCl7dz.js.map +1 -0
  732. package/studio/server/chunks/optional-services-BGRY7tmz.js +45 -0
  733. package/studio/server/chunks/optional-services-BGRY7tmz.js.map +1 -0
  734. package/studio/server/chunks/pagination-Q7FOr3rO.js +159 -0
  735. package/studio/server/chunks/pagination-Q7FOr3rO.js.map +1 -0
  736. package/studio/server/chunks/posthog-kZp2zKvY.js +11 -0
  737. package/studio/server/chunks/posthog-kZp2zKvY.js.map +1 -0
  738. package/studio/server/chunks/presets-CU-ej2J9.js +369 -0
  739. package/studio/server/chunks/presets-CU-ej2J9.js.map +1 -0
  740. package/studio/server/chunks/project-layer-yZ50OnjM.js +28 -0
  741. package/studio/server/chunks/project-layer-yZ50OnjM.js.map +1 -0
  742. package/studio/server/chunks/projects.remote-ipNnrM1d.js +297 -0
  743. package/studio/server/chunks/projects.remote-ipNnrM1d.js.map +1 -0
  744. package/studio/server/chunks/queue-init-C_8i6pyv.js +38 -0
  745. package/studio/server/chunks/queue-init-C_8i6pyv.js.map +1 -0
  746. package/studio/server/chunks/registry-z2-pQ1Jw.js +18 -0
  747. package/studio/server/chunks/registry-z2-pQ1Jw.js.map +1 -0
  748. package/studio/server/chunks/registry2-BhwPna1F.js +4851 -0
  749. package/studio/server/chunks/registry2-BhwPna1F.js.map +1 -0
  750. package/studio/server/chunks/remote-148gj0t-CLfgEUwr.js +15 -0
  751. package/studio/server/chunks/remote-148gj0t-CLfgEUwr.js.map +1 -0
  752. package/studio/server/chunks/remote-1afl6ud-BYqN02Le.js +18 -0
  753. package/studio/server/chunks/remote-1afl6ud-BYqN02Le.js.map +1 -0
  754. package/studio/server/chunks/remote-1cihryv-BxHbFmSt.js +34 -0
  755. package/studio/server/chunks/remote-1cihryv-BxHbFmSt.js.map +1 -0
  756. package/studio/server/chunks/remote-1ez0sx-DKZ6ubnB.js +34 -0
  757. package/studio/server/chunks/remote-1ez0sx-DKZ6ubnB.js.map +1 -0
  758. package/studio/server/chunks/remote-1mi3j6d-4ClkS6sd.js +21 -0
  759. package/studio/server/chunks/remote-1mi3j6d-4ClkS6sd.js.map +1 -0
  760. package/studio/server/chunks/remote-1rjk8jv-CF94t93Y.js +22 -0
  761. package/studio/server/chunks/remote-1rjk8jv-CF94t93Y.js.map +1 -0
  762. package/studio/server/chunks/remote-1web5fy-Bw0AJHlD.js +35 -0
  763. package/studio/server/chunks/remote-1web5fy-Bw0AJHlD.js.map +1 -0
  764. package/studio/server/chunks/remote-5mu9ty-DKqUPY8s.js +31 -0
  765. package/studio/server/chunks/remote-5mu9ty-DKqUPY8s.js.map +1 -0
  766. package/studio/server/chunks/remote-aelvq6-C3B2AyF6.js +26 -0
  767. package/studio/server/chunks/remote-aelvq6-C3B2AyF6.js.map +1 -0
  768. package/studio/server/chunks/remote-em2k3w-Z00J8-Q9.js +25 -0
  769. package/studio/server/chunks/remote-em2k3w-Z00J8-Q9.js.map +1 -0
  770. package/studio/server/chunks/remote-gezfls-CbSTOGmI.js +21 -0
  771. package/studio/server/chunks/remote-gezfls-CbSTOGmI.js.map +1 -0
  772. package/studio/server/chunks/remote-lv3p1w-BcKTNydX.js +15 -0
  773. package/studio/server/chunks/remote-lv3p1w-BcKTNydX.js.map +1 -0
  774. package/studio/server/chunks/remote-ssr7vi-rhkV3R21.js +33 -0
  775. package/studio/server/chunks/remote-ssr7vi-rhkV3R21.js.map +1 -0
  776. package/studio/server/chunks/remote-sy19x7-BZ5ceu8t.js +29 -0
  777. package/studio/server/chunks/remote-sy19x7-BZ5ceu8t.js.map +1 -0
  778. package/studio/server/chunks/remote-tisyb0-ChggPTNB.js +31 -0
  779. package/studio/server/chunks/remote-tisyb0-ChggPTNB.js.map +1 -0
  780. package/studio/server/chunks/remote-xj8myv-DruftVtE.js +31 -0
  781. package/studio/server/chunks/remote-xj8myv-DruftVtE.js.map +1 -0
  782. package/studio/server/chunks/remote-z7lvth-D_9BqgW_.js +23 -0
  783. package/studio/server/chunks/remote-z7lvth-D_9BqgW_.js.map +1 -0
  784. package/studio/server/chunks/remote-zjib3m-DnAqo6l6.js +24 -0
  785. package/studio/server/chunks/remote-zjib3m-DnAqo6l6.js.map +1 -0
  786. package/studio/server/chunks/render-api-DtG3ftN1.js +240 -0
  787. package/studio/server/chunks/render-api-DtG3ftN1.js.map +1 -0
  788. package/studio/server/chunks/scrub-xyz.svelte_svelte_type_style_lang-D5bzSlf5.js +4752 -0
  789. package/studio/server/chunks/scrub-xyz.svelte_svelte_type_style_lang-D5bzSlf5.js.map +1 -0
  790. package/studio/server/chunks/stock-image.remote-Cn_Dh7Ok.js +87 -0
  791. package/studio/server/chunks/stock-image.remote-Cn_Dh7Ok.js.map +1 -0
  792. package/studio/server/chunks/subscription-BC4gCTG6.js +138 -0
  793. package/studio/server/chunks/subscription-BC4gCTG6.js.map +1 -0
  794. package/studio/server/chunks/subscription-limits-kr9leRdz.js +114 -0
  795. package/studio/server/chunks/subscription-limits-kr9leRdz.js.map +1 -0
  796. package/studio/server/chunks/template-usage.remote-DL-DKmuu.js +53 -0
  797. package/studio/server/chunks/template-usage.remote-DL-DKmuu.js.map +1 -0
  798. package/studio/server/chunks/thumbnail-queue-D4GYcvrD.js +148 -0
  799. package/studio/server/chunks/thumbnail-queue-D4GYcvrD.js.map +1 -0
  800. package/studio/server/chunks/tooltip-provider-Y8-pmG0D.js +30 -0
  801. package/studio/server/chunks/tooltip-provider-Y8-pmG0D.js.map +1 -0
  802. package/studio/server/chunks/tooltip.svelte-CMQZQZ-r.js +658 -0
  803. package/studio/server/chunks/tooltip.svelte-CMQZQZ-r.js.map +1 -0
  804. package/studio/server/chunks/tts-voices-B9J2ZzGy.js +32 -0
  805. package/studio/server/chunks/tts-voices-B9J2ZzGy.js.map +1 -0
  806. package/studio/server/chunks/tts.remote-BERCmX-n.js +194 -0
  807. package/studio/server/chunks/tts.remote-BERCmX-n.js.map +1 -0
  808. package/studio/server/chunks/ui.svelte-DSRn4LdL.js +88 -0
  809. package/studio/server/chunks/ui.svelte-DSRn4LdL.js.map +1 -0
  810. package/studio/server/chunks/upload-service-Boi3a_IC.js +220 -0
  811. package/studio/server/chunks/upload-service-Boi3a_IC.js.map +1 -0
  812. package/studio/server/chunks/upload.remote-Bhhj6ZvH.js +131 -0
  813. package/studio/server/chunks/upload.remote-Bhhj6ZvH.js.map +1 -0
  814. package/studio/server/chunks/video-generation.remote-DkDf_BYp.js +197 -0
  815. package/studio/server/chunks/video-generation.remote-DkDf_BYp.js.map +1 -0
  816. package/studio/server/chunks/video-renderer-DJUVOoRL.js +412 -0
  817. package/studio/server/chunks/video-renderer-DJUVOoRL.js.map +1 -0
  818. package/studio/server/chunks/watermark-u8k4sZA3.js +164 -0
  819. package/studio/server/chunks/watermark-u8k4sZA3.js.map +1 -0
  820. package/studio/server/index.js +1 -1
  821. package/studio/server/manifest.js +64 -62
  822. package/studio/server/manifest.js.map +1 -1
  823. package/studio/client/_app/immutable/assets/0.BKuIH3jk.css +0 -1
  824. package/studio/client/_app/immutable/assets/0.BKuIH3jk.css.br +0 -0
  825. package/studio/client/_app/immutable/assets/0.BKuIH3jk.css.gz +0 -0
  826. package/studio/client/_app/immutable/assets/editor._QrWwLKb.css +0 -1
  827. package/studio/client/_app/immutable/assets/editor._QrWwLKb.css.br +0 -2
  828. package/studio/client/_app/immutable/assets/editor._QrWwLKb.css.gz +0 -0
  829. package/studio/client/_app/immutable/chunks/-w8AgfGk.js +0 -1
  830. package/studio/client/_app/immutable/chunks/-w8AgfGk.js.br +0 -0
  831. package/studio/client/_app/immutable/chunks/-w8AgfGk.js.gz +0 -0
  832. package/studio/client/_app/immutable/chunks/0LXoSuAq.js +0 -1
  833. package/studio/client/_app/immutable/chunks/0LXoSuAq.js.br +0 -0
  834. package/studio/client/_app/immutable/chunks/0LXoSuAq.js.gz +0 -0
  835. package/studio/client/_app/immutable/chunks/0hf0C23S.js +0 -1
  836. package/studio/client/_app/immutable/chunks/0hf0C23S.js.br +0 -0
  837. package/studio/client/_app/immutable/chunks/0hf0C23S.js.gz +0 -0
  838. package/studio/client/_app/immutable/chunks/52GXB-Lx.js +0 -1
  839. package/studio/client/_app/immutable/chunks/52GXB-Lx.js.br +0 -0
  840. package/studio/client/_app/immutable/chunks/52GXB-Lx.js.gz +0 -0
  841. package/studio/client/_app/immutable/chunks/B6hmyilk.js +0 -1
  842. package/studio/client/_app/immutable/chunks/B6hmyilk.js.br +0 -0
  843. package/studio/client/_app/immutable/chunks/B6hmyilk.js.gz +0 -0
  844. package/studio/client/_app/immutable/chunks/BAhypDJI.js +0 -1
  845. package/studio/client/_app/immutable/chunks/BAhypDJI.js.br +0 -0
  846. package/studio/client/_app/immutable/chunks/BAhypDJI.js.gz +0 -0
  847. package/studio/client/_app/immutable/chunks/BSBe_oem.js +0 -16
  848. package/studio/client/_app/immutable/chunks/BSBe_oem.js.br +0 -0
  849. package/studio/client/_app/immutable/chunks/BSBe_oem.js.gz +0 -0
  850. package/studio/client/_app/immutable/chunks/BSPxtRj6.js +0 -1
  851. package/studio/client/_app/immutable/chunks/BSPxtRj6.js.br +0 -0
  852. package/studio/client/_app/immutable/chunks/BSPxtRj6.js.gz +0 -0
  853. package/studio/client/_app/immutable/chunks/BTkRM4Uk.js +0 -1
  854. package/studio/client/_app/immutable/chunks/BTkRM4Uk.js.br +0 -0
  855. package/studio/client/_app/immutable/chunks/BTkRM4Uk.js.gz +0 -0
  856. package/studio/client/_app/immutable/chunks/BY7NfAld.js +0 -4
  857. package/studio/client/_app/immutable/chunks/BY7NfAld.js.br +0 -0
  858. package/studio/client/_app/immutable/chunks/BY7NfAld.js.gz +0 -0
  859. package/studio/client/_app/immutable/chunks/BcFepoRa.js +0 -730
  860. package/studio/client/_app/immutable/chunks/BcFepoRa.js.br +0 -0
  861. package/studio/client/_app/immutable/chunks/BcFepoRa.js.gz +0 -0
  862. package/studio/client/_app/immutable/chunks/BvzaEl32.js +0 -1
  863. package/studio/client/_app/immutable/chunks/BvzaEl32.js.br +0 -0
  864. package/studio/client/_app/immutable/chunks/BvzaEl32.js.gz +0 -0
  865. package/studio/client/_app/immutable/chunks/Bxcr6TQy.js +0 -99
  866. package/studio/client/_app/immutable/chunks/Bxcr6TQy.js.br +0 -0
  867. package/studio/client/_app/immutable/chunks/Bxcr6TQy.js.gz +0 -0
  868. package/studio/client/_app/immutable/chunks/C0K_KauH.js +0 -1
  869. package/studio/client/_app/immutable/chunks/C0K_KauH.js.br +0 -0
  870. package/studio/client/_app/immutable/chunks/C0K_KauH.js.gz +0 -0
  871. package/studio/client/_app/immutable/chunks/C3zSaQMD.js +0 -1
  872. package/studio/client/_app/immutable/chunks/C3zSaQMD.js.br +0 -2
  873. package/studio/client/_app/immutable/chunks/C3zSaQMD.js.gz +0 -0
  874. package/studio/client/_app/immutable/chunks/C6BSxyDb.js +0 -1
  875. package/studio/client/_app/immutable/chunks/C6BSxyDb.js.br +0 -0
  876. package/studio/client/_app/immutable/chunks/C6BSxyDb.js.gz +0 -0
  877. package/studio/client/_app/immutable/chunks/C8FzHBqQ.js +0 -1
  878. package/studio/client/_app/immutable/chunks/C8FzHBqQ.js.br +0 -0
  879. package/studio/client/_app/immutable/chunks/C8FzHBqQ.js.gz +0 -0
  880. package/studio/client/_app/immutable/chunks/CC8c0epL.js +0 -4
  881. package/studio/client/_app/immutable/chunks/CC8c0epL.js.br +0 -0
  882. package/studio/client/_app/immutable/chunks/CC8c0epL.js.gz +0 -0
  883. package/studio/client/_app/immutable/chunks/CQdOmqus.js +0 -1
  884. package/studio/client/_app/immutable/chunks/CQdOmqus.js.br +0 -0
  885. package/studio/client/_app/immutable/chunks/CQdOmqus.js.gz +0 -0
  886. package/studio/client/_app/immutable/chunks/C_JEyoc9.js +0 -1
  887. package/studio/client/_app/immutable/chunks/C_JEyoc9.js.br +0 -0
  888. package/studio/client/_app/immutable/chunks/C_JEyoc9.js.gz +0 -0
  889. package/studio/client/_app/immutable/chunks/C_glBBzR.js +0 -2
  890. package/studio/client/_app/immutable/chunks/C_glBBzR.js.br +0 -0
  891. package/studio/client/_app/immutable/chunks/C_glBBzR.js.gz +0 -0
  892. package/studio/client/_app/immutable/chunks/CazEfIaP.js +0 -1
  893. package/studio/client/_app/immutable/chunks/CazEfIaP.js.br +0 -0
  894. package/studio/client/_app/immutable/chunks/CazEfIaP.js.gz +0 -0
  895. package/studio/client/_app/immutable/chunks/CiDOuEjR.js +0 -1
  896. package/studio/client/_app/immutable/chunks/CiDOuEjR.js.br +0 -0
  897. package/studio/client/_app/immutable/chunks/CiDOuEjR.js.gz +0 -0
  898. package/studio/client/_app/immutable/chunks/Cnoy1Nsk.js +0 -1
  899. package/studio/client/_app/immutable/chunks/Cnoy1Nsk.js.br +0 -0
  900. package/studio/client/_app/immutable/chunks/Cnoy1Nsk.js.gz +0 -0
  901. package/studio/client/_app/immutable/chunks/CrHjC-CS.js +0 -1
  902. package/studio/client/_app/immutable/chunks/CrHjC-CS.js.br +0 -0
  903. package/studio/client/_app/immutable/chunks/CrHjC-CS.js.gz +0 -0
  904. package/studio/client/_app/immutable/chunks/D-G_aVDe.js +0 -1
  905. package/studio/client/_app/immutable/chunks/D-G_aVDe.js.br +0 -0
  906. package/studio/client/_app/immutable/chunks/D-G_aVDe.js.gz +0 -0
  907. package/studio/client/_app/immutable/chunks/DK-xvsKr.js +0 -1
  908. package/studio/client/_app/immutable/chunks/DK-xvsKr.js.br +0 -0
  909. package/studio/client/_app/immutable/chunks/DK-xvsKr.js.gz +0 -0
  910. package/studio/client/_app/immutable/chunks/DKwvwQkU.js +0 -1
  911. package/studio/client/_app/immutable/chunks/DKwvwQkU.js.br +0 -0
  912. package/studio/client/_app/immutable/chunks/DKwvwQkU.js.gz +0 -0
  913. package/studio/client/_app/immutable/chunks/DRDQO7lT.js +0 -1
  914. package/studio/client/_app/immutable/chunks/DRDQO7lT.js.br +0 -0
  915. package/studio/client/_app/immutable/chunks/DRDQO7lT.js.gz +0 -0
  916. package/studio/client/_app/immutable/chunks/DTcslyJn.js +0 -1
  917. package/studio/client/_app/immutable/chunks/DTcslyJn.js.br +0 -0
  918. package/studio/client/_app/immutable/chunks/DTcslyJn.js.gz +0 -0
  919. package/studio/client/_app/immutable/chunks/DbaIpQMW.js +0 -512
  920. package/studio/client/_app/immutable/chunks/DbaIpQMW.js.br +0 -0
  921. package/studio/client/_app/immutable/chunks/DbaIpQMW.js.gz +0 -0
  922. package/studio/client/_app/immutable/chunks/Dhskw98X.js +0 -1
  923. package/studio/client/_app/immutable/chunks/Dhskw98X.js.br +0 -0
  924. package/studio/client/_app/immutable/chunks/Dhskw98X.js.gz +0 -0
  925. package/studio/client/_app/immutable/chunks/Dl3gtmRH.js +0 -1
  926. package/studio/client/_app/immutable/chunks/Dl3gtmRH.js.br +0 -0
  927. package/studio/client/_app/immutable/chunks/Dl3gtmRH.js.gz +0 -0
  928. package/studio/client/_app/immutable/chunks/Du09UsT_.js +0 -1
  929. package/studio/client/_app/immutable/chunks/Du09UsT_.js.br +0 -0
  930. package/studio/client/_app/immutable/chunks/Du09UsT_.js.gz +0 -0
  931. package/studio/client/_app/immutable/chunks/Duawn2EX.js +0 -1
  932. package/studio/client/_app/immutable/chunks/Duawn2EX.js.br +0 -0
  933. package/studio/client/_app/immutable/chunks/Duawn2EX.js.gz +0 -0
  934. package/studio/client/_app/immutable/chunks/DxbwWMuJ.js +0 -1
  935. package/studio/client/_app/immutable/chunks/DxbwWMuJ.js.br +0 -0
  936. package/studio/client/_app/immutable/chunks/DxbwWMuJ.js.gz +0 -0
  937. package/studio/client/_app/immutable/chunks/DzMyNXK1.js +0 -5
  938. package/studio/client/_app/immutable/chunks/DzMyNXK1.js.br +0 -0
  939. package/studio/client/_app/immutable/chunks/DzMyNXK1.js.gz +0 -0
  940. package/studio/client/_app/immutable/chunks/K82XSOze.js +0 -1
  941. package/studio/client/_app/immutable/chunks/K82XSOze.js.br +0 -0
  942. package/studio/client/_app/immutable/chunks/K82XSOze.js.gz +0 -0
  943. package/studio/client/_app/immutable/chunks/LegOngm6.js +0 -92
  944. package/studio/client/_app/immutable/chunks/LegOngm6.js.br +0 -0
  945. package/studio/client/_app/immutable/chunks/LegOngm6.js.gz +0 -0
  946. package/studio/client/_app/immutable/chunks/QUVFwVNg.js +0 -1
  947. package/studio/client/_app/immutable/chunks/QUVFwVNg.js.br +0 -0
  948. package/studio/client/_app/immutable/chunks/QUVFwVNg.js.gz +0 -0
  949. package/studio/client/_app/immutable/chunks/UzmbP4fJ.js +0 -1
  950. package/studio/client/_app/immutable/chunks/UzmbP4fJ.js.br +0 -0
  951. package/studio/client/_app/immutable/chunks/UzmbP4fJ.js.gz +0 -0
  952. package/studio/client/_app/immutable/chunks/WVZkyfqK.js +0 -1
  953. package/studio/client/_app/immutable/chunks/WVZkyfqK.js.br +0 -0
  954. package/studio/client/_app/immutable/chunks/WVZkyfqK.js.gz +0 -0
  955. package/studio/client/_app/immutable/chunks/lmiZGmp5.js +0 -1
  956. package/studio/client/_app/immutable/chunks/lmiZGmp5.js.br +0 -0
  957. package/studio/client/_app/immutable/chunks/lmiZGmp5.js.gz +0 -0
  958. package/studio/client/_app/immutable/chunks/t2OI8QCJ.js +0 -2
  959. package/studio/client/_app/immutable/chunks/t2OI8QCJ.js.br +0 -0
  960. package/studio/client/_app/immutable/chunks/t2OI8QCJ.js.gz +0 -0
  961. package/studio/client/_app/immutable/entry/app.ZJxo7olm.js +0 -2
  962. package/studio/client/_app/immutable/entry/app.ZJxo7olm.js.br +0 -0
  963. package/studio/client/_app/immutable/entry/app.ZJxo7olm.js.gz +0 -0
  964. package/studio/client/_app/immutable/entry/start.8QDn_ECL.js +0 -1
  965. package/studio/client/_app/immutable/entry/start.8QDn_ECL.js.br +0 -0
  966. package/studio/client/_app/immutable/entry/start.8QDn_ECL.js.gz +0 -0
  967. package/studio/client/_app/immutable/nodes/0.adNFkwFE.js +0 -2
  968. package/studio/client/_app/immutable/nodes/0.adNFkwFE.js.br +0 -0
  969. package/studio/client/_app/immutable/nodes/0.adNFkwFE.js.gz +0 -0
  970. package/studio/client/_app/immutable/nodes/1.BWNv6Cb_.js +0 -1
  971. package/studio/client/_app/immutable/nodes/1.BWNv6Cb_.js.br +0 -0
  972. package/studio/client/_app/immutable/nodes/1.BWNv6Cb_.js.gz +0 -0
  973. package/studio/client/_app/immutable/nodes/10.CczwW3Jo.js +0 -1
  974. package/studio/client/_app/immutable/nodes/10.CczwW3Jo.js.br +0 -0
  975. package/studio/client/_app/immutable/nodes/10.CczwW3Jo.js.gz +0 -0
  976. package/studio/client/_app/immutable/nodes/11.DLp4Fbp3.js +0 -1
  977. package/studio/client/_app/immutable/nodes/11.DLp4Fbp3.js.br +0 -0
  978. package/studio/client/_app/immutable/nodes/11.DLp4Fbp3.js.gz +0 -0
  979. package/studio/client/_app/immutable/nodes/12.4rh6TzEf.js +0 -2
  980. package/studio/client/_app/immutable/nodes/12.4rh6TzEf.js.br +0 -0
  981. package/studio/client/_app/immutable/nodes/12.4rh6TzEf.js.gz +0 -0
  982. package/studio/client/_app/immutable/nodes/13.Dz4al1DL.js +0 -1
  983. package/studio/client/_app/immutable/nodes/13.Dz4al1DL.js.br +0 -0
  984. package/studio/client/_app/immutable/nodes/13.Dz4al1DL.js.gz +0 -0
  985. package/studio/client/_app/immutable/nodes/14.Bl81Dygj.js +0 -1
  986. package/studio/client/_app/immutable/nodes/14.Bl81Dygj.js.br +0 -0
  987. package/studio/client/_app/immutable/nodes/14.Bl81Dygj.js.gz +0 -0
  988. package/studio/client/_app/immutable/nodes/15.gG909oU9.js +0 -1
  989. package/studio/client/_app/immutable/nodes/15.gG909oU9.js.br +0 -0
  990. package/studio/client/_app/immutable/nodes/15.gG909oU9.js.gz +0 -0
  991. package/studio/client/_app/immutable/nodes/16.7V_UKKuG.js +0 -8
  992. package/studio/client/_app/immutable/nodes/16.7V_UKKuG.js.br +0 -0
  993. package/studio/client/_app/immutable/nodes/16.7V_UKKuG.js.gz +0 -0
  994. package/studio/client/_app/immutable/nodes/17.Cz647w46.js +0 -1
  995. package/studio/client/_app/immutable/nodes/17.Cz647w46.js.br +0 -0
  996. package/studio/client/_app/immutable/nodes/17.Cz647w46.js.gz +0 -0
  997. package/studio/client/_app/immutable/nodes/18.BCZi6A5-.js +0 -1
  998. package/studio/client/_app/immutable/nodes/18.BCZi6A5-.js.br +0 -0
  999. package/studio/client/_app/immutable/nodes/18.BCZi6A5-.js.gz +0 -0
  1000. package/studio/client/_app/immutable/nodes/19.DoglPV3k.js +0 -1
  1001. package/studio/client/_app/immutable/nodes/19.DoglPV3k.js.br +0 -0
  1002. package/studio/client/_app/immutable/nodes/19.DoglPV3k.js.gz +0 -0
  1003. package/studio/client/_app/immutable/nodes/20.DGbcSpHq.js +0 -45
  1004. package/studio/client/_app/immutable/nodes/20.DGbcSpHq.js.br +0 -0
  1005. package/studio/client/_app/immutable/nodes/20.DGbcSpHq.js.gz +0 -0
  1006. package/studio/client/_app/immutable/nodes/21.CdVcKzDq.js +0 -16
  1007. package/studio/client/_app/immutable/nodes/21.CdVcKzDq.js.br +0 -0
  1008. package/studio/client/_app/immutable/nodes/21.CdVcKzDq.js.gz +0 -0
  1009. package/studio/client/_app/immutable/nodes/28.lF0IrCqU.js +0 -8
  1010. package/studio/client/_app/immutable/nodes/28.lF0IrCqU.js.br +0 -0
  1011. package/studio/client/_app/immutable/nodes/28.lF0IrCqU.js.gz +0 -0
  1012. package/studio/client/_app/immutable/nodes/3.C1mJzj4n.js +0 -1
  1013. package/studio/client/_app/immutable/nodes/3.C1mJzj4n.js.br +0 -0
  1014. package/studio/client/_app/immutable/nodes/3.C1mJzj4n.js.gz +0 -0
  1015. package/studio/client/_app/immutable/nodes/30.BvTn5fYt.js +0 -26
  1016. package/studio/client/_app/immutable/nodes/30.BvTn5fYt.js.br +0 -0
  1017. package/studio/client/_app/immutable/nodes/30.BvTn5fYt.js.gz +0 -0
  1018. package/studio/client/_app/immutable/nodes/38.CX0Z5dJm.js +0 -1
  1019. package/studio/client/_app/immutable/nodes/38.CX0Z5dJm.js.br +0 -0
  1020. package/studio/client/_app/immutable/nodes/38.CX0Z5dJm.js.gz +0 -0
  1021. package/studio/client/_app/immutable/nodes/39.CRxr2YQ6.js +0 -87
  1022. package/studio/client/_app/immutable/nodes/39.CRxr2YQ6.js.br +0 -0
  1023. package/studio/client/_app/immutable/nodes/39.CRxr2YQ6.js.gz +0 -0
  1024. package/studio/client/_app/immutable/nodes/4.YfreNTfv.js +0 -1
  1025. package/studio/client/_app/immutable/nodes/4.YfreNTfv.js.br +0 -1
  1026. package/studio/client/_app/immutable/nodes/4.YfreNTfv.js.gz +0 -0
  1027. package/studio/client/_app/immutable/nodes/41.JtyATqrM.js +0 -1
  1028. package/studio/client/_app/immutable/nodes/41.JtyATqrM.js.br +0 -0
  1029. package/studio/client/_app/immutable/nodes/41.JtyATqrM.js.gz +0 -0
  1030. package/studio/client/_app/immutable/nodes/42.XO5VZAmI.js +0 -1
  1031. package/studio/client/_app/immutable/nodes/42.XO5VZAmI.js.br +0 -0
  1032. package/studio/client/_app/immutable/nodes/42.XO5VZAmI.js.gz +0 -0
  1033. package/studio/client/_app/immutable/nodes/43.CWpVKGhz.js +0 -1
  1034. package/studio/client/_app/immutable/nodes/43.CWpVKGhz.js.br +0 -0
  1035. package/studio/client/_app/immutable/nodes/43.CWpVKGhz.js.gz +0 -0
  1036. package/studio/client/_app/immutable/nodes/44.DX64rKI7.js +0 -1
  1037. package/studio/client/_app/immutable/nodes/44.DX64rKI7.js.br +0 -0
  1038. package/studio/client/_app/immutable/nodes/44.DX64rKI7.js.gz +0 -0
  1039. package/studio/client/_app/immutable/nodes/45.mLQWUOa5.js +0 -2
  1040. package/studio/client/_app/immutable/nodes/45.mLQWUOa5.js.br +0 -0
  1041. package/studio/client/_app/immutable/nodes/45.mLQWUOa5.js.gz +0 -0
  1042. package/studio/client/_app/immutable/nodes/46.KA353oiQ.js +0 -1
  1043. package/studio/client/_app/immutable/nodes/46.KA353oiQ.js.br +0 -0
  1044. package/studio/client/_app/immutable/nodes/46.KA353oiQ.js.gz +0 -0
  1045. package/studio/client/_app/immutable/nodes/47.D3mABDjY.js +0 -1
  1046. package/studio/client/_app/immutable/nodes/47.D3mABDjY.js.br +0 -0
  1047. package/studio/client/_app/immutable/nodes/47.D3mABDjY.js.gz +0 -0
  1048. package/studio/client/_app/immutable/nodes/48.BwjQpQnt.js +0 -1
  1049. package/studio/client/_app/immutable/nodes/48.BwjQpQnt.js.br +0 -0
  1050. package/studio/client/_app/immutable/nodes/48.BwjQpQnt.js.gz +0 -0
  1051. package/studio/client/_app/immutable/nodes/49.EaoBcCzE.js +0 -7
  1052. package/studio/client/_app/immutable/nodes/49.EaoBcCzE.js.br +0 -0
  1053. package/studio/client/_app/immutable/nodes/49.EaoBcCzE.js.gz +0 -0
  1054. package/studio/client/_app/immutable/nodes/5.YfreNTfv.js +0 -1
  1055. package/studio/client/_app/immutable/nodes/5.YfreNTfv.js.br +0 -1
  1056. package/studio/client/_app/immutable/nodes/5.YfreNTfv.js.gz +0 -0
  1057. package/studio/client/_app/immutable/nodes/7.pzlwJNWY.js +0 -1
  1058. package/studio/client/_app/immutable/nodes/7.pzlwJNWY.js.br +0 -0
  1059. package/studio/client/_app/immutable/nodes/7.pzlwJNWY.js.gz +0 -0
  1060. package/studio/client/_app/immutable/nodes/8.COxVG2uL.js +0 -1
  1061. package/studio/client/_app/immutable/nodes/8.COxVG2uL.js.br +0 -0
  1062. package/studio/client/_app/immutable/nodes/8.COxVG2uL.js.gz +0 -0
  1063. package/studio/client/_app/immutable/nodes/9.DEUtbL1G.js +0 -1
  1064. package/studio/client/_app/immutable/nodes/9.DEUtbL1G.js.br +0 -0
  1065. package/studio/client/_app/immutable/nodes/9.DEUtbL1G.js.gz +0 -0
  1066. package/studio/server/chunks/0-oFoj6xob.js +0 -32
  1067. package/studio/server/chunks/0-oFoj6xob.js.map +0 -1
  1068. package/studio/server/chunks/1-BZOYuQnd.js +0 -9
  1069. package/studio/server/chunks/1-BZOYuQnd.js.map +0 -1
  1070. package/studio/server/chunks/11-BDyz7OWy.js +0 -9
  1071. package/studio/server/chunks/11-BDyz7OWy.js.map +0 -1
  1072. package/studio/server/chunks/12-DCVWOw1E.js +0 -9
  1073. package/studio/server/chunks/12-DCVWOw1E.js.map +0 -1
  1074. package/studio/server/chunks/13-D5eVPcWI.js +0 -59
  1075. package/studio/server/chunks/13-D5eVPcWI.js.map +0 -1
  1076. package/studio/server/chunks/14-DLN4rZiK.js +0 -60
  1077. package/studio/server/chunks/14-DLN4rZiK.js.map +0 -1
  1078. package/studio/server/chunks/15-D3vqObtU.js +0 -9
  1079. package/studio/server/chunks/15-D3vqObtU.js.map +0 -1
  1080. package/studio/server/chunks/16-B80xfxth.js +0 -72
  1081. package/studio/server/chunks/16-B80xfxth.js.map +0 -1
  1082. package/studio/server/chunks/17-BHuReO4a.js +0 -9
  1083. package/studio/server/chunks/17-BHuReO4a.js.map +0 -1
  1084. package/studio/server/chunks/18-wt-l6gKd.js +0 -9
  1085. package/studio/server/chunks/18-wt-l6gKd.js.map +0 -1
  1086. package/studio/server/chunks/19-CM1TK59H.js +0 -9
  1087. package/studio/server/chunks/19-CM1TK59H.js.map +0 -1
  1088. package/studio/server/chunks/20-l1HA1gZm.js +0 -138
  1089. package/studio/server/chunks/20-l1HA1gZm.js.map +0 -1
  1090. package/studio/server/chunks/3-CzCasqaG.js +0 -9
  1091. package/studio/server/chunks/3-CzCasqaG.js.map +0 -1
  1092. package/studio/server/chunks/4-CI_t25RD.js +0 -9
  1093. package/studio/server/chunks/4-CI_t25RD.js.map +0 -1
  1094. package/studio/server/chunks/42-P_ROr-Kz.js +0 -56
  1095. package/studio/server/chunks/42-P_ROr-Kz.js.map +0 -1
  1096. package/studio/server/chunks/43-DjsPMRbC.js +0 -9
  1097. package/studio/server/chunks/43-DjsPMRbC.js.map +0 -1
  1098. package/studio/server/chunks/44-Bja0V2qT.js +0 -9
  1099. package/studio/server/chunks/44-Bja0V2qT.js.map +0 -1
  1100. package/studio/server/chunks/45-ClLo6O3h.js +0 -114
  1101. package/studio/server/chunks/45-ClLo6O3h.js.map +0 -1
  1102. package/studio/server/chunks/49-1-oQCIAS.js +0 -14
  1103. package/studio/server/chunks/49-1-oQCIAS.js.map +0 -1
  1104. package/studio/server/chunks/5-rt2C_t_3.js +0 -9
  1105. package/studio/server/chunks/5-rt2C_t_3.js.map +0 -1
  1106. package/studio/server/chunks/7-bEHSOvc4.js +0 -215
  1107. package/studio/server/chunks/7-bEHSOvc4.js.map +0 -1
  1108. package/studio/server/chunks/_error.svelte-DVRBaDbx.js +0 -98
  1109. package/studio/server/chunks/_error.svelte-DVRBaDbx.js.map +0 -1
  1110. package/studio/server/chunks/_error.svelte-Dt8wv2eu.js +0 -98
  1111. package/studio/server/chunks/_error.svelte-Dt8wv2eu.js.map +0 -1
  1112. package/studio/server/chunks/_layout.svelte-55nnwb0N.js +0 -400
  1113. package/studio/server/chunks/_layout.svelte-55nnwb0N.js.map +0 -1
  1114. package/studio/server/chunks/_layout.svelte-BL7PMde9.js +0 -64
  1115. package/studio/server/chunks/_layout.svelte-BL7PMde9.js.map +0 -1
  1116. package/studio/server/chunks/_layout.svelte-BtEadWQB.js +0 -64
  1117. package/studio/server/chunks/_layout.svelte-BtEadWQB.js.map +0 -1
  1118. package/studio/server/chunks/_layout.svelte-CfDTUogU.js +0 -1054
  1119. package/studio/server/chunks/_layout.svelte-CfDTUogU.js.map +0 -1
  1120. package/studio/server/chunks/_page.svelte-B-1o9Tva.js +0 -506
  1121. package/studio/server/chunks/_page.svelte-B-1o9Tva.js.map +0 -1
  1122. package/studio/server/chunks/_page.svelte-B93-TmZo.js +0 -160
  1123. package/studio/server/chunks/_page.svelte-B93-TmZo.js.map +0 -1
  1124. package/studio/server/chunks/_page.svelte-BqwbRDzJ.js +0 -1731
  1125. package/studio/server/chunks/_page.svelte-BqwbRDzJ.js.map +0 -1
  1126. package/studio/server/chunks/_page.svelte-CWrqBxDM.js +0 -1021
  1127. package/studio/server/chunks/_page.svelte-CWrqBxDM.js.map +0 -1
  1128. package/studio/server/chunks/_page.svelte-Cg5sXfnK.js +0 -111
  1129. package/studio/server/chunks/_page.svelte-Cg5sXfnK.js.map +0 -1
  1130. package/studio/server/chunks/_page.svelte-CvEkB4SR.js +0 -319
  1131. package/studio/server/chunks/_page.svelte-CvEkB4SR.js.map +0 -1
  1132. package/studio/server/chunks/_page.svelte-D5uSaQ_6.js +0 -256
  1133. package/studio/server/chunks/_page.svelte-D5uSaQ_6.js.map +0 -1
  1134. package/studio/server/chunks/_page.svelte-D6XGPiAL.js +0 -79
  1135. package/studio/server/chunks/_page.svelte-D6XGPiAL.js.map +0 -1
  1136. package/studio/server/chunks/_page.svelte-DAyju3rn.js +0 -113
  1137. package/studio/server/chunks/_page.svelte-DAyju3rn.js.map +0 -1
  1138. package/studio/server/chunks/_page.svelte-Dxd9_9zA.js +0 -418
  1139. package/studio/server/chunks/_page.svelte-Dxd9_9zA.js.map +0 -1
  1140. package/studio/server/chunks/_page.svelte-GHdQM1UB.js +0 -191
  1141. package/studio/server/chunks/_page.svelte-GHdQM1UB.js.map +0 -1
  1142. package/studio/server/chunks/_page.svelte-axu5NW2S.js +0 -11053
  1143. package/studio/server/chunks/_page.svelte-axu5NW2S.js.map +0 -1
  1144. package/studio/server/chunks/_server.ts-5MqnJlEk.js +0 -87
  1145. package/studio/server/chunks/_server.ts-5MqnJlEk.js.map +0 -1
  1146. package/studio/server/chunks/_server.ts-6KoXdftM.js +0 -70
  1147. package/studio/server/chunks/_server.ts-6KoXdftM.js.map +0 -1
  1148. package/studio/server/chunks/_server.ts-BPbGZeLb.js +0 -718
  1149. package/studio/server/chunks/_server.ts-BPbGZeLb.js.map +0 -1
  1150. package/studio/server/chunks/_server.ts-BQiH-pDg.js +0 -79
  1151. package/studio/server/chunks/_server.ts-BQiH-pDg.js.map +0 -1
  1152. package/studio/server/chunks/_server.ts-BYd-I1tc.js +0 -41
  1153. package/studio/server/chunks/_server.ts-BYd-I1tc.js.map +0 -1
  1154. package/studio/server/chunks/_server.ts-BryF-BNZ.js +0 -96
  1155. package/studio/server/chunks/_server.ts-BryF-BNZ.js.map +0 -1
  1156. package/studio/server/chunks/_server.ts-C5J0RS2-.js +0 -117
  1157. package/studio/server/chunks/_server.ts-C5J0RS2-.js.map +0 -1
  1158. package/studio/server/chunks/_server.ts-CTCmDBMr.js +0 -49
  1159. package/studio/server/chunks/_server.ts-CTCmDBMr.js.map +0 -1
  1160. package/studio/server/chunks/_server.ts-CXM9soU9.js +0 -34
  1161. package/studio/server/chunks/_server.ts-CXM9soU9.js.map +0 -1
  1162. package/studio/server/chunks/_server.ts-CbZYXLYW.js +0 -56
  1163. package/studio/server/chunks/_server.ts-CbZYXLYW.js.map +0 -1
  1164. package/studio/server/chunks/_server.ts-CtiogpOk.js +0 -302
  1165. package/studio/server/chunks/_server.ts-CtiogpOk.js.map +0 -1
  1166. package/studio/server/chunks/_server.ts-D75v2LAN.js +0 -52
  1167. package/studio/server/chunks/_server.ts-D75v2LAN.js.map +0 -1
  1168. package/studio/server/chunks/_server.ts-DANOf9Kg.js +0 -158
  1169. package/studio/server/chunks/_server.ts-DANOf9Kg.js.map +0 -1
  1170. package/studio/server/chunks/_server.ts-DF0SCYmL.js +0 -48
  1171. package/studio/server/chunks/_server.ts-DF0SCYmL.js.map +0 -1
  1172. package/studio/server/chunks/_server.ts-DrkT4gOl.js +0 -121
  1173. package/studio/server/chunks/_server.ts-DrkT4gOl.js.map +0 -1
  1174. package/studio/server/chunks/_server.ts-DscCNgaG.js +0 -87
  1175. package/studio/server/chunks/_server.ts-DscCNgaG.js.map +0 -1
  1176. package/studio/server/chunks/_server.ts-Duz2jodQ.js +0 -22
  1177. package/studio/server/chunks/_server.ts-Duz2jodQ.js.map +0 -1
  1178. package/studio/server/chunks/_server.ts-K-RN8Vah.js +0 -684
  1179. package/studio/server/chunks/_server.ts-K-RN8Vah.js.map +0 -1
  1180. package/studio/server/chunks/_server.ts-OkHzpWAg.js +0 -68
  1181. package/studio/server/chunks/_server.ts-OkHzpWAg.js.map +0 -1
  1182. package/studio/server/chunks/_server.ts-T7wyJ0On.js +0 -58
  1183. package/studio/server/chunks/_server.ts-T7wyJ0On.js.map +0 -1
  1184. package/studio/server/chunks/_server.ts-XWBoVSBG.js +0 -232
  1185. package/studio/server/chunks/_server.ts-XWBoVSBG.js.map +0 -1
  1186. package/studio/server/chunks/_server.ts-liWNn8pd.js +0 -91
  1187. package/studio/server/chunks/_server.ts-liWNn8pd.js.map +0 -1
  1188. package/studio/server/chunks/_server.ts-wjU8lnxc.js +0 -108
  1189. package/studio/server/chunks/_server.ts-wjU8lnxc.js.map +0 -1
  1190. package/studio/server/chunks/_server.ts-xBWWvyW7.js +0 -60
  1191. package/studio/server/chunks/_server.ts-xBWWvyW7.js.map +0 -1
  1192. package/studio/server/chunks/adapter-B-i_4tnk.js +0 -91
  1193. package/studio/server/chunks/adapter-B-i_4tnk.js.map +0 -1
  1194. package/studio/server/chunks/admin.remote-5orFS4k1.js +0 -105
  1195. package/studio/server/chunks/admin.remote-5orFS4k1.js.map +0 -1
  1196. package/studio/server/chunks/ai-access-C-qFWKe-.js +0 -282
  1197. package/studio/server/chunks/ai-access-C-qFWKe-.js.map +0 -1
  1198. package/studio/server/chunks/ai.remote-Da4JRO59.js +0 -37
  1199. package/studio/server/chunks/ai.remote-Da4JRO59.js.map +0 -1
  1200. package/studio/server/chunks/alert-dialog-description-DOMGfPke.js +0 -578
  1201. package/studio/server/chunks/alert-dialog-description-DOMGfPke.js.map +0 -1
  1202. package/studio/server/chunks/animation-DPwINa4I.js +0 -2892
  1203. package/studio/server/chunks/animation-DPwINa4I.js.map +0 -1
  1204. package/studio/server/chunks/api-DkajkFtS.js +0 -434
  1205. package/studio/server/chunks/api-DkajkFtS.js.map +0 -1
  1206. package/studio/server/chunks/api-keys-D9bbxRhK.js +0 -117
  1207. package/studio/server/chunks/api-keys-D9bbxRhK.js.map +0 -1
  1208. package/studio/server/chunks/api-keys.remote-CN4CRiIA.js +0 -88
  1209. package/studio/server/chunks/api-keys.remote-CN4CRiIA.js.map +0 -1
  1210. package/studio/server/chunks/app-header-BfPEtjyC.js +0 -96
  1211. package/studio/server/chunks/app-header-BfPEtjyC.js.map +0 -1
  1212. package/studio/server/chunks/assets.remote-B8_mtYX6.js +0 -113
  1213. package/studio/server/chunks/assets.remote-B8_mtYX6.js.map +0 -1
  1214. package/studio/server/chunks/attribute-protocol-C_pjkekX.js +0 -151
  1215. package/studio/server/chunks/attribute-protocol-C_pjkekX.js.map +0 -1
  1216. package/studio/server/chunks/auth-CiWMo-Qu.js +0 -22472
  1217. package/studio/server/chunks/auth-CiWMo-Qu.js.map +0 -1
  1218. package/studio/server/chunks/auth.remote-C6edHyaa.js +0 -351
  1219. package/studio/server/chunks/auth.remote-C6edHyaa.js.map +0 -1
  1220. package/studio/server/chunks/base-Bq5n_4Fz.js +0 -210
  1221. package/studio/server/chunks/base-Bq5n_4Fz.js.map +0 -1
  1222. package/studio/server/chunks/bun-sqlite-dialect-C8OaCWSL-CsGahR4n.js +0 -197
  1223. package/studio/server/chunks/bun-sqlite-dialect-C8OaCWSL-CsGahR4n.js.map +0 -1
  1224. package/studio/server/chunks/captions.remote-BtVr9SZd.js +0 -184
  1225. package/studio/server/chunks/captions.remote-BtVr9SZd.js.map +0 -1
  1226. package/studio/server/chunks/client2-D2vZ7-eF.js +0 -66
  1227. package/studio/server/chunks/client2-D2vZ7-eF.js.map +0 -1
  1228. package/studio/server/chunks/d1-sqlite-dialect-sYHNqBte-ClSngqDL.js +0 -160
  1229. package/studio/server/chunks/d1-sqlite-dialect-sYHNqBte-ClSngqDL.js.map +0 -1
  1230. package/studio/server/chunks/desktop-bootstrap-C46aoZ6Z.js +0 -67
  1231. package/studio/server/chunks/desktop-bootstrap-C46aoZ6Z.js.map +0 -1
  1232. package/studio/server/chunks/dubbing.remote-DHGIYU_A.js +0 -153
  1233. package/studio/server/chunks/dubbing.remote-DHGIYU_A.js.map +0 -1
  1234. package/studio/server/chunks/editor.svelte-CiJvwHAm.js +0 -21024
  1235. package/studio/server/chunks/editor.svelte-CiJvwHAm.js.map +0 -1
  1236. package/studio/server/chunks/env-CsH9rG40.js +0 -91
  1237. package/studio/server/chunks/env-CsH9rG40.js.map +0 -1
  1238. package/studio/server/chunks/extract-audio.remote-D4Autpid.js +0 -95
  1239. package/studio/server/chunks/extract-audio.remote-D4Autpid.js.map +0 -1
  1240. package/studio/server/chunks/feedback.remote-CfdjHpdW.js +0 -49
  1241. package/studio/server/chunks/feedback.remote-CfdjHpdW.js.map +0 -1
  1242. package/studio/server/chunks/fs-project-BLLGFRv1.js +0 -134
  1243. package/studio/server/chunks/fs-project-BLLGFRv1.js.map +0 -1
  1244. package/studio/server/chunks/generate-speech-BERLu-Vk.js +0 -536
  1245. package/studio/server/chunks/generate-speech-BERLu-Vk.js.map +0 -1
  1246. package/studio/server/chunks/hooks.server-MEVEsSA9.js +0 -309
  1247. package/studio/server/chunks/hooks.server-MEVEsSA9.js.map +0 -1
  1248. package/studio/server/chunks/html-parser-LopZIqoS.js +0 -8516
  1249. package/studio/server/chunks/html-parser-LopZIqoS.js.map +0 -1
  1250. package/studio/server/chunks/html-writer-Ea_4f8hT.js +0 -242
  1251. package/studio/server/chunks/html-writer-Ea_4f8hT.js.map +0 -1
  1252. package/studio/server/chunks/index-CBGGzszt.js +0 -4578
  1253. package/studio/server/chunks/index-CBGGzszt.js.map +0 -1
  1254. package/studio/server/chunks/index12-C5zKPozR.js +0 -265
  1255. package/studio/server/chunks/index12-C5zKPozR.js.map +0 -1
  1256. package/studio/server/chunks/index2-e2qJOUJ5.js +0 -23
  1257. package/studio/server/chunks/index2-e2qJOUJ5.js.map +0 -1
  1258. package/studio/server/chunks/index3-akRvPp-y.js +0 -8
  1259. package/studio/server/chunks/index3-akRvPp-y.js.map +0 -1
  1260. package/studio/server/chunks/index4-CowumPcw.js +0 -48
  1261. package/studio/server/chunks/index4-CowumPcw.js.map +0 -1
  1262. package/studio/server/chunks/index6-92MPHdlt.js +0 -239
  1263. package/studio/server/chunks/index6-92MPHdlt.js.map +0 -1
  1264. package/studio/server/chunks/index8-zuJK-jFa.js +0 -44
  1265. package/studio/server/chunks/index8-zuJK-jFa.js.map +0 -1
  1266. package/studio/server/chunks/layout-template-BoNv9dF2.js +0 -1371
  1267. package/studio/server/chunks/layout-template-BoNv9dF2.js.map +0 -1
  1268. package/studio/server/chunks/lummi.remote-Bx8Vg0et.js +0 -215
  1269. package/studio/server/chunks/lummi.remote-Bx8Vg0et.js.map +0 -1
  1270. package/studio/server/chunks/media-ARIn6Aw1.js +0 -157
  1271. package/studio/server/chunks/media-ARIn6Aw1.js.map +0 -1
  1272. package/studio/server/chunks/media-analysis-GisyEkHY.js +0 -171
  1273. package/studio/server/chunks/media-analysis-GisyEkHY.js.map +0 -1
  1274. package/studio/server/chunks/media-analysis.remote-BzGY_HjI.js +0 -63
  1275. package/studio/server/chunks/media-analysis.remote-BzGY_HjI.js.map +0 -1
  1276. package/studio/server/chunks/middleware-CazuI_Wf.js +0 -72
  1277. package/studio/server/chunks/middleware-CazuI_Wf.js.map +0 -1
  1278. package/studio/server/chunks/mutation-schemas-DOtU1skD.js +0 -137
  1279. package/studio/server/chunks/mutation-schemas-DOtU1skD.js.map +0 -1
  1280. package/studio/server/chunks/mutations-6JWuU3s9.js +0 -503
  1281. package/studio/server/chunks/mutations-6JWuU3s9.js.map +0 -1
  1282. package/studio/server/chunks/node-sqlite-dialect-Q2OvDp9q.js +0 -197
  1283. package/studio/server/chunks/node-sqlite-dialect-Q2OvDp9q.js.map +0 -1
  1284. package/studio/server/chunks/onboarding-email-CHXOtnYq.js +0 -311
  1285. package/studio/server/chunks/onboarding-email-CHXOtnYq.js.map +0 -1
  1286. package/studio/server/chunks/optional-services-rI0rdA4P.js +0 -45
  1287. package/studio/server/chunks/optional-services-rI0rdA4P.js.map +0 -1
  1288. package/studio/server/chunks/pagination-JOJpLeOm.js +0 -159
  1289. package/studio/server/chunks/pagination-JOJpLeOm.js.map +0 -1
  1290. package/studio/server/chunks/posthog-DXw1m97H.js +0 -11
  1291. package/studio/server/chunks/posthog-DXw1m97H.js.map +0 -1
  1292. package/studio/server/chunks/presets-BKeKVq-L.js +0 -369
  1293. package/studio/server/chunks/presets-BKeKVq-L.js.map +0 -1
  1294. package/studio/server/chunks/project-layer-Bbz6zgRN.js +0 -28
  1295. package/studio/server/chunks/project-layer-Bbz6zgRN.js.map +0 -1
  1296. package/studio/server/chunks/projects.remote-Bzca0wLB.js +0 -297
  1297. package/studio/server/chunks/projects.remote-Bzca0wLB.js.map +0 -1
  1298. package/studio/server/chunks/queue-init-DUao6hhx.js +0 -38
  1299. package/studio/server/chunks/queue-init-DUao6hhx.js.map +0 -1
  1300. package/studio/server/chunks/registry-Cq-PY3D3.js +0 -16
  1301. package/studio/server/chunks/registry-Cq-PY3D3.js.map +0 -1
  1302. package/studio/server/chunks/registry2-BSIleFMP.js +0 -4851
  1303. package/studio/server/chunks/registry2-BSIleFMP.js.map +0 -1
  1304. package/studio/server/chunks/remote-148gj0t-CBE9iOwY.js +0 -14
  1305. package/studio/server/chunks/remote-148gj0t-CBE9iOwY.js.map +0 -1
  1306. package/studio/server/chunks/remote-1afl6ud-yFS1W6RH.js +0 -18
  1307. package/studio/server/chunks/remote-1afl6ud-yFS1W6RH.js.map +0 -1
  1308. package/studio/server/chunks/remote-1mi3j6d-COSwmla7.js +0 -21
  1309. package/studio/server/chunks/remote-1mi3j6d-COSwmla7.js.map +0 -1
  1310. package/studio/server/chunks/remote-1rjk8jv-C-ZOeAZr.js +0 -22
  1311. package/studio/server/chunks/remote-1rjk8jv-C-ZOeAZr.js.map +0 -1
  1312. package/studio/server/chunks/remote-1web5fy-Crw8BQuf.js +0 -30
  1313. package/studio/server/chunks/remote-1web5fy-Crw8BQuf.js.map +0 -1
  1314. package/studio/server/chunks/remote-5mu9ty-CiUcViXD.js +0 -31
  1315. package/studio/server/chunks/remote-5mu9ty-CiUcViXD.js.map +0 -1
  1316. package/studio/server/chunks/remote-aelvq6-BHLpqBRM.js +0 -26
  1317. package/studio/server/chunks/remote-aelvq6-BHLpqBRM.js.map +0 -1
  1318. package/studio/server/chunks/remote-em2k3w-BXLmObYN.js +0 -25
  1319. package/studio/server/chunks/remote-em2k3w-BXLmObYN.js.map +0 -1
  1320. package/studio/server/chunks/remote-gezfls-Cmzz6fWa.js +0 -21
  1321. package/studio/server/chunks/remote-gezfls-Cmzz6fWa.js.map +0 -1
  1322. package/studio/server/chunks/remote-lv3p1w-fkE1PB7N.js +0 -15
  1323. package/studio/server/chunks/remote-lv3p1w-fkE1PB7N.js.map +0 -1
  1324. package/studio/server/chunks/remote-ssr7vi-Cbv95MBE.js +0 -33
  1325. package/studio/server/chunks/remote-ssr7vi-Cbv95MBE.js.map +0 -1
  1326. package/studio/server/chunks/remote-sy19x7-BA_A5ekM.js +0 -29
  1327. package/studio/server/chunks/remote-sy19x7-BA_A5ekM.js.map +0 -1
  1328. package/studio/server/chunks/remote-tisyb0-CCv0922s.js +0 -31
  1329. package/studio/server/chunks/remote-tisyb0-CCv0922s.js.map +0 -1
  1330. package/studio/server/chunks/remote-xj8myv-CNAPSYMd.js +0 -31
  1331. package/studio/server/chunks/remote-xj8myv-CNAPSYMd.js.map +0 -1
  1332. package/studio/server/chunks/remote-z7lvth-Dddp33_7.js +0 -23
  1333. package/studio/server/chunks/remote-z7lvth-Dddp33_7.js.map +0 -1
  1334. package/studio/server/chunks/remote-zjib3m-CgmI2LZY.js +0 -24
  1335. package/studio/server/chunks/remote-zjib3m-CgmI2LZY.js.map +0 -1
  1336. package/studio/server/chunks/render-api-su0kZhxA.js +0 -240
  1337. package/studio/server/chunks/render-api-su0kZhxA.js.map +0 -1
  1338. package/studio/server/chunks/scrub-xyz.svelte_svelte_type_style_lang-DU6E-ve4.js +0 -4752
  1339. package/studio/server/chunks/scrub-xyz.svelte_svelte_type_style_lang-DU6E-ve4.js.map +0 -1
  1340. package/studio/server/chunks/subscription-CjEjoIFS.js +0 -138
  1341. package/studio/server/chunks/subscription-CjEjoIFS.js.map +0 -1
  1342. package/studio/server/chunks/subscription-limits-B7Q2pts9.js +0 -114
  1343. package/studio/server/chunks/subscription-limits-B7Q2pts9.js.map +0 -1
  1344. package/studio/server/chunks/template-usage.remote-DOFxtTHM.js +0 -53
  1345. package/studio/server/chunks/template-usage.remote-DOFxtTHM.js.map +0 -1
  1346. package/studio/server/chunks/thumbnail-queue-BrPRb6F7.js +0 -148
  1347. package/studio/server/chunks/thumbnail-queue-BrPRb6F7.js.map +0 -1
  1348. package/studio/server/chunks/tooltip-provider-BFZoIP02.js +0 -30
  1349. package/studio/server/chunks/tooltip-provider-BFZoIP02.js.map +0 -1
  1350. package/studio/server/chunks/tooltip.svelte-Bjv4TH3V.js +0 -658
  1351. package/studio/server/chunks/tooltip.svelte-Bjv4TH3V.js.map +0 -1
  1352. package/studio/server/chunks/tts.remote-yMAINgCv.js +0 -187
  1353. package/studio/server/chunks/tts.remote-yMAINgCv.js.map +0 -1
  1354. package/studio/server/chunks/ui.svelte-CpA5kqfc.js +0 -88
  1355. package/studio/server/chunks/ui.svelte-CpA5kqfc.js.map +0 -1
  1356. package/studio/server/chunks/upload-service-CC8E9Slo.js +0 -212
  1357. package/studio/server/chunks/upload-service-CC8E9Slo.js.map +0 -1
  1358. package/studio/server/chunks/upload.remote-RYslr_Ul.js +0 -131
  1359. package/studio/server/chunks/upload.remote-RYslr_Ul.js.map +0 -1
  1360. package/studio/server/chunks/video-generation.remote-CrPX-27G.js +0 -197
  1361. package/studio/server/chunks/video-generation.remote-CrPX-27G.js.map +0 -1
  1362. package/studio/server/chunks/video-renderer-CSVxoynk.js +0 -412
  1363. package/studio/server/chunks/video-renderer-CSVxoynk.js.map +0 -1
  1364. package/studio/server/chunks/watermark-R6qX4KkH.js +0 -164
  1365. package/studio/server/chunks/watermark-R6qX4KkH.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-KHs6y_Wc.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/(app)/chat/_server.ts.js"],"sourcesContent":["import { tool, ToolLoopAgent, convertToModelMessages } from \"ai\";\nimport { error, isHttpError } from \"@sveltejs/kit\";\nimport { env } from \"../../../../chunks/env.js\";\nimport { createOpenRouter } from \"@openrouter/ai-sdk-provider\";\nimport { z } from \"zod\";\nimport { p as projectDataSchema, P as ProjectSchema } from \"../../../../chunks/animation.js\";\nimport { M as MediaSegmentTypeSchema, a as analyzeAndSaveMediaAsset } from \"../../../../chunks/media-analysis.js\";\nimport { a as actionRegistry } from \"../../../../chunks/registry.js\";\nimport { U as UngroupLayersInputSchema, G as GroupLayersInputSchema, C as ConfigureProjectInputSchema, R as RemoveLayerInputSchema, a as UpsertLayerInputSchema, d as designPlaybookSection, p as presetCatalogSection, c as assetLibrarySection, e as assetProtocolSection, n as narrationWorkflowSection, v as voiceCatalogSection } from \"../../../../chunks/design-knowledge.js\";\nimport { d as dmElements, a as describeLayerAttributes } from \"../../../../chunks/attribute-protocol.js\";\nimport { c as canUserAccessAI, b as getModel, l as logAIUsage } from \"../../../../chunks/ai-access.js\";\nimport { existsSync, mkdirSync, writeFileSync } from \"fs\";\nimport { join } from \"path\";\nimport { t as trackEvent } from \"../../../../chunks/posthog.js\";\nimport { a as asset } from \"../../../../chunks/api.js\";\nimport { inArray, eq, desc } from \"drizzle-orm\";\nconst AnalyzeMediaInputSchema = z.object({\n layerId: z.string().describe(\n \"Video or audio layer ID or name to analyze. Sends media to multimodal AI for detailed scene-by-scene breakdown.\"\n ),\n context: z.string().optional().describe(\n 'Optional hint about content type (e.g., \"tech tutorial about React hooks\") to improve analysis accuracy'\n )\n});\nconst ComposeFromMediaInputSchema = z.object({\n layerId: z.string().describe(\n \"Source video/audio layer ID or name. Must have been analyzed with analyze_media first.\"\n ),\n mode: z.enum([\"keep-highlights\", \"remove-dead-space\", \"custom\"]).describe(\n \"Editing mode: keep-highlights = only highlight segments, remove-dead-space = everything except silence/filler, custom = filter by type or specify exact time ranges\"\n ),\n customSegments: z.array(\n z.object({\n sourceStart: z.number().min(0).describe(\"Start time in source media (seconds)\"),\n sourceEnd: z.number().min(0).describe(\"End time in source media (seconds)\"),\n label: z.string().optional().describe(\"Label for this segment (becomes layer name)\")\n })\n ).optional().describe('For \"custom\" mode: exact time ranges to keep from the source'),\n includeTypes: z.array(MediaSegmentTypeSchema).optional().describe(\n 'For \"custom\" mode: only keep segments of these types (e.g., [\"content\", \"highlight\"])'\n ),\n excludeTypes: z.array(MediaSegmentTypeSchema).optional().describe(\n 'For \"custom\" mode: remove segments of these types (e.g., [\"dead-space\", \"tangent\"])'\n ),\n gapBetweenSegments: z.number().min(0).max(5).default(0).describe(\"Gap between consecutive segments in the output timeline (seconds, default: 0)\")\n});\nconst RunActionInputSchema = z.object({\n layerId: z.string().optional().describe(\n \"Source layer ID or name. Required for: generate-captions, dub-audio, extract-audio, generate-speech. Omit for: generate-video.\"\n ),\n actionId: z.enum(Object.keys(actionRegistry)).describe(\n \"Action to run: \" + Object.values(actionRegistry).map((a) => `\"${a.id}\" — ${a.description}`).join(\" | \")\n ),\n params: z.record(z.string(), z.unknown()).optional().describe(\n 'Action-specific parameters. generate-captions: { language? (e.g., \"en\"), prompt? (context), position? (\"bottom\"|\"top\"|\"middle\"), mode? (\"highlight\"|\"single-word\"|\"typewriter\"|\"block\"), fontFamily?, fontSize?, fontWeight?, textColor?, bgColor?, textEffect? }. dub-audio: { targetLang (\"es\"|\"fr\"|\"de\"|\"it\"|\"pt\"|\"ru\"|\"ja\"|\"ko\"|\"zh\"|\"ar\"|\"hi\"|\"nl\"|\"pl\"|\"tr\"), sourceLang? }. extract-audio: no params needed. generate-video: { prompt (required, describe the video), duration? (4–15s, default 5), resolution? (\"480p\"|\"720p\"), generateAudio? (bool, default true) }. generate-image: { prompt (required, describe the image), aspect? (\"square\"|\"landscape\"|\"portrait\"), transparentBackground? (bool, for logos/cutouts) }. find-stock-image: { query (required, search terms), orientation? (\"square\"|\"horizontal\"|\"vertical\"), imageType? (\"photo\"|\"illustration\"|\"3d\") }. generate-speech: { text (required), voiceId (required — exact case-sensitive value from the TTS Voice Catalog), modelId? (eleven_v3|eleven_v3_turbo|eleven_multilingual_v2|eleven_turbo_v2_5|eleven_flash_v2_5), stability? (0–1), similarityBoost? (0–1) }.'\n )\n});\nconst animationTools = {\n upsert_layer: tool({\n description: `Create or modify a layer. All sizes/positions in % of project width (not pixels).\n- CREATE: omit layerId, provide layer {type, props}. Omitted props use schema defaults.\n- EDIT: pass layerId (from a previous upsert_layer/run_action response, or the layer name). Everything is a patch — provide only what changes. layer {type, props} only when changing props (type must match the target layer). Use animation.preset/keyframes to animate existing layers, including media layers added by run_action.\n\nExample — create a text title with fade-in:\n{\"name\":\"Title\",\"layer\":{\"type\":\"text\",\"props\":{\"content\":\"Hello\",\"fontSize\":4,\"color\":\"#ffffff\"}},\"transform\":{\"position\":{\"x\":0,\"y\":-20}},\"animation\":{\"preset\":{\"id\":\"fade-in\",\"startTime\":0,\"duration\":0.5}}}\n\nExample — retime an existing layer:\n{\"layerId\":\"abc123\",\"enterTime\":2,\"exitTime\":6,\"animation\":{\"preset\":{\"id\":\"fade-out\",\"startTime\":5.6,\"duration\":0.4}}}`,\n inputSchema: UpsertLayerInputSchema\n }),\n remove_layer: tool({\n description: \"Delete a layer by ID (from upsert_layer) or name.\",\n inputSchema: RemoveLayerInputSchema\n }),\n configure_project: tool({\n description: \"Set project name, dimensions (px), duration (s), or background (hex string or gradient object).\",\n inputSchema: ConfigureProjectInputSchema\n }),\n group_layers: tool({\n description: \"Group multiple layers into a folder. Transform/rotate/scale the group to affect all children together.\",\n inputSchema: GroupLayersInputSchema\n }),\n ungroup_layers: tool({\n description: \"Dissolve a group. Children become top-level; group transforms are baked into each child.\",\n inputSchema: UngroupLayersInputSchema\n }),\n run_action: tool({\n description: `Run an AI-powered media action:\n- generate-captions: Transcribe audio/video to synced captions layer. Needs layerId. Params: { language?, prompt?, position? \"bottom\"|\"top\"|\"middle\", mode? \"highlight\"|\"single-word\"|\"typewriter\"|\"block\", fontFamily?, fontSize?, fontWeight?, textColor?, bgColor?, textEffect?, textEffectColor?, textEffectSize?, transitionEffects?, transitionDuration? }\n- dub-audio: AI voice-clone dubbing into another language. Needs layerId. Params: { targetLang (required, e.g. \"es\"), sourceLang? }\n- extract-audio: Rip audio track from video. Needs layerId. No params.\n- generate-video: Seedance 2.0 text-to-video. No layerId. Params: { prompt (required), duration? 4–15s, resolution? \"480p\"|\"720p\", generateAudio? }\n- generate-image: AI text-to-image, saved as asset + image layer. No layerId. Params: { prompt (required), aspect? \"square\"|\"landscape\"|\"portrait\", transparentBackground? (logos/cutouts) }\n- find-stock-image: Search real stock photos (Lummi), import best match as asset + image layer with attribution. No layerId. Params: { query (required), orientation?, imageType? }. The response includes layersAdded[].props.src/fileKey for reuse.\n- generate-speech: ElevenLabs TTS synthesis. Needs layerId of an audio layer (create one first if needed). Params: { text (required), voiceId (required, exact case-sensitive value from the TTS Voice Catalog), modelId?, stability? 0–1, similarityBoost? 0–1 }\n\nSlow/credit-consuming actions (generate-video, generate-image, dub-audio, generate-speech) pause for user approval before running — the user sees the action and its inputs and can approve or deny.`,\n inputSchema: RunActionInputSchema,\n // Human-in-the-loop: expensive external API actions pause for user approval.\n // Flag lives on the action definition — single source for chat and any\n // future approval-aware surface.\n needsApproval: (input) => actionRegistry[input.actionId]?.requiresApproval ?? false\n }),\n compose_from_media: tool({\n description: `Split an analyzed video/audio into sequential segments. Requires analyze_media first.\n\nModes:\n- keep-highlights: only highlight segments\n- remove-dead-space: everything except silence/filler\n- custom: filter by segment type (includeTypes/excludeTypes) or exact time ranges (customSegments)\n\nSource layer is replaced by N sequential layers, each pointing to the same file with different contentOffset and timing. Add gapBetweenSegments for breathing room.`,\n inputSchema: ComposeFromMediaInputSchema\n })\n};\nfunction compactLayerPropsReference() {\n const lines = [];\n for (const entry of dmElements) {\n const { attributes } = describeLayerAttributes(entry.layerType, entry.contentProp);\n const parts = attributes.map((a) => {\n if (a.options?.length) return `${a.prop}[${a.options.join(\"|\")}]`;\n if (a.type === \"number\" && (a.min !== void 0 || a.max !== void 0)) {\n return `${a.prop}(num ${a.min ?? \"\"}…${a.max ?? \"\"})`;\n }\n return a.prop;\n });\n const content = entry.contentProp ? `${entry.contentProp}(text), ` : \"\";\n lines.push(`- ${entry.layerType}: ${content}${parts.join(\", \")}`);\n }\n return lines.join(\"\\n\");\n}\nconst fps = 30;\nconst name = \"Untitled Project\";\nconst width = 1280;\nconst height = 720;\nconst schemaVersion = 2;\nconst layers = [{ \"id\": \"random-id-1\", \"name\": \"Text\", \"type\": \"text\", \"props\": { \"color\": \"#ffffff\", \"width\": 31.25, \"content\": \"Creating\", \"fontSize\": 3.75, \"autoWidth\": true, \"textAlign\": \"center\", \"fontFamily\": \"Poppins\", \"fontWeight\": \"normal\" }, \"style\": { \"opacity\": 1 }, \"locked\": false, \"visible\": true, \"keyframes\": [{ \"id\": \"random-id-2\", \"time\": 0, \"value\": -5.27, \"property\": \"position.x\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in-out\" } }, { \"id\": \"random-id-3\", \"time\": 0, \"value\": 0, \"property\": \"position.y\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in-out\" } }, { \"id\": \"random-id-4\", \"time\": 0, \"value\": 0, \"property\": \"opacity\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in-out\" } }, { \"id\": \"random-id-5\", \"time\": 0, \"value\": 0.7, \"property\": \"scale.x\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in-out\" } }, { \"id\": \"random-id-5\", \"time\": 0, \"value\": 0.7, \"property\": \"scale.y\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in-out\" } }, { \"id\": \"random-id-6\", \"time\": 0, \"value\": \"Creating\", \"property\": \"props.content\", \"interpolation\": { \"family\": \"text\", \"strategy\": \"char-reveal\" } }, { \"id\": \"random-id-6\", \"time\": 0.625, \"value\": \"Creating\", \"property\": \"props.content\", \"interpolation\": { \"family\": \"text\", \"strategy\": \"word-reveal\", \"separator\": \" \" } }, { \"id\": \"random-id-7\", \"time\": 0.6278125, \"value\": 1, \"property\": \"scale.y\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in-out\" } }, { \"id\": \"random-id-8\", \"time\": 0.6278125, \"value\": 1, \"property\": \"scale.x\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in-out\" } }, { \"id\": \"random-id-9\", \"time\": 0.6278125, \"value\": -5.27, \"property\": \"position.x\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in-out\" } }, { \"id\": \"random-id-10\", \"time\": 1.0278125, \"value\": 1, \"property\": \"opacity\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in-out\" } }, { \"id\": \"random-id-11\", \"time\": 1.1840000000000008, \"value\": -24.27, \"property\": \"position.x\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in-out\" } }, { \"id\": \"random-id-12\", \"time\": 1.5478125, \"value\": \"Creating Motion design videos\", \"property\": \"props.content\", \"interpolation\": { \"family\": \"text\", \"strategy\": \"word-reveal\", \"separator\": \" \" } }, { \"id\": \"random-id-13\", \"time\": 1.7278125, \"value\": 1, \"property\": \"opacity\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in\" } }, { \"id\": \"random-id-14\", \"time\": 1.7278125, \"value\": 0, \"property\": \"position.y\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in-out\" } }, { \"id\": \"random-id-15\", \"time\": 2.4078125000000017, \"value\": 0, \"property\": \"opacity\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"linear\" } }, { \"id\": \"random-id-16\", \"time\": 2.4078125000000017, \"value\": 3.28, \"property\": \"position.y\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in-out\" } }], \"transform\": { \"scale\": { \"x\": 0.7, \"y\": 0.7 }, \"anchor\": \"center-left\", \"position\": { \"x\": 0, \"y\": 0, \"z\": 0 }, \"rotation\": { \"x\": 0, \"y\": 0, \"z\": 0 } } }, { \"id\": \"random-id-17\", \"name\": \"Text\", \"type\": \"text\", \"props\": { \"color\": \"#ffffff\", \"width\": 31.25, \"content\": \"is\", \"fontSize\": 3.75, \"autoWidth\": true, \"textAlign\": \"center\", \"fontFamily\": \"Poppins\", \"fontWeight\": \"normal\" }, \"style\": { \"opacity\": 1 }, \"locked\": false, \"visible\": true, \"exitTime\": 5.31, \"enterTime\": 2.4, \"keyframes\": [{ \"id\": \"random-id-18\", \"time\": 2.4378125, \"value\": 0, \"property\": \"opacity\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-out\" } }, { \"id\": \"random-id-19\", \"time\": 2.4478125, \"value\": \"is\", \"property\": \"props.content\", \"interpolation\": { \"family\": \"text\", \"strategy\": \"char-reveal\" } }, { \"id\": \"random-id-20\", \"time\": 2.4478125, \"value\": 0, \"property\": \"opacity\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-out\" } }, { \"id\": \"random-id-21\", \"time\": 2.8478125, \"value\": 1, \"property\": \"opacity\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"linear\" } }, { \"id\": \"random-id-22\", \"time\": 2.9378125, \"value\": 1, \"property\": \"opacity\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"linear\" } }, { \"id\": \"random-id-23\", \"time\": 4.7178125, \"value\": 1, \"property\": \"opacity\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"ease-in\" } }, { \"id\": \"random-id-24\", \"time\": 4.8478125, \"value\": \"is slow & boring\", \"property\": \"props.content\", \"interpolation\": { \"family\": \"text\", \"strategy\": \"char-reveal\" } }, { \"id\": \"random-id-25\", \"time\": 5.187812500000001, \"value\": 0, \"property\": \"opacity\", \"interpolation\": { \"family\": \"continuous\", \"strategy\": \"linear\" } }], \"transform\": { \"scale\": { \"x\": 1, \"y\": 1 }, \"anchor\": \"center\", \"position\": { \"x\": 0, \"y\": 0, \"z\": 0 }, \"rotation\": { \"x\": 0, \"y\": 0, \"z\": 0 } } }];\nconst duration = 10;\nconst background = { \"type\": \"linear\", \"angle\": 110, \"stops\": [{ \"color\": \"#c4f9ff\", \"position\": 11 }, { \"color\": \"#eec5f6\", \"position\": 42 }, { \"color\": \"#edb5fe\", \"position\": 72 }, { \"color\": \"#7bb7fd\", \"position\": 100 }] };\nconst fontFamily = \"Raleway\";\nconst goodExampleRaw = {\n fps,\n name,\n width,\n height,\n schemaVersion,\n layers,\n duration,\n background,\n fontFamily\n};\nconst exampleProject = projectDataSchema.parse(goodExampleRaw);\nfunction formatTimestamp(seconds) {\n const mins = Math.floor(seconds / 60);\n const secs = Math.round(seconds % 60);\n return `${mins}:${secs.toString().padStart(2, \"0\")}`;\n}\nfunction buildMediaContextSection(mediaContexts) {\n if (mediaContexts.length === 0) return \"\";\n const lines = [\"## Media in Project\\n\"];\n for (const media of mediaContexts) {\n lines.push(`### \"${media.layerName}\" (${media.layerType})`);\n if (!media.annotation) {\n lines.push(\"Not yet analyzed. Call **analyze_media** first.\\n\");\n continue;\n }\n const ann = media.annotation;\n lines.push(\n `Duration: ${formatTimestamp(ann.duration)} | Model: ${ann.modelUsed.split(\"/\").pop()}`\n );\n lines.push(`Summary: ${ann.summary}`);\n if (ann.topics.length > 0) {\n lines.push(`Topics: ${ann.topics.join(\", \")}`);\n }\n const typeCounts = {};\n for (const seg of ann.segments) {\n typeCounts[seg.type] = (typeCounts[seg.type] || 0) + 1;\n }\n const segSummary = Object.entries(typeCounts).map(([type, count]) => `${count} ${type}`).join(\", \");\n lines.push(`Segments: ${ann.segments.length} total (${segSummary})`);\n const highlights = ann.segments.filter((s) => s.type === \"highlight\");\n if (highlights.length > 0) {\n const hlTimes = highlights.map((h) => `${formatTimestamp(h.start)}-${formatTimestamp(h.end)}: ${h.label}`).join(\"; \");\n lines.push(`Highlights: ${hlTimes}`);\n }\n if (ann.suggestedCuts.length > 0) {\n const cuts = ann.suggestedCuts.map((c) => `${formatTimestamp(c.start)}-${formatTimestamp(c.end)} (${c.reason})`).join(\"; \");\n lines.push(`Suggested cuts: ${cuts}`);\n }\n lines.push(\"Segments detail:\");\n for (const seg of ann.segments) {\n lines.push(\n ` ${formatTimestamp(seg.start)}-${formatTimestamp(seg.end)} [${seg.type}] \"${seg.label}\" (energy:${seg.energy.toFixed(1)}, relevance:${seg.relevance.toFixed(1)})`\n );\n }\n lines.push(\"\");\n }\n return lines.join(\"\\n\");\n}\nfunction buildSystemPrompt(project, mediaContexts = [], assetLibrary = [], voices = []) {\n const halfHeightPct = Math.round(project.height / 2 / project.width * 100);\n const thirdHeightPct = Math.round(project.height / 3 / project.width * 100);\n const mediaContextSection = buildMediaContextSection(mediaContexts);\n return `You are a motion-graphics designer creating polished video animations.\n\n## Workflow\n\n- **Full video request**: Plan the scene (duration, layers, layout, animations), then execute all tool calls.\n- **Spot request** (add/edit one element): Skip planning — apply best practices and fulfill the ask directly.\n\nSteps for full requests: present brief plan → execute tools → confirm.\n\n## Coordinate System (CRITICAL)\n\nCanvas: ${project.width}x${project.height}px | Duration: ${project.duration}s | FPS: ${project.fps}\n\nALL positions, sizes, font sizes, radii, and stroke widths are **% of project width** (NOT pixels).\n- (0,0) = canvas center (with default positionOrigin: center)\n- X range: -50 (left edge) to +50 (right edge)\n- Y range: -${halfHeightPct} (top) to +${halfHeightPct} (bottom)\n- width:50 = half the canvas width\n- fontSize:4 = text ~4% of canvas width (e.g., ~29px on 720px canvas)\n- All percentage values scale proportionally regardless of canvas size\n\ntransform.positionOrigin: shifts the (0,0) reference point on the canvas.\nDefault \"center\" makes (0,0) the canvas center. Use \"top-left\" to make (0,0) the top-left corner.\n\n## Tools\n\n- **upsert_layer**: Create a layer (omit layerId; layer.type+props required) or patch-edit an existing one (pass layerId; provide only what changes, layer.type must match). Supports transform/style/timing and animation.preset/keyframes — use it to animate layers created by run_action too.\n- **remove_layer**: Delete layer by ID or name\n- **configure_project**: Set name, dimensions, duration, background\n- **group_layers** / **ungroup_layers**: Manage layer groups\n- **analyze_media**: Analyze video/audio via multimodal AI → transcript, segments, highlights, dead space, editing suggestions. Results persist on asset.\n- **compose_from_media**: Build edited cut from analyzed media. Modes: keep-highlights (keep only highlights), remove-dead-space (keep everything except silence/filler), custom (filter by segment type or exact time ranges).\n- **run_action**: AI-powered operations: generate-captions (transcribe audio→captions layer), dub-audio (AI voice cloning translation), extract-audio (rip audio from video), generate-video (Seedance 2.0 text→video), generate-image (AI text→image asset+layer), find-stock-image (real stock photo→asset+layer), generate-speech (ElevenLabs TTS).\n\n### Generated / Stock Media Workflow\n1. To get missing media, call **run_action** with actionId \"generate-image\", \"generate-video\", or \"find-stock-image\".\n2. The action creates the media layer for you. Use the returned layersAdded[].id for all subsequent edits.\n3. The returned layersAdded[].props contains the real media source (for images: props.src, props.fileKey, props.fileName, attribution). Treat those props as authoritative.\n4. Some actions update an existing layer instead of adding a new one. Use returned layersUpdated[].changes as authoritative for src/fileKey/contentDuration/timing after the action completes.\n5. Do not remove and recreate generated/stock media layers just to animate or resize them. Use **upsert_layer** with the returned layer ID and props/timing/transform/style/animation.\n6. Only create a new media layer manually when you already have a real src from the Asset Library, user attachment, user-provided URL, or a tool result.\n\n### Fade / Crossfade Rules\n- enterTime/exitTime only control hard visibility. They do NOT create fades.\n- For a fade-in, add opacity keyframes 0 → 1 over the fade window.\n- For a fade-out, add opacity keyframes 1 → 0 before exitTime.\n- For a crossfade, overlap the outgoing/incoming layers AND add opacity keyframes on both layers during the overlap.\n- Do not claim a layer fades or crossfades unless you created opacity keyframes or used a fade preset.\n\n### Media Editing Workflow\n1. Call **analyze_media** on a video/audio layer to get full analysis\n2. Review results and propose an editing strategy\n3. Call **compose_from_media** to split source into sequential segments\n4. Fine-tune segments with upsert_layer/remove_layer\n\n${designPlaybookSection()}\n\n### Backgrounds — capabilities\n- Gradients: linear (angle + color stops), radial, conic — multiple stops with transparency supported\n- Set project-wide background via configure_project (backgroundColor accepts hex string or gradient object)\n- For animated/ambient backgrounds, create shape layers with their own background property\n- Interpolation by property type: position/scale/opacity/rotation → continuous with easing;\n colors → continuous (RGB); text content (props.content) → text (char/word-reveal);\n booleans/enums → discrete (step-end/step-start/step-mid)\n\n${presetCatalogSection()}\n\n## Interpolation Reference\n\n- **continuous**: Smooth numeric/color transitions. Strategies: linear, ease-in, ease-out, ease-in-out, ease-in-quad, ease-out-quad, ease-in-out-quad, ease-in-back, ease-out-back, ease-in-bounce, ease-out-bounce, ease-in-elastic, ease-out-elastic\n- **discrete**: Instant jumps. Strategies: step-end (hold old value until keyframe), step-start (jump immediately), step-mid (jump at midpoint)\n- **quantized**: Smooth animation snapped to integers (strategy: integer) or grid (strategy: snap-grid + increment)\n- **text**: Character/word reveal (char-reveal, word-reveal). ONLY for props.content on text/terminal layers.\n\n## HTML Keyframe Syntax\n\nWhen editing HTML scenes directly, use \\`data-dm-keyframe-<property>\\` with\n\\`time:value@strategy\\`. The \\`@strategy\\` suffix maps to interpolation family:\n- \\`@ease-out\\`, \\`@ease-in-out\\`, etc. → continuous\n- \\`@step-start\\`, \\`@step-end\\`, \\`@step-mid\\` → discrete\n- \\`@integer\\`, \\`@snap-grid\\` → quantized (\\`snap-grid\\` uses \\`data-dm-grid-increment\\`)\n- \\`@char-reveal\\`, \\`@word-reveal\\` → text interpolation for \\`props.content\\`\n\nExamples:\n\\`data-dm-keyframe-opacity=\"0:0@ease-out; 0.5:1@ease-out\"\\`\n\\`data-dm-keyframe-props-content=\"0:@char-reveal; 1.4:Welcome@char-reveal\"\\`\n\\`data-dm-word-separator=\" \"\\` with \\`@word-reveal\\`\n\\`data-dm-grid-increment=\"0.25\"\\` with \\`@snap-grid\\`\n\nFor polished \\`dm-text\\` character/word reveals, add fragment transition attrs:\n\\`transition-effects=\"fade,slide-up,blur\"\\`, \\`transition-duration=\"350\"\\`,\n\\`transition-easing=\"ease-in-quad\"\\`, \\`slide-distance=\"2.7\"\\`,\n\\`scale-from=\"0.5\"\\`, \\`blur-amount=\"0.78\"\\`.\n\n## Layer Props (per type)\n\nUse these exact prop names with upsert_layer. Derived from the layer\nschemas — they are authoritative. \\`[a|b]\\` = allowed enum values; \\`(num lo…hi)\\`\n= numeric range. \\`(text)\\` props are also the element's child text in HTML.\n\n${compactLayerPropsReference()}\n\n## Transform Properties\n\nposition: { x, y, z } — in % of project width\nscale: { x, y } — multiplier (1 = normal)\nrotation: { x, y, z } — radians\nanchor: pivot point for transforms (top-left, top-center, top-right, center-left, center, center-right, bottom-left, bottom-center, bottom-right)\npositionOrigin: canvas reference for (0,0) — same values as anchor. Default \"center\" = (0,0) at canvas center.\n\n## Layout Guidelines\n\nThree-zone distribution on a ${project.width}x${project.height} canvas:\n- Title zone: y ≈ -${thirdHeightPct} (upper third)\n- Content zone: y ≈ 0 (center)\n- Footer zone: y ≈ +${thirdHeightPct} (lower third)\n\n${assetLibrarySection(assetLibrary)}\n\n${assetProtocolSection(\"chat\")}\n\n${narrationWorkflowSection(\"chat\")}\n\n${voiceCatalogSection(voices)}\n\n## Rules\n\n1. Plan first, then execute (skip planning for single-element requests)\n2. Always use rich, intentional backgrounds\n3. Every property value must be a deliberate choice\n4. Plain text only — no markdown formatting in responses\n5. Suggest analyze_media if project has unanalyzed video/audio layers\n6. Use layer IDs returned by upsert_layer for subsequent edit/remove calls\n7. Follow the Asset Rules — never fabricate media URLs; ask for or generate missing assets\n\n## Reference Example\n\nBelow is a valid project showing correct structure and percentage-based values.\nNote: the example shows fontSize as % of project width, positions as %, etc.\nUse it to understand the schema shape, not as a source of literal values.\n\n${JSON.stringify(exampleProject)}\n\n${mediaContextSection}`;\n}\nconst GenerateRequestSchema = z.object({\n project: ProjectSchema,\n modelId: z.string().describe(\"Model ID to use for generation\"),\n messages: z.array(z.custom())\n});\nconst MAX_IMAGE_SIZE = 200 * 1024;\nfunction getOpenRouterClient(userId, projectId) {\n if (env.DESKTOP_MODE) {\n throw new Error(\"Not supported in desktop mode\");\n }\n const apiKey = env.OPENROUTER_API_KEY;\n if (!apiKey) {\n throw new Error(\"OPENROUTER_API_KEY is not configured\");\n }\n return createOpenRouter({\n apiKey,\n ...env.HELINE_AUTH ? {\n baseURL: \"https://openrouter.helicone.ai/api/v1\",\n headers: {\n \"Helicone-Auth\": `Bearer ${env.HELINE_AUTH}`,\n \"Helicone-User-Id\": userId,\n \"Helicone-Property-Project\": projectId ?? \"\"\n }\n } : {}\n });\n}\nfunction logAIInteraction(data) {\n try {\n const logsDir = join(process.cwd(), \"logs\", \"ai-chat\");\n if (!existsSync(logsDir)) {\n mkdirSync(logsDir, { recursive: true });\n }\n const filename = `${data.timestamp.replace(/[:.]/g, \"-\")}.json`;\n const filepath = join(logsDir, filename);\n const logData = {\n timestamp: data.timestamp,\n model: {\n id: data.modelId,\n name: data.modelName\n },\n systemPrompt: {\n length: data.systemPromptLength\n },\n messages: data.userMessages.map((msg, idx) => {\n const content = JSON.stringify(msg);\n return {\n index: idx,\n role: msg.role,\n contentPreview: content.substring(0, 200) + (content.length > 200 ? \"...\" : \"\"),\n fullMessage: msg\n };\n }),\n toolCalls: data.toolCalls?.length ? {\n count: data.toolCalls.length,\n calls: data.toolCalls\n } : void 0,\n response: data.responseMessages?.length ? {\n messageCount: data.responseMessages.length,\n messages: data.responseMessages\n } : void 0,\n usage: data.usage\n };\n writeFileSync(filepath, JSON.stringify(logData, null, 2), \"utf-8\");\n console.log(`\n${\"=\".repeat(80)}`);\n console.log(`[AI Chat] ${data.timestamp}`);\n console.log(`${\"=\".repeat(80)}`);\n console.log(`Model: ${data.modelName} (${data.modelId})`);\n console.log(`System Prompt: ${data.systemPromptLength} chars`);\n console.log(`User Messages: ${data.userMessages.length}`);\n if (data.toolCalls?.length) {\n console.log(`Tool Calls: ${data.toolCalls.length}`);\n }\n if (data.usage) {\n console.log(\n `Tokens: ${data.usage.totalTokens || \"N/A\"} (input: ${data.usage.inputTokens || \"N/A\"}, output: ${data.usage.outputTokens || \"N/A\"})`\n );\n }\n console.log(`Log file: ${filepath}`);\n console.log(`${\"=\".repeat(80)}\n`);\n } catch (err) {\n console.error(\"[AI] Failed to log interaction:\", err);\n }\n}\nfunction validateImageSizes(messages) {\n for (const message of messages) {\n if (!message.parts) continue;\n for (const part of message.parts) {\n if (\"image\" in part && typeof part.image === \"string\") {\n const base64Data = part.image.split(\",\")[1];\n if (base64Data) {\n const sizeInBytes = Math.floor(base64Data.length * 3 / 4);\n if (sizeInBytes > MAX_IMAGE_SIZE) {\n error(\n 413,\n `Image size (${Math.round(sizeInBytes / 1024)}KB) exceeds maximum allowed size (${MAX_IMAGE_SIZE / 1024}KB)`\n );\n }\n }\n }\n }\n }\n}\nfunction filterImagesFromOldMessages(messages) {\n let lastImageMessageIndex = -1;\n for (let i = messages.length - 1; i >= 0; i--) {\n if (messages[i].role === \"user\" && messages[i].parts?.some((p) => p.type === \"file\")) {\n lastImageMessageIndex = i;\n break;\n }\n }\n return messages.map((msg, idx) => {\n if (msg.role !== \"user\" || idx === lastImageMessageIndex) {\n return msg;\n }\n const hasImage = msg.parts?.some((p) => p.type === \"file\");\n if (!hasImage) return msg;\n return {\n ...msg,\n parts: msg.parts?.map(\n (part) => part.type === \"file\" ? { type: \"text\", text: \"(image removed to reduce context size)\" } : part\n )\n };\n });\n}\nasync function getMediaContexts(project, db) {\n const mediaLayers = project.layers.filter((l) => l.type === \"video\" || l.type === \"audio\");\n if (mediaLayers.length === 0) return [];\n const fileKeyMap = /* @__PURE__ */ new Map();\n for (const layer of mediaLayers) {\n const fileKey = layer.props.fileKey;\n if (fileKey && !fileKeyMap.has(fileKey)) {\n fileKeyMap.set(fileKey, { layerName: layer.name, layerType: layer.type });\n }\n }\n if (fileKeyMap.size === 0) return [];\n const fileKeys = [...fileKeyMap.keys()];\n const assets = await db.select({\n storageKey: asset.storageKey,\n annotation: asset.annotation\n }).from(asset).where(inArray(asset.storageKey, fileKeys));\n const annotationMap = /* @__PURE__ */ new Map();\n for (const a of assets) {\n annotationMap.set(a.storageKey, a.annotation);\n }\n return fileKeys.map((fileKey) => ({\n layerName: fileKeyMap.get(fileKey).layerName,\n layerType: fileKeyMap.get(fileKey).layerType,\n fileKey,\n annotation: annotationMap.get(fileKey) ?? null\n }));\n}\nasync function getAssetLibrary(userId, db, limit = 30) {\n const assets = await db.select({\n name: asset.originalName,\n mediaType: asset.mediaType,\n url: asset.url,\n storageKey: asset.storageKey,\n duration: asset.duration,\n annotation: asset.annotation\n }).from(asset).where(eq(asset.userId, userId)).orderBy(desc(asset.createdAt)).limit(limit);\n return assets.map((a) => ({\n name: a.name,\n mediaType: a.mediaType,\n url: a.url,\n fileKey: a.storageKey,\n duration: a.duration,\n summary: a.annotation?.summary ?? null\n }));\n}\nasync function getVoiceCatalog() {\n const apiKey = env.ELEVENLABS_API_KEY;\n if (!apiKey) return [];\n try {\n const { getTtsVoices } = await import(\"../../../../chunks/tts-voices.js\");\n return await getTtsVoices(apiKey);\n } catch (err) {\n console.warn(\"[AI] Failed to load TTS voices for prompt:\", err);\n return [];\n }\n}\nfunction formatDuration(seconds) {\n const mins = Math.floor(seconds / 60);\n const secs = Math.round(seconds % 60);\n return mins > 0 ? `${mins}m${secs.toString().padStart(2, \"0\")}s` : `${secs}s`;\n}\nconst POST = async ({ request, locals }) => {\n try {\n let enableCacheControl = function(messages2) {\n return messages2.map((message) => {\n if (typeof message.content !== \"string\") {\n return message;\n }\n return {\n ...message,\n providerOptions: {\n ...message.providerOptions,\n openrouter: {\n ...message.providerOptions?.openrouter,\n cacheControl: {\n type: \"ephemeral\"\n /* ttl: '1h' */\n }\n }\n }\n };\n });\n };\n if (!locals.user) {\n error(401, \"Authentication required\");\n }\n const user = locals.user;\n const accessCheck = await canUserAccessAI(user.id, locals.db);\n if (!accessCheck.allowed) {\n error(403, accessCheck.reason || \"AI access not enabled\");\n }\n const body = await request.json();\n const { project, modelId, messages } = GenerateRequestSchema.parse(body);\n validateImageSizes(messages);\n const filteredMessages = filterImagesFromOldMessages(messages);\n const openrouter = getOpenRouterClient(user.email, project.id);\n const [mediaContexts, assetLibrary, voices] = await Promise.all([\n getMediaContexts(project, locals.db),\n getAssetLibrary(user.id, locals.db),\n getVoiceCatalog()\n ]);\n const systemPrompt = buildSystemPrompt(project, mediaContexts, assetLibrary, voices);\n const model = getModel(modelId);\n console.log(`[AI] Using model: ${model.name} (${model.id})`);\n console.log(`[AI] System prompt length: ${systemPrompt.length} chars`);\n const serverTools = {\n analyze_media: tool({\n description: \"Analyze a video/audio layer with multimodal AI. Extracts transcript, scene segments, highlights, dead space, and editing suggestions. Results persist on the asset. Call before compose_from_media.\",\n inputSchema: AnalyzeMediaInputSchema,\n execute: async ({ layerId, context }) => {\n try {\n const layer = project.layers.find(\n (l) => l.id === layerId || l.name.toLowerCase() === layerId.toLowerCase()\n );\n if (!layer) {\n const available = project.layers.map((l) => `\"${l.name}\" (id: ${l.id})`).join(\", \");\n return {\n success: false,\n message: `Layer \"${layerId}\" not found. Available: ${available}`,\n error: \"Layer not found\"\n };\n }\n if (layer.type !== \"video\" && layer.type !== \"audio\") {\n return {\n success: false,\n message: `Layer \"${layer.name}\" is a ${layer.type} layer, not video/audio`,\n error: \"Not a media layer\"\n };\n }\n const fileKey = layer.props.fileKey;\n if (!fileKey) {\n return {\n success: false,\n message: `Layer \"${layer.name}\" has no media file uploaded`,\n error: \"No fileKey\"\n };\n }\n console.log(`[AI] Analyzing media: ${fileKey}`);\n const result2 = await analyzeAndSaveMediaAsset(fileKey, context, user, locals.db);\n if (!result2.success) {\n return { success: false, message: result2.error, error: result2.error };\n }\n const annotation = result2.annotation;\n const highlights = annotation.segments.filter((s) => s.type === \"highlight\");\n const deadSpace = annotation.segments.filter((s) => s.type === \"dead-space\");\n console.log(\n `[AI] Media analysis complete: ${annotation.segments.length} segments, ${annotation.suggestedCuts.length} suggested cuts`\n );\n return {\n success: true,\n message: `Analyzed ${formatDuration(annotation.duration)} of ${annotation.modelUsed.split(\"/\").pop()}. Found ${annotation.segments.length} segments (${highlights.length} highlights, ${deadSpace.length} dead space). ${annotation.suggestedCuts.length} cuts suggested.`,\n summary: annotation.summary,\n segmentCount: annotation.segments.length,\n highlightCount: highlights.length,\n deadSpaceCount: deadSpace.length,\n suggestedCutsCount: annotation.suggestedCuts.length,\n duration: annotation.duration,\n topics: annotation.topics\n };\n } catch (err) {\n console.error(\"[AI] Media analysis error:\", err);\n return {\n success: false,\n message: \"Failed to analyze media\",\n error: err instanceof Error ? err.message : \"Unknown error\"\n };\n }\n }\n })\n };\n const allTools = { ...animationTools, ...serverTools };\n const agent = new ToolLoopAgent({\n model: openrouter(model.id, {\n reasoning: {\n effort: model.effort\n }\n }),\n // Explicit output budget: without it some providers default to a few\n // thousand tokens and long steps (reasoning + several tool calls) get\n // truncated mid-tool-input, stranding the call in input-streaming.\n ...model.maxOutputTokens ? { maxOutputTokens: model.maxOutputTokens } : {},\n providerOptions: {\n openrouter: {\n only: model.providerOnly\n }\n },\n instructions: {\n role: \"system\",\n content: systemPrompt,\n providerOptions: {\n openrouter: {\n cacheControl: {\n type: \"ephemeral\"\n },\n sort: \"price\"\n }\n }\n },\n tools: allTools,\n async onFinish(event) {\n logAIInteraction({\n timestamp: (/* @__PURE__ */ new Date()).toISOString(),\n modelId: model.id,\n modelName: model.name,\n systemPromptLength: systemPrompt.length,\n userMessages: messages,\n toolCalls: event.toolCalls,\n responseMessages: event.response.messages,\n requestData: event.request,\n usage: event.usage\n });\n if (event.usage) {\n await logAIUsage(\n {\n userId: user.id,\n modelId: model.id,\n promptTokens: event.usage.inputTokens || 0,\n completionTokens: event.usage.outputTokens || 0,\n metadata: {\n projectName: project.name,\n messageCount: messages.length,\n toolCallCount: event.toolCalls?.length || 0\n }\n },\n locals.db\n );\n }\n await trackEvent(user.id, \"ai_chat_message\", {\n modelId: model.id,\n modelName: model.name,\n projectId: project.id,\n messageCount: messages.length,\n toolCallCount: event.toolCalls?.length || 0,\n inputTokens: event.usage?.inputTokens || 0,\n outputTokens: event.usage?.outputTokens || 0,\n plan: user.subscriptionTier\n });\n }\n });\n const result = await agent.stream({\n messages: [\n ...enableCacheControl([...await convertToModelMessages(filteredMessages)]),\n {\n role: \"system\",\n content: JSON.stringify(project)\n }\n ]\n });\n return result.toUIMessageStreamResponse();\n } catch (err) {\n if (isHttpError(err)) {\n throw err;\n }\n console.error(\"[AI] Error generating animation:\", err);\n if (err instanceof z.ZodError) {\n error(400, `Validation error: ${err.message}`);\n }\n error(500, err instanceof Error ? err.message : \"Failed to generate animation\");\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,91 @@
1
+ import { withApiAuth, apiError, apiSuccess } from './middleware-D0o6fOUG.js';
2
+ import { p as project } from './api-Do--xZ9M.js';
3
+ import { eq } from 'drizzle-orm';
4
+ import { g as getAction } from './registry-z2-pQ1Jw.js';
5
+ import { r as runRegisteredAction } from './find-stock-image-DDfrK_rA.js';
6
+ import { a as applyActionResultToData } from './apply-result-DUy8ya08.js';
7
+ import z__default from 'zod';
8
+ import { i as createFromSchema } from './animation-sOd5R1cE.js';
9
+ import './index-Dp2_pJiZ.js';
10
+ import 'nanoid';
11
+ import 'drizzle-orm/pg-core';
12
+ import './branding-5rLT-BvK.js';
13
+ import './base-qepI6vHK.js';
14
+ import './media-v9Bq2kuR.js';
15
+
16
+ const ActionSchema = z__default.union([
17
+ z__default.object({
18
+ layerId: z__default.string()
19
+ }).catchall(z__default.unknown()),
20
+ z__default.object({
21
+ layerName: z__default.string()
22
+ }).catchall(z__default.unknown())
23
+ ]);
24
+ const POST = withApiAuth(async (event) => {
25
+ const { db } = event.locals;
26
+ const { id, actionId } = event.params;
27
+ if (!id || typeof id !== "string") {
28
+ return apiError(400, "MISSING_PROJECT_ID", 'Request must include a "id" parameter');
29
+ }
30
+ if (!actionId || typeof actionId !== "string") {
31
+ return apiError(400, "MISSING_ACTION_ID", 'Request must include an "actionId" parameter');
32
+ }
33
+ const action = getAction(actionId);
34
+ if (!action) {
35
+ return apiError(404, "ACTION_NOT_FOUND", `Unknown action: ${actionId}`);
36
+ }
37
+ let body;
38
+ try {
39
+ body = ActionSchema.parse(await event.request.json());
40
+ } catch (e) {
41
+ if (e instanceof z__default.ZodError) {
42
+ return apiError(400, "INVALID_JSON", e.message);
43
+ }
44
+ return apiError(400, "INVALID_JSON", "Request body must be valid JSON");
45
+ }
46
+ const { layerId, layerName, ...actionInput } = body;
47
+ const dbProject = await db.query.project.findFirst({
48
+ where: eq(project.id, id)
49
+ });
50
+ if (!dbProject) {
51
+ return apiError(404, "PROJECT_NOT_FOUND", `Project ${id} not found`);
52
+ }
53
+ if (dbProject.userId !== event.locals.user.id) {
54
+ return apiError(403, "ACCESS_DENIED", "You do not have access to this project");
55
+ }
56
+ const projectData = dbProject.data;
57
+ const sourceLayer = projectData.layers.find(
58
+ (l) => l.id === layerId || l.name === layerName
59
+ );
60
+ if (!sourceLayer) {
61
+ return apiError(404, "LAYER_NOT_FOUND", `Layer not found in project`);
62
+ }
63
+ try {
64
+ const result = await runRegisteredAction({
65
+ action,
66
+ input: createFromSchema(action.inputSchema, actionInput),
67
+ sourceLayer,
68
+ project: projectData
69
+ });
70
+ applyActionResultToData(projectData, result);
71
+ await db.update(project).set({ data: projectData, updatedAt: /* @__PURE__ */ new Date() }).where(eq(project.id, id));
72
+ return apiSuccess({
73
+ action: actionId,
74
+ layers_added: result.layersToAdd?.map((l) => ({
75
+ id: l.layer.id,
76
+ name: l.layer.name,
77
+ type: l.layer.type
78
+ })) ?? [],
79
+ layers_updated: result.layersToUpdate?.map((u) => u.id) ?? []
80
+ });
81
+ } catch (e) {
82
+ const message = e instanceof Error ? e.message : String(e);
83
+ if (message.includes("upgrade")) {
84
+ return apiError(402, "UPGRADE_REQUIRED", message);
85
+ }
86
+ return apiError(500, "ACTION_FAILED", message);
87
+ }
88
+ });
89
+
90
+ export { POST };
91
+ //# sourceMappingURL=_server.ts-_eJk5Eiu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-_eJk5Eiu.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/v1/projects/_id_/actions/_actionId_/_server.ts.js"],"sourcesContent":["import { withApiAuth, apiError, apiSuccess } from \"../../../../../../../../chunks/middleware.js\";\nimport { p as project } from \"../../../../../../../../chunks/api.js\";\nimport { eq } from \"drizzle-orm\";\nimport { g as getAction } from \"../../../../../../../../chunks/registry.js\";\nimport { r as runRegisteredAction } from \"../../../../../../../../chunks/find-stock-image.js\";\nimport { a as applyActionResultToData } from \"../../../../../../../../chunks/apply-result.js\";\nimport z__default from \"zod\";\nimport { c as createFromSchema } from \"../../../../../../../../chunks/registry-data.js\";\nconst ActionSchema = z__default.union([\n z__default.object({\n layerId: z__default.string()\n }).catchall(z__default.unknown()),\n z__default.object({\n layerName: z__default.string()\n }).catchall(z__default.unknown())\n]);\nconst POST = withApiAuth(async (event) => {\n const { db } = event.locals;\n const { id, actionId } = event.params;\n if (!id || typeof id !== \"string\") {\n return apiError(400, \"MISSING_PROJECT_ID\", 'Request must include a \"id\" parameter');\n }\n if (!actionId || typeof actionId !== \"string\") {\n return apiError(400, \"MISSING_ACTION_ID\", 'Request must include an \"actionId\" parameter');\n }\n const action = getAction(actionId);\n if (!action) {\n return apiError(404, \"ACTION_NOT_FOUND\", `Unknown action: ${actionId}`);\n }\n let body;\n try {\n body = ActionSchema.parse(await event.request.json());\n } catch (e) {\n if (e instanceof z__default.ZodError) {\n return apiError(400, \"INVALID_JSON\", e.message);\n }\n return apiError(400, \"INVALID_JSON\", \"Request body must be valid JSON\");\n }\n const { layerId, layerName, ...actionInput } = body;\n const dbProject = await db.query.project.findFirst({\n where: eq(project.id, id)\n });\n if (!dbProject) {\n return apiError(404, \"PROJECT_NOT_FOUND\", `Project ${id} not found`);\n }\n if (dbProject.userId !== event.locals.user.id) {\n return apiError(403, \"ACCESS_DENIED\", \"You do not have access to this project\");\n }\n const projectData = dbProject.data;\n const sourceLayer = projectData.layers.find(\n (l) => l.id === layerId || l.name === layerName\n );\n if (!sourceLayer) {\n return apiError(404, \"LAYER_NOT_FOUND\", `Layer not found in project`);\n }\n try {\n const result = await runRegisteredAction({\n action,\n input: createFromSchema(action.inputSchema, actionInput),\n sourceLayer,\n project: projectData\n });\n applyActionResultToData(projectData, result);\n await db.update(project).set({ data: projectData, updatedAt: /* @__PURE__ */ new Date() }).where(eq(project.id, id));\n return apiSuccess({\n action: actionId,\n layers_added: result.layersToAdd?.map((l) => ({\n id: l.layer.id,\n name: l.layer.name,\n type: l.layer.type\n })) ?? [],\n layers_updated: result.layersToUpdate?.map((u) => u.id) ?? []\n });\n } catch (e) {\n const message = e instanceof Error ? e.message : String(e);\n if (message.includes(\"upgrade\")) {\n return apiError(402, \"UPGRADE_REQUIRED\", message);\n }\n return apiError(500, \"ACTION_FAILED\", message);\n }\n});\nexport {\n POST\n};\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,91 @@
1
+ import { env } from './env-AoZ3P0fg.js';
2
+ import { nanoid } from 'nanoid';
3
+ import { s as sanitizeFilename } from './filename-sanitizer-yQZjRxRx.js';
4
+ import './shared-server-hNytdPP9.js';
5
+ import 'zod';
6
+
7
+ let s3Upload = null;
8
+ let s3Delete = null;
9
+ let fs = null;
10
+ let path = null;
11
+ let os = null;
12
+ function getExtension(mimeType) {
13
+ const baseMimeType = mimeType.split(";")[0].trim();
14
+ const map = {
15
+ "image/jpeg": "jpg",
16
+ "image/png": "png",
17
+ "image/gif": "gif",
18
+ "image/webp": "webp",
19
+ "image/svg+xml": "svg",
20
+ "video/mp4": "mp4",
21
+ "video/webm": "webm",
22
+ "video/quicktime": "mov",
23
+ "video/x-msvideo": "avi",
24
+ "audio/mpeg": "mp3",
25
+ "audio/wav": "wav",
26
+ "audio/ogg": "ogg",
27
+ "audio/webm": "weba",
28
+ "audio/mp4": "m4a",
29
+ "audio/aac": "aac"
30
+ };
31
+ return map[baseMimeType] || "bin";
32
+ }
33
+ async function uploadToStorage(file, originalName, mimeType, mediaType, kind, userId) {
34
+ if (env.DESKTOP_MODE) {
35
+ if (!fs) {
36
+ const fsModule = await import('fs');
37
+ fs = fsModule.promises;
38
+ path = await import('path');
39
+ os = await import('os');
40
+ }
41
+ const sanitizedOriginalName = sanitizeFilename(originalName);
42
+ const fileId = nanoid();
43
+ const ext = getExtension(mimeType);
44
+ const prefix = `${userId || "public"}/${kind}`;
45
+ const key = `${prefix}/${mediaType}/${fileId}.${ext}`;
46
+ const appDataDir = path.join(os.homedir(), ".devmotion");
47
+ const filePath = path.join(appDataDir, "assets", key);
48
+ await fs.mkdir(path.dirname(filePath), { recursive: true });
49
+ await fs.writeFile(filePath, file);
50
+ return {
51
+ fileId,
52
+ key,
53
+ url: `/api/desktop/assets/${encodeURIComponent(key)}`,
54
+ originalName: sanitizedOriginalName,
55
+ mimeType,
56
+ size: file.length,
57
+ mediaType
58
+ };
59
+ } else {
60
+ if (!s3Upload) {
61
+ const storageModule = await import('./index6-BwFC1GDh.js').then((n) => n.j);
62
+ s3Upload = storageModule.uploadFile;
63
+ }
64
+ return s3Upload(file, originalName, mimeType, mediaType, kind, userId);
65
+ }
66
+ }
67
+ async function deleteFromStorage(key) {
68
+ if (env.DESKTOP_MODE) {
69
+ if (!fs) {
70
+ const fsModule = await import('fs');
71
+ fs = fsModule.promises;
72
+ path = await import('path');
73
+ os = await import('os');
74
+ }
75
+ const appDataDir = path.join(os.homedir(), ".devmotion");
76
+ const filePath = path.join(appDataDir, "assets", key);
77
+ await fs.unlink(filePath);
78
+ } else {
79
+ if (!s3Delete) {
80
+ const storageModule = await import('./index6-BwFC1GDh.js').then((n) => n.j);
81
+ s3Delete = storageModule.deleteFile;
82
+ }
83
+ await s3Delete(key);
84
+ }
85
+ }
86
+ function shouldEnforceQuota() {
87
+ return !env.DESKTOP_MODE;
88
+ }
89
+
90
+ export { deleteFromStorage, shouldEnforceQuota, uploadToStorage };
91
+ //# sourceMappingURL=adapter-XtQVoo_l.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter-XtQVoo_l.js","sources":["../../../.svelte-kit/adapter-node/chunks/adapter.js"],"sourcesContent":["import { env } from \"./env.js\";\nimport { nanoid } from \"nanoid\";\nimport { s as sanitizeFilename } from \"./filename-sanitizer.js\";\nlet s3Upload = null;\nlet s3Delete = null;\nlet fs = null;\nlet path = null;\nlet os = null;\nfunction getExtension(mimeType) {\n const baseMimeType = mimeType.split(\";\")[0].trim();\n const map = {\n \"image/jpeg\": \"jpg\",\n \"image/png\": \"png\",\n \"image/gif\": \"gif\",\n \"image/webp\": \"webp\",\n \"image/svg+xml\": \"svg\",\n \"video/mp4\": \"mp4\",\n \"video/webm\": \"webm\",\n \"video/quicktime\": \"mov\",\n \"video/x-msvideo\": \"avi\",\n \"audio/mpeg\": \"mp3\",\n \"audio/wav\": \"wav\",\n \"audio/ogg\": \"ogg\",\n \"audio/webm\": \"weba\",\n \"audio/mp4\": \"m4a\",\n \"audio/aac\": \"aac\"\n };\n return map[baseMimeType] || \"bin\";\n}\nasync function uploadToStorage(file, originalName, mimeType, mediaType, kind, userId) {\n if (env.DESKTOP_MODE) {\n if (!fs) {\n const fsModule = await import(\"fs\");\n fs = fsModule.promises;\n path = await import(\"path\");\n os = await import(\"os\");\n }\n const sanitizedOriginalName = sanitizeFilename(originalName);\n const fileId = nanoid();\n const ext = getExtension(mimeType);\n const prefix = `${userId || \"public\"}/${kind}`;\n const key = `${prefix}/${mediaType}/${fileId}.${ext}`;\n const appDataDir = path.join(os.homedir(), \".devmotion\");\n const filePath = path.join(appDataDir, \"assets\", key);\n await fs.mkdir(path.dirname(filePath), { recursive: true });\n await fs.writeFile(filePath, file);\n return {\n fileId,\n key,\n url: `/api/desktop/assets/${encodeURIComponent(key)}`,\n originalName: sanitizedOriginalName,\n mimeType,\n size: file.length,\n mediaType\n };\n } else {\n if (!s3Upload) {\n const storageModule = await import(\"./index6.js\").then((n) => n.j);\n s3Upload = storageModule.uploadFile;\n }\n return s3Upload(file, originalName, mimeType, mediaType, kind, userId);\n }\n}\nasync function deleteFromStorage(key) {\n if (env.DESKTOP_MODE) {\n if (!fs) {\n const fsModule = await import(\"fs\");\n fs = fsModule.promises;\n path = await import(\"path\");\n os = await import(\"os\");\n }\n const appDataDir = path.join(os.homedir(), \".devmotion\");\n const filePath = path.join(appDataDir, \"assets\", key);\n await fs.unlink(filePath);\n } else {\n if (!s3Delete) {\n const storageModule = await import(\"./index6.js\").then((n) => n.j);\n s3Delete = storageModule.deleteFile;\n }\n await s3Delete(key);\n }\n}\nfunction shouldEnforceQuota() {\n return !env.DESKTOP_MODE;\n}\nexport {\n deleteFromStorage,\n shouldEnforceQuota,\n uploadToStorage\n};\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,105 @@
1
+ import './root-DjEsp22s.js';
2
+ import { g as getRequestEvent } from './event-DmhHnWT5.js';
3
+ import { i as init_remote_functions } from './remote-functions-C4V-TgoU.js';
4
+ import './index-Dp2_pJiZ.js';
5
+ import { q as query } from './query-D9bdUhU3.js';
6
+ import { c as user, p as project, b as aiUsageLog } from './api-Do--xZ9M.js';
7
+ import { max, eq, sql, count, and, gte, lte } from 'drizzle-orm';
8
+ import { z } from 'zod';
9
+ import { c as checkRole } from './auth.remote-CN4se14K.js';
10
+
11
+ const m = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
12
+ __proto__: null,
13
+ get getAdminStats() {
14
+ return getAdminStats;
15
+ },
16
+ get getAllUsers() {
17
+ return getAllUsers;
18
+ }
19
+ }, Symbol.toStringTag, { value: "Module" }));
20
+ const getAllUsers = query(async () => {
21
+ await checkRole("admin");
22
+ const { locals } = getRequestEvent();
23
+ const currentUserId = locals.user.id;
24
+ const rows = await locals.db.select({
25
+ id: user.id,
26
+ name: user.name,
27
+ email: user.email,
28
+ lastProjectUpdate: max(project.updatedAt).as("last_project_update")
29
+ }).from(user).leftJoin(project, eq(project.userId, user.id)).groupBy(user.id, user.name, user.email);
30
+ return rows.sort((a, b) => {
31
+ if (a.id === currentUserId) return -1;
32
+ if (b.id === currentUserId) return 1;
33
+ const aTime = a.lastProjectUpdate?.getTime() ?? 0;
34
+ const bTime = b.lastProjectUpdate?.getTime() ?? 0;
35
+ return bTime - aTime;
36
+ });
37
+ });
38
+ const getAdminStats = query(
39
+ z.object({
40
+ // Accept both Date objects and coerce-able strings (datetime-local values)
41
+ from: z.coerce.date(),
42
+ to: z.coerce.date()
43
+ }),
44
+ async ({ from, to }) => {
45
+ await checkRole("admin");
46
+ const { locals } = getRequestEvent();
47
+ const userStats = await locals.db.select({
48
+ id: user.id,
49
+ name: user.name,
50
+ email: user.email,
51
+ createdAt: user.createdAt,
52
+ projectCount: sql`cast(count(distinct ${project.id}) as int)`
53
+ }).from(user).leftJoin(project, eq(project.userId, user.id)).groupBy(user.id, user.name, user.email, user.createdAt).orderBy(user.createdAt);
54
+ const modelBreakdown = await locals.db.select({
55
+ userId: aiUsageLog.userId,
56
+ modelId: aiUsageLog.modelId,
57
+ runs: count(aiUsageLog.id),
58
+ costUsd: sql`coalesce(sum(${aiUsageLog.estimatedCost}), 0)`
59
+ }).from(aiUsageLog).where(and(gte(aiUsageLog.createdAt, from), lte(aiUsageLog.createdAt, to))).groupBy(aiUsageLog.userId, aiUsageLog.modelId).orderBy(aiUsageLog.userId, aiUsageLog.modelId);
60
+ const modelsByUser = /* @__PURE__ */ new Map();
61
+ for (const row of modelBreakdown) {
62
+ if (!modelsByUser.has(row.userId)) modelsByUser.set(row.userId, []);
63
+ modelsByUser.get(row.userId).push(row);
64
+ }
65
+ const allProjects = await locals.db.select({
66
+ id: project.id,
67
+ name: project.name,
68
+ isPublic: project.isPublic,
69
+ userId: project.userId,
70
+ updatedAt: project.updatedAt,
71
+ views: project.views
72
+ }).from(project).orderBy(project.updatedAt);
73
+ const projectsByUser = /* @__PURE__ */ new Map();
74
+ for (const p of allProjects) {
75
+ if (!p.userId) continue;
76
+ if (!projectsByUser.has(p.userId)) projectsByUser.set(p.userId, []);
77
+ projectsByUser.get(p.userId).push(p);
78
+ }
79
+ return userStats.map((u) => {
80
+ const models = (modelsByUser.get(u.id) ?? []).map((m2) => ({
81
+ modelId: m2.modelId,
82
+ runs: m2.runs,
83
+ // USD → cents, 4 decimal places
84
+ costCents: Math.round(m2.costUsd * 100 * 1e4) / 1e4
85
+ }));
86
+ const totalCostCents = models.reduce((s, m2) => s + m2.costCents, 0);
87
+ return {
88
+ ...u,
89
+ totalCostCents,
90
+ models,
91
+ projects: (projectsByUser.get(u.id) ?? []).sort(
92
+ (a, b) => new Date(b.updatedAt).getTime() - new Date(a.updatedAt).getTime()
93
+ )
94
+ };
95
+ });
96
+ }
97
+ );
98
+ init_remote_functions(m, "src/lib/functions/admin.remote.ts", "zjib3m");
99
+ for (const [name, fn] of Object.entries(m)) {
100
+ fn.__.id = "zjib3m/" + name;
101
+ fn.__.name = name;
102
+ }
103
+
104
+ export { getAllUsers as a, getAdminStats as g, m };
105
+ //# sourceMappingURL=admin.remote-C-MAmmW-.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin.remote-C-MAmmW-.js","sources":["../../../.svelte-kit/adapter-node/chunks/admin.remote.js"],"sourcesContent":["import \"./url.js\";\nimport { getRequestEvent } from \"@sveltejs/kit/internal/server\";\nimport \"./root.js\";\nimport \"./utils.js\";\nimport \"@sveltejs/kit\";\nimport { init_remote_functions } from \"@sveltejs/kit/internal\";\nimport { q as query } from \"./query.js\";\nimport { z as user, p as project, d as aiUsageLog } from \"./api.js\";\nimport { sql, eq, count, and, gte, lte, max } from \"drizzle-orm\";\nimport { z } from \"zod\";\nimport { c as checkRole } from \"./auth.remote.js\";\nconst m = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n get getAdminStats() {\n return getAdminStats;\n },\n get getAllUsers() {\n return getAllUsers;\n }\n}, Symbol.toStringTag, { value: \"Module\" }));\nconst getAllUsers = query(async () => {\n await checkRole(\"admin\");\n const { locals } = getRequestEvent();\n const currentUserId = locals.user.id;\n const rows = await locals.db.select({\n id: user.id,\n name: user.name,\n email: user.email,\n lastProjectUpdate: max(project.updatedAt).as(\"last_project_update\")\n }).from(user).leftJoin(project, eq(project.userId, user.id)).groupBy(user.id, user.name, user.email);\n return rows.sort((a, b) => {\n if (a.id === currentUserId) return -1;\n if (b.id === currentUserId) return 1;\n const aTime = a.lastProjectUpdate?.getTime() ?? 0;\n const bTime = b.lastProjectUpdate?.getTime() ?? 0;\n return bTime - aTime;\n });\n});\nconst getAdminStats = query(\n z.object({\n // Accept both Date objects and coerce-able strings (datetime-local values)\n from: z.coerce.date(),\n to: z.coerce.date()\n }),\n async ({ from, to }) => {\n await checkRole(\"admin\");\n const { locals } = getRequestEvent();\n const userStats = await locals.db.select({\n id: user.id,\n name: user.name,\n email: user.email,\n createdAt: user.createdAt,\n projectCount: sql`cast(count(distinct ${project.id}) as int)`\n }).from(user).leftJoin(project, eq(project.userId, user.id)).groupBy(user.id, user.name, user.email, user.createdAt).orderBy(user.createdAt);\n const modelBreakdown = await locals.db.select({\n userId: aiUsageLog.userId,\n modelId: aiUsageLog.modelId,\n runs: count(aiUsageLog.id),\n costUsd: sql`coalesce(sum(${aiUsageLog.estimatedCost}), 0)`\n }).from(aiUsageLog).where(and(gte(aiUsageLog.createdAt, from), lte(aiUsageLog.createdAt, to))).groupBy(aiUsageLog.userId, aiUsageLog.modelId).orderBy(aiUsageLog.userId, aiUsageLog.modelId);\n const modelsByUser = /* @__PURE__ */ new Map();\n for (const row of modelBreakdown) {\n if (!modelsByUser.has(row.userId)) modelsByUser.set(row.userId, []);\n modelsByUser.get(row.userId).push(row);\n }\n const allProjects = await locals.db.select({\n id: project.id,\n name: project.name,\n isPublic: project.isPublic,\n userId: project.userId,\n updatedAt: project.updatedAt,\n views: project.views\n }).from(project).orderBy(project.updatedAt);\n const projectsByUser = /* @__PURE__ */ new Map();\n for (const p of allProjects) {\n if (!p.userId) continue;\n if (!projectsByUser.has(p.userId)) projectsByUser.set(p.userId, []);\n projectsByUser.get(p.userId).push(p);\n }\n return userStats.map((u) => {\n const models = (modelsByUser.get(u.id) ?? []).map((m2) => ({\n modelId: m2.modelId,\n runs: m2.runs,\n // USD → cents, 4 decimal places\n costCents: Math.round(m2.costUsd * 100 * 1e4) / 1e4\n }));\n const totalCostCents = models.reduce((s, m2) => s + m2.costCents, 0);\n return {\n ...u,\n totalCostCents,\n models,\n projects: (projectsByUser.get(u.id) ?? []).sort(\n (a, b) => new Date(b.updatedAt).getTime() - new Date(a.updatedAt).getTime()\n )\n };\n });\n }\n);\ninit_remote_functions(m, \"src/lib/functions/admin.remote.ts\", \"zjib3m\");\nfor (const [name, fn] of Object.entries(m)) {\n fn.__.id = \"zjib3m/\" + name;\n fn.__.name = name;\n}\nexport {\n getAllUsers as a,\n getAdminStats as g,\n m\n};\n"],"names":[],"mappings":"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"}