@playcraft/common 0.1.50-beta → 0.1.51

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 (433) hide show
  1. package/README.md +1 -1
  2. package/dist/agent/session-title.d.ts +1 -1
  3. package/dist/agent/session-title.js +1 -1
  4. package/dist/agent-messages/db-message-converter.d.ts +0 -10
  5. package/dist/agent-messages/db-message-converter.d.ts.map +1 -1
  6. package/dist/agent-messages/db-message-converter.js +0 -13
  7. package/dist/agent-messages/db-message-converter.js.map +1 -1
  8. package/dist/agent-tools/index.d.ts +0 -5
  9. package/dist/agent-tools/index.d.ts.map +1 -1
  10. package/dist/agent-tools/index.js +0 -5
  11. package/dist/agent-tools/index.js.map +1 -1
  12. package/dist/agent-tools/types.d.ts +24 -9
  13. package/dist/agent-tools/types.d.ts.map +1 -1
  14. package/dist/agent-tools/types.js.map +1 -1
  15. package/dist/database/postgres-adapter.js +1 -1
  16. package/dist/database/postgres-adapter.js.map +1 -1
  17. package/dist/database/schema.d.ts +1 -1
  18. package/dist/database/schema.js +1 -1
  19. package/dist/prefab/image-background.d.ts +10 -0
  20. package/dist/prefab/image-background.d.ts.map +1 -0
  21. package/dist/prefab/image-background.js +19 -0
  22. package/dist/prefab/image-background.js.map +1 -0
  23. package/dist/prefab/image-generation-constraints.d.ts +72 -0
  24. package/dist/prefab/image-generation-constraints.d.ts.map +1 -0
  25. package/dist/prefab/image-generation-constraints.js +112 -0
  26. package/dist/prefab/image-generation-constraints.js.map +1 -0
  27. package/dist/prefab/index.d.ts +2 -0
  28. package/dist/prefab/index.d.ts.map +1 -1
  29. package/dist/prefab/index.js +2 -0
  30. package/dist/prefab/index.js.map +1 -1
  31. package/dist/prefab/mime-type-list.d.ts +1 -0
  32. package/dist/prefab/mime-type-list.d.ts.map +1 -1
  33. package/dist/prefab/mime-type-list.js +5 -1
  34. package/dist/prefab/mime-type-list.js.map +1 -1
  35. package/dist/recommend/types.d.ts +1 -1
  36. package/dist/recommend/types.js +1 -1
  37. package/dist/storage/cos.d.ts +0 -11
  38. package/dist/storage/cos.d.ts.map +1 -1
  39. package/dist/storage/cos.js +0 -29
  40. package/dist/storage/cos.js.map +1 -1
  41. package/package.json +1 -33
  42. package/dist/agent-tools/operation-protocol.d.ts +0 -10
  43. package/dist/agent-tools/operation-protocol.d.ts.map +0 -1
  44. package/dist/agent-tools/operation-protocol.js +0 -13
  45. package/dist/agent-tools/operation-protocol.js.map +0 -1
  46. package/dist/agent-tools/replica-recording.d.ts +0 -283
  47. package/dist/agent-tools/replica-recording.d.ts.map +0 -1
  48. package/dist/agent-tools/replica-recording.js +0 -109
  49. package/dist/agent-tools/replica-recording.js.map +0 -1
  50. package/dist/agent-tools/replica-validation.d.ts +0 -972
  51. package/dist/agent-tools/replica-validation.d.ts.map +0 -1
  52. package/dist/agent-tools/replica-validation.js +0 -254
  53. package/dist/agent-tools/replica-validation.js.map +0 -1
  54. package/dist/agent-tools/video-model-proxy.d.ts +0 -113
  55. package/dist/agent-tools/video-model-proxy.d.ts.map +0 -1
  56. package/dist/agent-tools/video-model-proxy.js +0 -49
  57. package/dist/agent-tools/video-model-proxy.js.map +0 -1
  58. package/dist/agent-tools/video-replication.d.ts +0 -421
  59. package/dist/agent-tools/video-replication.d.ts.map +0 -1
  60. package/dist/agent-tools/video-replication.js +0 -95
  61. package/dist/agent-tools/video-replication.js.map +0 -1
  62. package/dist/cloud-workspace/runtime/agent-background-processes.d.ts +0 -68
  63. package/dist/cloud-workspace/runtime/agent-background-processes.d.ts.map +0 -1
  64. package/dist/cloud-workspace/runtime/agent-background-processes.js +0 -60
  65. package/dist/cloud-workspace/runtime/agent-background-processes.js.map +0 -1
  66. package/dist/cloud-workspace/runtime/agent-chat-flush.d.ts +0 -55
  67. package/dist/cloud-workspace/runtime/agent-chat-flush.d.ts.map +0 -1
  68. package/dist/cloud-workspace/runtime/agent-chat-flush.js +0 -51
  69. package/dist/cloud-workspace/runtime/agent-chat-flush.js.map +0 -1
  70. package/dist/cloud-workspace/runtime/agent-command.d.ts +0 -152
  71. package/dist/cloud-workspace/runtime/agent-command.d.ts.map +0 -1
  72. package/dist/cloud-workspace/runtime/agent-command.js +0 -90
  73. package/dist/cloud-workspace/runtime/agent-command.js.map +0 -1
  74. package/dist/cloud-workspace/runtime/agent-competitor-report.d.ts +0 -143
  75. package/dist/cloud-workspace/runtime/agent-competitor-report.d.ts.map +0 -1
  76. package/dist/cloud-workspace/runtime/agent-competitor-report.js +0 -115
  77. package/dist/cloud-workspace/runtime/agent-competitor-report.js.map +0 -1
  78. package/dist/cloud-workspace/runtime/agent-connection.d.ts +0 -76
  79. package/dist/cloud-workspace/runtime/agent-connection.d.ts.map +0 -1
  80. package/dist/cloud-workspace/runtime/agent-connection.js +0 -59
  81. package/dist/cloud-workspace/runtime/agent-connection.js.map +0 -1
  82. package/dist/cloud-workspace/runtime/agent-issue-artifacts.d.ts +0 -90
  83. package/dist/cloud-workspace/runtime/agent-issue-artifacts.d.ts.map +0 -1
  84. package/dist/cloud-workspace/runtime/agent-issue-artifacts.js +0 -60
  85. package/dist/cloud-workspace/runtime/agent-issue-artifacts.js.map +0 -1
  86. package/dist/cloud-workspace/runtime/agent-lifecycle.d.ts +0 -87
  87. package/dist/cloud-workspace/runtime/agent-lifecycle.d.ts.map +0 -1
  88. package/dist/cloud-workspace/runtime/agent-lifecycle.js +0 -75
  89. package/dist/cloud-workspace/runtime/agent-lifecycle.js.map +0 -1
  90. package/dist/cloud-workspace/runtime/agent-mutation.d.ts +0 -197
  91. package/dist/cloud-workspace/runtime/agent-mutation.d.ts.map +0 -1
  92. package/dist/cloud-workspace/runtime/agent-mutation.js +0 -114
  93. package/dist/cloud-workspace/runtime/agent-mutation.js.map +0 -1
  94. package/dist/cloud-workspace/runtime/agent-opencode-gateway.d.ts +0 -210
  95. package/dist/cloud-workspace/runtime/agent-opencode-gateway.d.ts.map +0 -1
  96. package/dist/cloud-workspace/runtime/agent-opencode-gateway.js +0 -180
  97. package/dist/cloud-workspace/runtime/agent-opencode-gateway.js.map +0 -1
  98. package/dist/cloud-workspace/runtime/agent-opencode.d.ts +0 -406
  99. package/dist/cloud-workspace/runtime/agent-opencode.d.ts.map +0 -1
  100. package/dist/cloud-workspace/runtime/agent-opencode.js +0 -237
  101. package/dist/cloud-workspace/runtime/agent-opencode.js.map +0 -1
  102. package/dist/cloud-workspace/runtime/agent-promotion.d.ts +0 -21
  103. package/dist/cloud-workspace/runtime/agent-promotion.d.ts.map +0 -1
  104. package/dist/cloud-workspace/runtime/agent-promotion.js +0 -23
  105. package/dist/cloud-workspace/runtime/agent-promotion.js.map +0 -1
  106. package/dist/cloud-workspace/runtime/agent-read.d.ts +0 -343
  107. package/dist/cloud-workspace/runtime/agent-read.d.ts.map +0 -1
  108. package/dist/cloud-workspace/runtime/agent-read.js +0 -159
  109. package/dist/cloud-workspace/runtime/agent-read.js.map +0 -1
  110. package/dist/cloud-workspace/runtime/agent-source-project.d.ts +0 -126
  111. package/dist/cloud-workspace/runtime/agent-source-project.d.ts.map +0 -1
  112. package/dist/cloud-workspace/runtime/agent-source-project.js +0 -95
  113. package/dist/cloud-workspace/runtime/agent-source-project.js.map +0 -1
  114. package/dist/cloud-workspace/runtime/agent-tool-claim.d.ts +0 -18
  115. package/dist/cloud-workspace/runtime/agent-tool-claim.d.ts.map +0 -1
  116. package/dist/cloud-workspace/runtime/agent-tool-claim.js +0 -16
  117. package/dist/cloud-workspace/runtime/agent-tool-claim.js.map +0 -1
  118. package/dist/cloud-workspace/runtime/agent-variant-chat.d.ts +0 -9
  119. package/dist/cloud-workspace/runtime/agent-variant-chat.d.ts.map +0 -1
  120. package/dist/cloud-workspace/runtime/agent-variant-chat.js +0 -23
  121. package/dist/cloud-workspace/runtime/agent-variant-chat.js.map +0 -1
  122. package/dist/cloud-workspace/runtime/agent-variant-git.d.ts +0 -75
  123. package/dist/cloud-workspace/runtime/agent-variant-git.d.ts.map +0 -1
  124. package/dist/cloud-workspace/runtime/agent-variant-git.js +0 -62
  125. package/dist/cloud-workspace/runtime/agent-variant-git.js.map +0 -1
  126. package/dist/cloud-workspace/runtime/animation-editor.d.ts +0 -766
  127. package/dist/cloud-workspace/runtime/animation-editor.d.ts.map +0 -1
  128. package/dist/cloud-workspace/runtime/animation-editor.js +0 -84
  129. package/dist/cloud-workspace/runtime/animation-editor.js.map +0 -1
  130. package/dist/cloud-workspace/runtime/animation-quality.d.ts +0 -33
  131. package/dist/cloud-workspace/runtime/animation-quality.d.ts.map +0 -1
  132. package/dist/cloud-workspace/runtime/animation-quality.js +0 -14
  133. package/dist/cloud-workspace/runtime/animation-quality.js.map +0 -1
  134. package/dist/cloud-workspace/runtime/artifacts.d.ts +0 -239
  135. package/dist/cloud-workspace/runtime/artifacts.d.ts.map +0 -1
  136. package/dist/cloud-workspace/runtime/artifacts.js +0 -105
  137. package/dist/cloud-workspace/runtime/artifacts.js.map +0 -1
  138. package/dist/cloud-workspace/runtime/asset-generation-bundle.d.ts +0 -61
  139. package/dist/cloud-workspace/runtime/asset-generation-bundle.d.ts.map +0 -1
  140. package/dist/cloud-workspace/runtime/asset-generation-bundle.js +0 -59
  141. package/dist/cloud-workspace/runtime/asset-generation-bundle.js.map +0 -1
  142. package/dist/cloud-workspace/runtime/asset-generation-video-validator.d.ts +0 -15
  143. package/dist/cloud-workspace/runtime/asset-generation-video-validator.d.ts.map +0 -1
  144. package/dist/cloud-workspace/runtime/asset-generation-video-validator.js +0 -63
  145. package/dist/cloud-workspace/runtime/asset-generation-video-validator.js.map +0 -1
  146. package/dist/cloud-workspace/runtime/asset-generation-video.d.ts +0 -92
  147. package/dist/cloud-workspace/runtime/asset-generation-video.d.ts.map +0 -1
  148. package/dist/cloud-workspace/runtime/asset-generation-video.js +0 -63
  149. package/dist/cloud-workspace/runtime/asset-generation-video.js.map +0 -1
  150. package/dist/cloud-workspace/runtime/asset-generation.d.ts +0 -837
  151. package/dist/cloud-workspace/runtime/asset-generation.d.ts.map +0 -1
  152. package/dist/cloud-workspace/runtime/asset-generation.js +0 -175
  153. package/dist/cloud-workspace/runtime/asset-generation.js.map +0 -1
  154. package/dist/cloud-workspace/runtime/asset-library-import.d.ts +0 -73
  155. package/dist/cloud-workspace/runtime/asset-library-import.d.ts.map +0 -1
  156. package/dist/cloud-workspace/runtime/asset-library-import.js +0 -37
  157. package/dist/cloud-workspace/runtime/asset-library-import.js.map +0 -1
  158. package/dist/cloud-workspace/runtime/asset-transfers.d.ts +0 -92
  159. package/dist/cloud-workspace/runtime/asset-transfers.d.ts.map +0 -1
  160. package/dist/cloud-workspace/runtime/asset-transfers.js +0 -119
  161. package/dist/cloud-workspace/runtime/asset-transfers.js.map +0 -1
  162. package/dist/cloud-workspace/runtime/attachment-base64.d.ts +0 -3
  163. package/dist/cloud-workspace/runtime/attachment-base64.d.ts.map +0 -1
  164. package/dist/cloud-workspace/runtime/attachment-base64.js +0 -8
  165. package/dist/cloud-workspace/runtime/attachment-base64.js.map +0 -1
  166. package/dist/cloud-workspace/runtime/attachments.d.ts +0 -33
  167. package/dist/cloud-workspace/runtime/attachments.d.ts.map +0 -1
  168. package/dist/cloud-workspace/runtime/attachments.js +0 -35
  169. package/dist/cloud-workspace/runtime/attachments.js.map +0 -1
  170. package/dist/cloud-workspace/runtime/batch-generation.d.ts +0 -96
  171. package/dist/cloud-workspace/runtime/batch-generation.d.ts.map +0 -1
  172. package/dist/cloud-workspace/runtime/batch-generation.js +0 -77
  173. package/dist/cloud-workspace/runtime/batch-generation.js.map +0 -1
  174. package/dist/cloud-workspace/runtime/batch-production.d.ts +0 -66
  175. package/dist/cloud-workspace/runtime/batch-production.d.ts.map +0 -1
  176. package/dist/cloud-workspace/runtime/batch-production.js +0 -35
  177. package/dist/cloud-workspace/runtime/batch-production.js.map +0 -1
  178. package/dist/cloud-workspace/runtime/batch-runs.d.ts +0 -711
  179. package/dist/cloud-workspace/runtime/batch-runs.d.ts.map +0 -1
  180. package/dist/cloud-workspace/runtime/batch-runs.js +0 -226
  181. package/dist/cloud-workspace/runtime/batch-runs.js.map +0 -1
  182. package/dist/cloud-workspace/runtime/batch-source.d.ts +0 -20
  183. package/dist/cloud-workspace/runtime/batch-source.d.ts.map +0 -1
  184. package/dist/cloud-workspace/runtime/batch-source.js +0 -28
  185. package/dist/cloud-workspace/runtime/batch-source.js.map +0 -1
  186. package/dist/cloud-workspace/runtime/capabilities.d.ts +0 -40
  187. package/dist/cloud-workspace/runtime/capabilities.d.ts.map +0 -1
  188. package/dist/cloud-workspace/runtime/capabilities.js +0 -53
  189. package/dist/cloud-workspace/runtime/capabilities.js.map +0 -1
  190. package/dist/cloud-workspace/runtime/chat-realtime-admission.d.ts +0 -53
  191. package/dist/cloud-workspace/runtime/chat-realtime-admission.d.ts.map +0 -1
  192. package/dist/cloud-workspace/runtime/chat-realtime-admission.js +0 -95
  193. package/dist/cloud-workspace/runtime/chat-realtime-admission.js.map +0 -1
  194. package/dist/cloud-workspace/runtime/chat-realtime.d.ts +0 -197
  195. package/dist/cloud-workspace/runtime/chat-realtime.d.ts.map +0 -1
  196. package/dist/cloud-workspace/runtime/chat-realtime.js +0 -300
  197. package/dist/cloud-workspace/runtime/chat-realtime.js.map +0 -1
  198. package/dist/cloud-workspace/runtime/checkpoints.d.ts +0 -35
  199. package/dist/cloud-workspace/runtime/checkpoints.d.ts.map +0 -1
  200. package/dist/cloud-workspace/runtime/checkpoints.js +0 -35
  201. package/dist/cloud-workspace/runtime/checkpoints.js.map +0 -1
  202. package/dist/cloud-workspace/runtime/composer-context.d.ts +0 -82
  203. package/dist/cloud-workspace/runtime/composer-context.d.ts.map +0 -1
  204. package/dist/cloud-workspace/runtime/composer-context.js +0 -51
  205. package/dist/cloud-workspace/runtime/composer-context.js.map +0 -1
  206. package/dist/cloud-workspace/runtime/config.d.ts +0 -48
  207. package/dist/cloud-workspace/runtime/config.d.ts.map +0 -1
  208. package/dist/cloud-workspace/runtime/config.js +0 -126
  209. package/dist/cloud-workspace/runtime/config.js.map +0 -1
  210. package/dist/cloud-workspace/runtime/connectivity.d.ts +0 -211
  211. package/dist/cloud-workspace/runtime/connectivity.d.ts.map +0 -1
  212. package/dist/cloud-workspace/runtime/connectivity.js +0 -46
  213. package/dist/cloud-workspace/runtime/connectivity.js.map +0 -1
  214. package/dist/cloud-workspace/runtime/delivery.d.ts +0 -1042
  215. package/dist/cloud-workspace/runtime/delivery.d.ts.map +0 -1
  216. package/dist/cloud-workspace/runtime/delivery.js +0 -208
  217. package/dist/cloud-workspace/runtime/delivery.js.map +0 -1
  218. package/dist/cloud-workspace/runtime/directories.d.ts +0 -32
  219. package/dist/cloud-workspace/runtime/directories.d.ts.map +0 -1
  220. package/dist/cloud-workspace/runtime/directories.js +0 -44
  221. package/dist/cloud-workspace/runtime/directories.js.map +0 -1
  222. package/dist/cloud-workspace/runtime/directory-attachments.d.ts +0 -28
  223. package/dist/cloud-workspace/runtime/directory-attachments.d.ts.map +0 -1
  224. package/dist/cloud-workspace/runtime/directory-attachments.js +0 -30
  225. package/dist/cloud-workspace/runtime/directory-attachments.js.map +0 -1
  226. package/dist/cloud-workspace/runtime/errors.d.ts +0 -26
  227. package/dist/cloud-workspace/runtime/errors.d.ts.map +0 -1
  228. package/dist/cloud-workspace/runtime/errors.js +0 -40
  229. package/dist/cloud-workspace/runtime/errors.js.map +0 -1
  230. package/dist/cloud-workspace/runtime/events.d.ts +0 -107
  231. package/dist/cloud-workspace/runtime/events.d.ts.map +0 -1
  232. package/dist/cloud-workspace/runtime/events.js +0 -70
  233. package/dist/cloud-workspace/runtime/events.js.map +0 -1
  234. package/dist/cloud-workspace/runtime/execution-admission.d.ts +0 -181
  235. package/dist/cloud-workspace/runtime/execution-admission.d.ts.map +0 -1
  236. package/dist/cloud-workspace/runtime/execution-admission.js +0 -120
  237. package/dist/cloud-workspace/runtime/execution-admission.js.map +0 -1
  238. package/dist/cloud-workspace/runtime/execution-grant.d.ts +0 -36
  239. package/dist/cloud-workspace/runtime/execution-grant.d.ts.map +0 -1
  240. package/dist/cloud-workspace/runtime/execution-grant.js +0 -102
  241. package/dist/cloud-workspace/runtime/execution-grant.js.map +0 -1
  242. package/dist/cloud-workspace/runtime/files-search.d.ts +0 -17
  243. package/dist/cloud-workspace/runtime/files-search.d.ts.map +0 -1
  244. package/dist/cloud-workspace/runtime/files-search.js +0 -14
  245. package/dist/cloud-workspace/runtime/files-search.js.map +0 -1
  246. package/dist/cloud-workspace/runtime/files.d.ts +0 -132
  247. package/dist/cloud-workspace/runtime/files.d.ts.map +0 -1
  248. package/dist/cloud-workspace/runtime/files.js +0 -129
  249. package/dist/cloud-workspace/runtime/files.js.map +0 -1
  250. package/dist/cloud-workspace/runtime/generations.d.ts +0 -18
  251. package/dist/cloud-workspace/runtime/generations.d.ts.map +0 -1
  252. package/dist/cloud-workspace/runtime/generations.js +0 -39
  253. package/dist/cloud-workspace/runtime/generations.js.map +0 -1
  254. package/dist/cloud-workspace/runtime/git-auth-mode.d.ts +0 -35
  255. package/dist/cloud-workspace/runtime/git-auth-mode.d.ts.map +0 -1
  256. package/dist/cloud-workspace/runtime/git-auth-mode.js +0 -73
  257. package/dist/cloud-workspace/runtime/git-auth-mode.js.map +0 -1
  258. package/dist/cloud-workspace/runtime/git.d.ts +0 -147
  259. package/dist/cloud-workspace/runtime/git.d.ts.map +0 -1
  260. package/dist/cloud-workspace/runtime/git.js +0 -128
  261. package/dist/cloud-workspace/runtime/git.js.map +0 -1
  262. package/dist/cloud-workspace/runtime/handshake.d.ts +0 -47
  263. package/dist/cloud-workspace/runtime/handshake.d.ts.map +0 -1
  264. package/dist/cloud-workspace/runtime/handshake.js +0 -31
  265. package/dist/cloud-workspace/runtime/handshake.js.map +0 -1
  266. package/dist/cloud-workspace/runtime/index.d.ts +0 -77
  267. package/dist/cloud-workspace/runtime/index.d.ts.map +0 -1
  268. package/dist/cloud-workspace/runtime/index.js +0 -77
  269. package/dist/cloud-workspace/runtime/index.js.map +0 -1
  270. package/dist/cloud-workspace/runtime/library-attachments.d.ts +0 -120
  271. package/dist/cloud-workspace/runtime/library-attachments.d.ts.map +0 -1
  272. package/dist/cloud-workspace/runtime/library-attachments.js +0 -75
  273. package/dist/cloud-workspace/runtime/library-attachments.js.map +0 -1
  274. package/dist/cloud-workspace/runtime/mcp.d.ts +0 -82
  275. package/dist/cloud-workspace/runtime/mcp.d.ts.map +0 -1
  276. package/dist/cloud-workspace/runtime/mcp.js +0 -48
  277. package/dist/cloud-workspace/runtime/mcp.js.map +0 -1
  278. package/dist/cloud-workspace/runtime/native-history.d.ts +0 -66
  279. package/dist/cloud-workspace/runtime/native-history.d.ts.map +0 -1
  280. package/dist/cloud-workspace/runtime/native-history.js +0 -132
  281. package/dist/cloud-workspace/runtime/native-history.js.map +0 -1
  282. package/dist/cloud-workspace/runtime/operations.d.ts +0 -504
  283. package/dist/cloud-workspace/runtime/operations.d.ts.map +0 -1
  284. package/dist/cloud-workspace/runtime/operations.js +0 -245
  285. package/dist/cloud-workspace/runtime/operations.js.map +0 -1
  286. package/dist/cloud-workspace/runtime/parameter-agent.d.ts +0 -255
  287. package/dist/cloud-workspace/runtime/parameter-agent.d.ts.map +0 -1
  288. package/dist/cloud-workspace/runtime/parameter-agent.js +0 -82
  289. package/dist/cloud-workspace/runtime/parameter-agent.js.map +0 -1
  290. package/dist/cloud-workspace/runtime/parameter-catalog.d.ts +0 -28
  291. package/dist/cloud-workspace/runtime/parameter-catalog.d.ts.map +0 -1
  292. package/dist/cloud-workspace/runtime/parameter-catalog.js +0 -223
  293. package/dist/cloud-workspace/runtime/parameter-catalog.js.map +0 -1
  294. package/dist/cloud-workspace/runtime/parameters.d.ts +0 -66
  295. package/dist/cloud-workspace/runtime/parameters.d.ts.map +0 -1
  296. package/dist/cloud-workspace/runtime/parameters.js +0 -118
  297. package/dist/cloud-workspace/runtime/parameters.js.map +0 -1
  298. package/dist/cloud-workspace/runtime/permissions.d.ts +0 -24
  299. package/dist/cloud-workspace/runtime/permissions.d.ts.map +0 -1
  300. package/dist/cloud-workspace/runtime/permissions.js +0 -19
  301. package/dist/cloud-workspace/runtime/permissions.js.map +0 -1
  302. package/dist/cloud-workspace/runtime/platform-endpoints.d.ts +0 -25
  303. package/dist/cloud-workspace/runtime/platform-endpoints.d.ts.map +0 -1
  304. package/dist/cloud-workspace/runtime/platform-endpoints.js +0 -37
  305. package/dist/cloud-workspace/runtime/platform-endpoints.js.map +0 -1
  306. package/dist/cloud-workspace/runtime/preview-runtime.d.ts +0 -33
  307. package/dist/cloud-workspace/runtime/preview-runtime.d.ts.map +0 -1
  308. package/dist/cloud-workspace/runtime/preview-runtime.js +0 -51
  309. package/dist/cloud-workspace/runtime/preview-runtime.js.map +0 -1
  310. package/dist/cloud-workspace/runtime/previews.d.ts +0 -109
  311. package/dist/cloud-workspace/runtime/previews.d.ts.map +0 -1
  312. package/dist/cloud-workspace/runtime/previews.js +0 -66
  313. package/dist/cloud-workspace/runtime/previews.js.map +0 -1
  314. package/dist/cloud-workspace/runtime/project-native-skills.d.ts +0 -40
  315. package/dist/cloud-workspace/runtime/project-native-skills.d.ts.map +0 -1
  316. package/dist/cloud-workspace/runtime/project-native-skills.js +0 -45
  317. package/dist/cloud-workspace/runtime/project-native-skills.js.map +0 -1
  318. package/dist/cloud-workspace/runtime/protocol.d.ts +0 -23
  319. package/dist/cloud-workspace/runtime/protocol.d.ts.map +0 -1
  320. package/dist/cloud-workspace/runtime/protocol.js +0 -30
  321. package/dist/cloud-workspace/runtime/protocol.js.map +0 -1
  322. package/dist/cloud-workspace/runtime/remix-references.d.ts +0 -197
  323. package/dist/cloud-workspace/runtime/remix-references.d.ts.map +0 -1
  324. package/dist/cloud-workspace/runtime/remix-references.js +0 -73
  325. package/dist/cloud-workspace/runtime/remix-references.js.map +0 -1
  326. package/dist/cloud-workspace/runtime/resource-grant.d.ts +0 -62
  327. package/dist/cloud-workspace/runtime/resource-grant.d.ts.map +0 -1
  328. package/dist/cloud-workspace/runtime/resource-grant.js +0 -87
  329. package/dist/cloud-workspace/runtime/resource-grant.js.map +0 -1
  330. package/dist/cloud-workspace/runtime/self-contained-glb.d.ts +0 -3
  331. package/dist/cloud-workspace/runtime/self-contained-glb.d.ts.map +0 -1
  332. package/dist/cloud-workspace/runtime/self-contained-glb.js +0 -67
  333. package/dist/cloud-workspace/runtime/self-contained-glb.js.map +0 -1
  334. package/dist/cloud-workspace/runtime/session-restore.d.ts +0 -31
  335. package/dist/cloud-workspace/runtime/session-restore.d.ts.map +0 -1
  336. package/dist/cloud-workspace/runtime/session-restore.js +0 -24
  337. package/dist/cloud-workspace/runtime/session-restore.js.map +0 -1
  338. package/dist/cloud-workspace/runtime/skills.d.ts +0 -39
  339. package/dist/cloud-workspace/runtime/skills.d.ts.map +0 -1
  340. package/dist/cloud-workspace/runtime/skills.js +0 -33
  341. package/dist/cloud-workspace/runtime/skills.js.map +0 -1
  342. package/dist/cloud-workspace/runtime/terminal-session.d.ts +0 -78
  343. package/dist/cloud-workspace/runtime/terminal-session.d.ts.map +0 -1
  344. package/dist/cloud-workspace/runtime/terminal-session.js +0 -178
  345. package/dist/cloud-workspace/runtime/terminal-session.js.map +0 -1
  346. package/dist/cloud-workspace/runtime/terminals.d.ts +0 -90
  347. package/dist/cloud-workspace/runtime/terminals.d.ts.map +0 -1
  348. package/dist/cloud-workspace/runtime/terminals.js +0 -111
  349. package/dist/cloud-workspace/runtime/terminals.js.map +0 -1
  350. package/dist/cloud-workspace/runtime/turn-control.d.ts +0 -27
  351. package/dist/cloud-workspace/runtime/turn-control.d.ts.map +0 -1
  352. package/dist/cloud-workspace/runtime/turn-control.js +0 -18
  353. package/dist/cloud-workspace/runtime/turn-control.js.map +0 -1
  354. package/dist/cloud-workspace/runtime/variant-workspace.d.ts +0 -221
  355. package/dist/cloud-workspace/runtime/variant-workspace.d.ts.map +0 -1
  356. package/dist/cloud-workspace/runtime/variant-workspace.js +0 -75
  357. package/dist/cloud-workspace/runtime/variant-workspace.js.map +0 -1
  358. package/dist/cloud-workspace/runtime/workspace-binding.d.ts +0 -219
  359. package/dist/cloud-workspace/runtime/workspace-binding.d.ts.map +0 -1
  360. package/dist/cloud-workspace/runtime/workspace-binding.js +0 -178
  361. package/dist/cloud-workspace/runtime/workspace-binding.js.map +0 -1
  362. package/dist/cloud-workspace/runtime/workspace-directories.d.ts +0 -44
  363. package/dist/cloud-workspace/runtime/workspace-directories.d.ts.map +0 -1
  364. package/dist/cloud-workspace/runtime/workspace-directories.js +0 -34
  365. package/dist/cloud-workspace/runtime/workspace-directories.js.map +0 -1
  366. package/dist/cloud-workspace/runtime/workspace-models.d.ts +0 -31
  367. package/dist/cloud-workspace/runtime/workspace-models.d.ts.map +0 -1
  368. package/dist/cloud-workspace/runtime/workspace-models.js +0 -63
  369. package/dist/cloud-workspace/runtime/workspace-models.js.map +0 -1
  370. package/dist/cloud-workspace/runtime/workspace-notifications.d.ts +0 -37
  371. package/dist/cloud-workspace/runtime/workspace-notifications.d.ts.map +0 -1
  372. package/dist/cloud-workspace/runtime/workspace-notifications.js +0 -90
  373. package/dist/cloud-workspace/runtime/workspace-notifications.js.map +0 -1
  374. package/dist/cloud-workspace/runtime/workspace-ui.d.ts +0 -252
  375. package/dist/cloud-workspace/runtime/workspace-ui.d.ts.map +0 -1
  376. package/dist/cloud-workspace/runtime/workspace-ui.js +0 -94
  377. package/dist/cloud-workspace/runtime/workspace-ui.js.map +0 -1
  378. package/dist/database/operators.d.ts +0 -2
  379. package/dist/database/operators.d.ts.map +0 -1
  380. package/dist/database/operators.js +0 -2
  381. package/dist/database/operators.js.map +0 -1
  382. package/dist/model-proxy/index.d.ts +0 -26
  383. package/dist/model-proxy/index.d.ts.map +0 -1
  384. package/dist/model-proxy/index.js +0 -81
  385. package/dist/model-proxy/index.js.map +0 -1
  386. package/dist/project-skills/bundle-archive.d.ts +0 -21
  387. package/dist/project-skills/bundle-archive.d.ts.map +0 -1
  388. package/dist/project-skills/bundle-archive.js +0 -165
  389. package/dist/project-skills/bundle-archive.js.map +0 -1
  390. package/dist/project-skills/bundle-path.d.ts +0 -3
  391. package/dist/project-skills/bundle-path.d.ts.map +0 -1
  392. package/dist/project-skills/bundle-path.js +0 -17
  393. package/dist/project-skills/bundle-path.js.map +0 -1
  394. package/dist/project-skills/evidence.d.ts +0 -15
  395. package/dist/project-skills/evidence.d.ts.map +0 -1
  396. package/dist/project-skills/evidence.js +0 -33
  397. package/dist/project-skills/evidence.js.map +0 -1
  398. package/dist/project-skills/index.d.ts +0 -7
  399. package/dist/project-skills/index.d.ts.map +0 -1
  400. package/dist/project-skills/index.js +0 -7
  401. package/dist/project-skills/index.js.map +0 -1
  402. package/dist/project-skills/inventory.d.ts +0 -23
  403. package/dist/project-skills/inventory.d.ts.map +0 -1
  404. package/dist/project-skills/inventory.js +0 -150
  405. package/dist/project-skills/inventory.js.map +0 -1
  406. package/dist/project-skills/local-snapshot.d.ts +0 -12
  407. package/dist/project-skills/local-snapshot.d.ts.map +0 -1
  408. package/dist/project-skills/local-snapshot.js +0 -66
  409. package/dist/project-skills/local-snapshot.js.map +0 -1
  410. package/dist/project-skills/protocol.d.ts +0 -31
  411. package/dist/project-skills/protocol.d.ts.map +0 -1
  412. package/dist/project-skills/protocol.js +0 -197
  413. package/dist/project-skills/protocol.js.map +0 -1
  414. package/dist/project-skills/runtime-plugin.d.ts +0 -66
  415. package/dist/project-skills/runtime-plugin.d.ts.map +0 -1
  416. package/dist/project-skills/runtime-plugin.js +0 -102
  417. package/dist/project-skills/runtime-plugin.js.map +0 -1
  418. package/dist/project-skills/types.d.ts +0 -63
  419. package/dist/project-skills/types.d.ts.map +0 -1
  420. package/dist/project-skills/types.js +0 -13
  421. package/dist/project-skills/types.js.map +0 -1
  422. package/dist/remix/auto-name.d.ts +0 -24
  423. package/dist/remix/auto-name.d.ts.map +0 -1
  424. package/dist/remix/auto-name.js +0 -40
  425. package/dist/remix/auto-name.js.map +0 -1
  426. package/dist/remix/index.d.ts +0 -2
  427. package/dist/remix/index.d.ts.map +0 -1
  428. package/dist/remix/index.js +0 -2
  429. package/dist/remix/index.js.map +0 -1
  430. package/dist/skill-evaluation.d.ts +0 -152
  431. package/dist/skill-evaluation.d.ts.map +0 -1
  432. package/dist/skill-evaluation.js +0 -14
  433. package/dist/skill-evaluation.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"asset-generation.d.ts","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/asset-generation.ts"],"names":[],"mappings":"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"}
@@ -1,175 +0,0 @@
1
- import { z } from 'zod';
2
- import { workspaceRelativePathSchema } from './files.js';
3
- import { workspaceSessionScopeSchema } from './workspace-directories.js';
4
- import { isAttachmentBase64 } from './attachment-base64.js';
5
- import { assetGenerationBundleSchema, assetGenerationFrameCountSchema, assetGenerationFrameSizeSchema } from './asset-generation-bundle.js';
6
- import { ASSET_GENERATION_VIDEO_MAX_BYTES, assetGenerationVideoJobSchema, assetGenerationVideoOptions, validateAssetGenerationVideoOptions } from './asset-generation-video.js';
7
- const amount = z.number().int().nonnegative().max(Number.MAX_SAFE_INTEGER);
8
- const tokens = amount.nullable();
9
- const modelRef = z.string().trim().min(1).max(256);
10
- const ratio = z.enum(['1:1', '16:9', '9:16', '4:3', '3:4']);
11
- const imageFormat = z.enum(['png', 'webp', 'jpeg']);
12
- export const ASSET_GENERATION_REFERENCE_MAX_BYTES = 10 * 1024 * 1024;
13
- export const ASSET_GENERATION_REQUEST_MAX_BYTES = 4 * Math.ceil(ASSET_GENERATION_REFERENCE_MAX_BYTES / 3) + 64 * 1024;
14
- const referenceImage = z.string().min(1).max(4 * Math.ceil(ASSET_GENERATION_REFERENCE_MAX_BYTES / 3))
15
- .refine(isAttachmentBase64, 'invalid_reference_image')
16
- .refine(value => value.length / 4 * 3 - (value.endsWith('==') ? 2 : value.endsWith('=') ? 1 : 0) <= ASSET_GENERATION_REFERENCE_MAX_BYTES, 'reference_image_too_large');
17
- const referenceMimeType = z.enum(['image/png', 'image/jpeg', 'image/webp']);
18
- const frameOptions = {
19
- imageModelRef: modelRef.optional(), frameCount: assetGenerationFrameCountSchema,
20
- frameWidth: assetGenerationFrameSizeSchema, frameHeight: assetGenerationFrameSizeSchema,
21
- columns: z.number().int().min(1).max(8), fps: z.number().int().min(1).max(60),
22
- removeBackground: z.boolean().optional(),
23
- };
24
- const frameRequestOptions = { ...frameOptions, prompt: z.string().trim().min(1).max(4000),
25
- referenceImageBase64: referenceImage.optional(), referenceImageMimeType: referenceMimeType.optional() };
26
- function validateSheet(request, context) {
27
- if (request.kind !== 'sprite' && request.kind !== 'animation')
28
- return;
29
- if (request.columns > request.frameCount || request.frameWidth * request.columns > 4096
30
- || request.frameHeight * Math.ceil(request.frameCount / request.columns) > 4096)
31
- context.addIssue({ code: 'custom', message: 'generation_sheet_too_large', path: ['columns'] });
32
- }
33
- export const assetGenerationRequestSchema = z.discriminatedUnion('kind', [
34
- z.object({ kind: z.literal('video'), ...assetGenerationVideoOptions, prompt: z.string().trim().min(1).max(4000),
35
- referenceImageBase64: referenceImage.optional(), referenceImageMimeType: referenceMimeType.optional() }).strict(),
36
- z.object({ kind: z.literal('sprite'), ...frameRequestOptions }).strict(),
37
- z.object({ kind: z.literal('animation'), ...frameRequestOptions }).strict(),
38
- z.object({
39
- kind: z.literal('image'), prompt: z.string().trim().min(1).max(4000),
40
- imageModelRef: modelRef.optional(), aspectRatio: ratio.optional(),
41
- width: z.number().int().min(1).max(4096).optional(), height: z.number().int().min(1).max(4096).optional(),
42
- format: imageFormat.optional(), removeBackground: z.boolean().optional(),
43
- referenceImageBase64: referenceImage.optional(),
44
- referenceImageMimeType: referenceMimeType.optional(),
45
- }).strict(),
46
- z.object({
47
- kind: z.literal('audio'), category: z.enum(['sfx', 'bgm']), description: z.string().trim().min(1).max(800),
48
- duration: z.number().min(0.5).max(22).optional(), loop: z.boolean().optional(),
49
- style: z.string().trim().min(1).max(64).optional(), bpm: z.number().int().min(60).max(200).optional(),
50
- }).strict(),
51
- z.object({
52
- kind: z.literal('model'), mode: z.enum(['text', 'reference']), modelRef: modelRef.optional(),
53
- prompt: z.string().trim().max(1024).optional(), referenceImageBase64: referenceImage.optional(),
54
- referenceImageMimeType: referenceMimeType.optional(),
55
- }).strict(),
56
- ]).superRefine((request, context) => {
57
- validateSheet(request, context);
58
- if (request.kind === 'audio' && request.category === 'sfx' && request.description.length > 200)
59
- context.addIssue({ code: z.ZodIssueCode.custom, message: 'audio_description_too_long', path: ['description'] });
60
- if (request.kind !== 'audio' && Boolean(request.referenceImageBase64) !== Boolean(request.referenceImageMimeType))
61
- context.addIssue({ code: z.ZodIssueCode.custom, message: 'reference_image_metadata_required' });
62
- if (request.kind === 'model') {
63
- if (request.mode === 'text' && (!request.prompt || request.referenceImageBase64))
64
- context.addIssue({ code: z.ZodIssueCode.custom, message: 'model_text_prompt_required' });
65
- if (request.mode === 'reference' && !request.referenceImageBase64)
66
- context.addIssue({ code: z.ZodIssueCode.custom, message: 'model_reference_image_required' });
67
- }
68
- if (request.kind === 'video') {
69
- validateAssetGenerationVideoOptions(request, context);
70
- if (request.mode === 'text' && request.referenceImageBase64)
71
- context.addIssue({ code: 'custom', message: 'video_text_reference_not_allowed' });
72
- if (request.mode === 'reference' && !request.referenceImageBase64)
73
- context.addIssue({ code: 'custom', message: 'video_reference_image_required' });
74
- }
75
- });
76
- export const assetGenerationEstimateInputSchema = z.discriminatedUnion('kind', [
77
- z.object({ kind: z.literal('video'), ...assetGenerationVideoOptions }).strict(),
78
- z.object({ kind: z.literal('sprite'), ...frameOptions, referenceImageCount: z.number().int().min(0).max(1).optional() }).strict(),
79
- z.object({ kind: z.literal('animation'), ...frameOptions, referenceImageCount: z.number().int().min(0).max(1).optional() }).strict(),
80
- z.object({
81
- kind: z.literal('image'), imageModelRef: modelRef.optional(), aspectRatio: ratio.optional(),
82
- width: z.number().int().min(1).max(4096).optional(), height: z.number().int().min(1).max(4096).optional(),
83
- format: imageFormat.optional(), removeBackground: z.boolean().optional(),
84
- referenceImageCount: z.number().int().min(0).max(1).optional(),
85
- }).strict(),
86
- z.object({
87
- kind: z.literal('audio'), category: z.enum(['sfx', 'bgm']), duration: z.number().min(0.5).max(22).optional(),
88
- loop: z.boolean().optional(), style: z.string().trim().min(1).max(64).optional(),
89
- bpm: z.number().int().min(60).max(200).optional(),
90
- }).strict(),
91
- z.object({ kind: z.literal('model'), modelRef: modelRef.optional(), referenceImageCount: z.number().int().min(0).max(1).optional() }).strict(),
92
- ]).superRefine((request, context) => {
93
- validateSheet(request, context);
94
- if (request.kind === 'video')
95
- validateAssetGenerationVideoOptions(request, context);
96
- });
97
- const unitsSchema = z.object({ calls: amount.optional(), images: amount.optional(), seconds: z.number().finite().nonnegative().optional() }).strict();
98
- export const assetGenerationEstimateSchema = z.object({
99
- status: z.enum(['estimated', 'unknown']), currency: z.literal('USD'), costMicros: amount.nullable(),
100
- basis: z.enum(['per_call', 'per_second', 'token_based', 'unconfigured']),
101
- provider: z.string().min(1).max(128).optional(), model: modelRef.optional(), units: unitsSchema.optional(),
102
- reason: z.string().min(1).max(128).optional(),
103
- }).strict().superRefine((value, context) => {
104
- if (value.status === 'unknown' && value.costMicros !== null || value.status === 'estimated' && value.costMicros === null)
105
- context.addIssue({ code: z.ZodIssueCode.custom, message: 'invalid_generation_estimate' });
106
- });
107
- export const assetGenerationUsageAttemptSchema = z.object({
108
- provider: z.string().min(1).max(128), model: modelRef,
109
- status: z.enum(['pending', 'success', 'error']), costMicros: amount.nullable(),
110
- inputTokens: tokens, outputTokens: tokens, totalTokens: tokens,
111
- units: unitsSchema.optional(),
112
- }).strict();
113
- export const assetGenerationUsageSchema = z.object({
114
- status: z.enum(['pending', 'recorded', 'partial', 'unavailable']), currency: z.literal('USD'), costMicros: amount.nullable(),
115
- requestCount: amount, inputTokens: tokens, outputTokens: tokens, totalTokens: tokens,
116
- units: unitsSchema.optional(), attempts: z.array(assetGenerationUsageAttemptSchema).max(64),
117
- reason: z.string().min(1).max(128).optional(),
118
- }).strict();
119
- export const ASSET_GENERATION_TASK_STATUSES = ['queued', 'running', 'cancel_requested', 'awaiting_adoption', 'saved', 'failed', 'cancelled', 'interrupted'];
120
- export const assetGenerationTaskSchema = z.object({
121
- taskId: z.string().uuid(), workspaceId: z.string().min(1).max(128), directoryName: workspaceSessionScopeSchema,
122
- clientRequestId: z.string().min(1).max(128).optional(),
123
- kind: z.enum(['image', 'audio', 'model', 'sprite', 'animation', 'video']), prompt: z.string().max(4000), status: z.enum(ASSET_GENERATION_TASK_STATUSES),
124
- createdAt: z.string().datetime(), updatedAt: z.string().datetime(),
125
- startedAt: z.string().datetime().optional(), completedAt: z.string().datetime().optional(), cancelRequestedAt: z.string().datetime().optional(),
126
- estimate: assetGenerationEstimateSchema, usage: assetGenerationUsageSchema,
127
- output: z.object({ name: z.string().min(1).max(256), mimeType: z.string().min(1).max(128), size: amount,
128
- contentHash: z.string().regex(/^[a-f0-9]{64}$/) }).strict().optional(),
129
- bundle: assetGenerationBundleSchema.optional(),
130
- saved: z.object({ path: workspaceRelativePathSchema, operationId: z.string().min(1).max(128), savedAt: z.string().datetime() }).strict().optional(),
131
- error: z.string().min(1).max(256).optional(),
132
- }).strict().superRefine((task, context) => {
133
- if (task.kind === 'video' && ['awaiting_adoption', 'saved'].includes(task.status) && !task.output)
134
- context.addIssue({ code: 'custom', message: 'asset_generation_video_output_required' });
135
- if (task.kind === 'video' && task.output && (task.output.mimeType !== 'video/mp4' || task.output.size <= 0 || task.output.size > ASSET_GENERATION_VIDEO_MAX_BYTES))
136
- context.addIssue({ code: 'custom', message: 'asset_generation_invalid_video_result' });
137
- const requiresBundle = task.kind === 'sprite' || task.kind === 'animation';
138
- if (requiresBundle && ['awaiting_adoption', 'saved'].includes(task.status) && (!task.bundle || !task.output))
139
- context.addIssue({ code: 'custom', message: 'generation_bundle_required' });
140
- if (task.bundle) {
141
- const entry = task.bundle.files.find(file => file.path === task.bundle.entryPath);
142
- if (!requiresBundle || !entry || !task.output || task.output.name !== entry.path.split('/').at(-1)
143
- || task.output.mimeType !== entry.mimeType || task.output.size !== entry.size || task.output.contentHash !== entry.contentHash)
144
- context.addIssue({ code: 'custom', message: 'generation_bundle_output_mismatch' });
145
- }
146
- });
147
- export const assetGenerationTaskListSchema = z.object({ tasks: z.array(assetGenerationTaskSchema).max(200) }).strict();
148
- export const assetGenerationTaskCreateSchema = z.object({ clientRequestId: z.string().trim().min(1).max(128), request: assetGenerationRequestSchema }).strict();
149
- export const assetGenerationTaskSavedSchema = z.object({ operationId: z.string().min(1).max(128), path: workspaceRelativePathSchema }).strict();
150
- export const assetGenerationModelJobSchema = z.object({
151
- provider: z.literal('tencent-cloud'), model: z.enum(['hy-3d-3.0', 'hy-3d-3.1', 'hy-3d-express']),
152
- configId: z.string().min(1).max(128), jobId: z.string().regex(/^[A-Za-z0-9_.:-]{1,256}$/), submittedAt: z.string().datetime(),
153
- }).strict();
154
- export const assetGenerationModelQuerySchema = z.object({
155
- status: z.enum(['queued', 'running', 'completed', 'failed']), usage: assetGenerationUsageSchema.optional(),
156
- error: z.string().min(1).max(256).optional(),
157
- }).strict();
158
- export const assetGenerationProviderJobSchema = z.union([assetGenerationModelJobSchema, assetGenerationVideoJobSchema]);
159
- export const assetGenerationVideoQuerySchema = assetGenerationModelQuerySchema;
160
- export function assetGenerationEstimateInput(request) {
161
- if (request.kind === 'video') {
162
- const { prompt: _prompt, referenceImageBase64: _reference, referenceImageMimeType: _mime, ...input } = request;
163
- return assetGenerationEstimateInputSchema.parse(input);
164
- }
165
- if (request.kind === 'model')
166
- return assetGenerationEstimateInputSchema.parse({ kind: request.kind,
167
- ...(request.modelRef ? { modelRef: request.modelRef } : {}), referenceImageCount: request.referenceImageBase64 ? 1 : 0 });
168
- if (request.kind === 'audio') {
169
- const { description: _description, ...input } = request;
170
- return assetGenerationEstimateInputSchema.parse(input);
171
- }
172
- const { prompt: _prompt, referenceImageBase64, referenceImageMimeType: _mime, ...input } = request;
173
- return assetGenerationEstimateInputSchema.parse({ ...input, referenceImageCount: referenceImageBase64 ? 1 : 0 });
174
- }
175
- //# sourceMappingURL=asset-generation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"asset-generation.js","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/asset-generation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,+BAA+B,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAC5I,OAAO,EAAE,gCAAgC,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,mCAAmC,EAAE,MAAM,6BAA6B,CAAC;AAEhL,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAC3E,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;AACjC,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACnD,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAC5D,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AACpD,MAAM,CAAC,MAAM,oCAAoC,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AACrE,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,oCAAoC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AACtH,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,oCAAoC,GAAG,CAAC,CAAC,CAAC;KAClG,MAAM,CAAC,kBAAkB,EAAE,yBAAyB,CAAC;KACrD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,oCAAoC,EAAE,2BAA2B,CAAC,CAAC;AACzK,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;AAC5E,MAAM,YAAY,GAAG;IACnB,aAAa,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,+BAA+B;IAC/E,UAAU,EAAE,8BAA8B,EAAE,WAAW,EAAE,8BAA8B;IACvF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IAC7E,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACzC,CAAC;AACF,MAAM,mBAAmB,GAAG,EAAE,GAAG,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;IACvF,oBAAoB,EAAE,cAAc,CAAC,QAAQ,EAAE,EAAE,sBAAsB,EAAE,iBAAiB,CAAC,QAAQ,EAAE,EAAE,CAAC;AAC1G,SAAS,aAAa,CAAC,OAA2G,EAAE,OAAwB;IAC1J,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO;IACtE,IAAI,OAAO,CAAC,OAAQ,GAAG,OAAO,CAAC,UAAW,IAAI,OAAO,CAAC,UAAW,GAAG,OAAO,CAAC,OAAQ,GAAG,IAAI;WACtF,OAAO,CAAC,WAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAW,GAAG,OAAO,CAAC,OAAQ,CAAC,GAAG,IAAI;QAClF,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,4BAA4B,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;AACnG,CAAC;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACvE,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,GAAG,2BAA2B,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;QAC7G,oBAAoB,EAAE,cAAc,CAAC,QAAQ,EAAE,EAAE,sBAAsB,EAAE,iBAAiB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACnH,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,GAAG,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE;IACxE,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,GAAG,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE;IAC3E,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;QACpE,aAAa,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,QAAQ,EAAE;QACjE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;QACzG,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;QACxE,oBAAoB,EAAE,cAAc,CAAC,QAAQ,EAAE;QAC/C,sBAAsB,EAAE,iBAAiB,CAAC,QAAQ,EAAE;KACrD,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;QAC1G,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;QAC9E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;KACtG,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE;QAC5F,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,oBAAoB,EAAE,cAAc,CAAC,QAAQ,EAAE;QAC/F,sBAAsB,EAAE,iBAAiB,CAAC,QAAQ,EAAE;KACrD,CAAC,CAAC,MAAM,EAAE;CACZ,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;IAClC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,CAAC,QAAQ,KAAK,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,GAAG;QAC5F,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,4BAA4B,EAAE,IAAI,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAClH,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC;QAC/G,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,mCAAmC,EAAE,CAAC,CAAC;IAClG,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,oBAAoB,CAAC;YAC9E,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC;QAC3F,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,OAAO,CAAC,oBAAoB;YAC/D,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,gCAAgC,EAAE,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC7B,mCAAmC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACtD,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,oBAAoB;YACzD,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,kCAAkC,EAAE,CAAC,CAAC;QACpF,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,OAAO,CAAC,oBAAoB;YAC/D,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,gCAAgC,EAAE,CAAC,CAAC;IACpF,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC7E,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,GAAG,2BAA2B,EAAE,CAAC,CAAC,MAAM,EAAE;IAC/E,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,GAAG,YAAY,EAAE,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACjI,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,GAAG,YAAY,EAAE,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACpI,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,QAAQ,EAAE;QAC3F,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;QACzG,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;QACxE,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;KAC/D,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;QAC5G,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;QAChF,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;KAClD,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;CAC/I,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;IAClC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO;QAAE,mCAAmC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACtF,CAAC,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AACtJ,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,QAAQ,EAAE;IACnG,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;IACxE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE;IAC1G,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CAC9C,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACzC,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,IAAI,KAAK,CAAC,UAAU,KAAK,IAAI;QACtH,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC,CAAC;AAC9F,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC;IACxD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ;IACrD,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,QAAQ,EAAE;IAC9E,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAC9D,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC,MAAM,EAAE,CAAC;AACZ,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,QAAQ,EAAE;IAC5H,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IACpF,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IAC3F,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CAC9C,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,CAAU,CAAC;AACrK,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,aAAa,EAAE,2BAA2B;IAC9G,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACtD,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,8BAA8B,CAAC;IACvJ,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC/I,QAAQ,EAAE,6BAA6B,EAAE,KAAK,EAAE,0BAA0B;IAC1E,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM;QACrG,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxE,MAAM,EAAE,2BAA2B,CAAC,QAAQ,EAAE;IAC9C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnJ,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IACxC,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;QAC/F,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,wCAAwC,EAAE,CAAC,CAAC;IAC1F,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,gCAAgC,CAAC;QAChK,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,uCAAuC,EAAE,CAAC,CAAC;IACzF,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC;IAC3E,IAAI,cAAc,IAAI,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QAC1G,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC;IAC9E,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,MAAO,CAAC,SAAS,CAAC,CAAC;QACnF,IAAI,CAAC,cAAc,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;eAC7F,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,KAAK,CAAC,WAAW;YAC9H,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,mCAAmC,EAAE,CAAC,CAAC;IACvF,CAAC;AACH,CAAC,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AACvH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAChK,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAEhJ,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;IAChG,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,0BAA0B,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9H,CAAC,CAAC,MAAM,EAAE,CAAC;AACZ,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,0BAA0B,CAAC,QAAQ,EAAE;IAC1G,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC,MAAM,EAAE,CAAC;AACZ,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,6BAA6B,EAAE,6BAA6B,CAAC,CAAC,CAAC;AACxH,MAAM,CAAC,MAAM,+BAA+B,GAAG,+BAA+B,CAAC;AAa/E,MAAM,UAAU,4BAA4B,CAAC,OAA+B;IAC1E,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC7B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,sBAAsB,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;QAC/G,OAAO,kCAAkC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,kCAAkC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI;YAChG,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,mBAAmB,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5H,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC7B,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;QACxD,OAAO,kCAAkC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IACnG,OAAO,kCAAkC,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACnH,CAAC"}
@@ -1,73 +0,0 @@
1
- import { z } from 'zod';
2
- export declare const WORKSPACE_ASSET_LIBRARY_IMPORT_BODY_MAX_BYTES: number;
3
- export declare const workspaceAssetLibraryImportPayloadSchema: z.ZodObject<{
4
- assetIds: z.ZodArray<z.ZodString>;
5
- targetDirectory: z.ZodUnion<readonly [z.ZodLiteral<"">, z.ZodString]>;
6
- collision: z.ZodEnum<{
7
- replace: "replace";
8
- rename: "rename";
9
- skip: "skip";
10
- }>;
11
- }, z.core.$strict>;
12
- export declare const workspaceAssetLibraryImportResultSchema: z.ZodObject<{
13
- paths: z.ZodArray<z.ZodString>;
14
- skippedPaths: z.ZodArray<z.ZodString>;
15
- failures: z.ZodArray<z.ZodObject<{
16
- assetId: z.ZodString;
17
- error: z.ZodString;
18
- }, z.core.$strict>>;
19
- bundleReceipt: z.ZodOptional<z.ZodObject<{
20
- transferId: z.ZodString;
21
- manifestHash: z.ZodString;
22
- files: z.ZodArray<z.ZodObject<{
23
- path: z.ZodString;
24
- size: z.ZodNumber;
25
- contentHash: z.ZodString;
26
- }, z.core.$strict>>;
27
- directories: z.ZodOptional<z.ZodArray<z.ZodString>>;
28
- }, z.core.$strict>>;
29
- directoryMutation: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
30
- kind: z.ZodLiteral<"directory.rename">;
31
- newPath: z.ZodString;
32
- operationId: z.ZodString;
33
- path: z.ZodString;
34
- revision: z.ZodNumber;
35
- }, z.core.$strict>, z.ZodObject<{
36
- kind: z.ZodLiteral<"directory.delete">;
37
- recoveryPath: z.ZodOptional<z.ZodString>;
38
- operationId: z.ZodString;
39
- path: z.ZodString;
40
- revision: z.ZodNumber;
41
- }, z.core.$strict>], "kind">>;
42
- }, z.core.$strict>;
43
- export declare const workspaceAssetLibraryImportTransportSchema: z.ZodObject<{
44
- assets: z.ZodArray<z.ZodObject<{
45
- assetId: z.ZodString;
46
- name: z.ZodString;
47
- libraryPath: z.ZodString;
48
- visibility: z.ZodEnum<{
49
- public: "public";
50
- team: "team";
51
- }>;
52
- teamId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
53
- kind: z.ZodEnum<{
54
- file: "file";
55
- bundle: "bundle";
56
- }>;
57
- files: z.ZodArray<z.ZodObject<{
58
- path: z.ZodString;
59
- content: z.ZodString;
60
- mimeType: z.ZodString;
61
- sha256: z.ZodString;
62
- }, z.core.$strict>>;
63
- contentHash: z.ZodString;
64
- }, z.core.$strict>>;
65
- failures: z.ZodArray<z.ZodObject<{
66
- assetId: z.ZodString;
67
- error: z.ZodString;
68
- }, z.core.$strict>>;
69
- }, z.core.$strict>;
70
- export type WorkspaceAssetLibraryImportPayload = z.infer<typeof workspaceAssetLibraryImportPayloadSchema>;
71
- export type WorkspaceAssetLibraryImportResult = z.infer<typeof workspaceAssetLibraryImportResultSchema>;
72
- export type WorkspaceAssetLibraryImportTransport = z.infer<typeof workspaceAssetLibraryImportTransportSchema>;
73
- //# sourceMappingURL=asset-library-import.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"asset-library-import.d.ts","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/asset-library-import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,6CAA6C,QAA+E,CAAC;AAK1I,eAAO,MAAM,wCAAwC;;;;;;;;kBAK1C,CAAC;AAEZ,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBASlD,CAAC;AAEH,eAAO,MAAM,0CAA0C;;;;;;;;;;;;;;;;;;;;;;;;;;kBAUrD,CAAC;AAEH,MAAM,MAAM,kCAAkC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wCAAwC,CAAC,CAAC;AAC1G,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uCAAuC,CAAC,CAAC;AACxG,MAAM,MAAM,oCAAoC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0CAA0C,CAAC,CAAC"}
@@ -1,37 +0,0 @@
1
- import { z } from 'zod';
2
- import { workspaceRelativePathSchema } from './files.js';
3
- import { ASSET_TRANSFER_MAX_FILES, assetBundleReceiptSchema } from './asset-transfers.js';
4
- import { directoryMutationReceiptSchema } from './directories.js';
5
- import { WORKSPACE_ATTACHMENT_MAX_COUNT } from './attachments.js';
6
- import { WORKSPACE_LIBRARY_ATTACHMENT_MAX_BYTES, WORKSPACE_LIBRARY_ATTACHMENT_MAX_FILES, workspaceLibraryAssetExportSchema } from './library-attachments.js';
7
- export const WORKSPACE_ASSET_LIBRARY_IMPORT_BODY_MAX_BYTES = 4 * Math.ceil(WORKSPACE_LIBRARY_ATTACHMENT_MAX_BYTES / 3) + 32 * 1024 * 1024;
8
- const failureSchema = z.object({ assetId: z.string().min(1).max(128), error: z.string().min(1).max(256) }).strict();
9
- const libraryResultPathLimit = WORKSPACE_ATTACHMENT_MAX_COUNT * WORKSPACE_LIBRARY_ATTACHMENT_MAX_FILES;
10
- const bundleResultPathLimit = 2 * ASSET_TRANSFER_MAX_FILES;
11
- export const workspaceAssetLibraryImportPayloadSchema = z.object({
12
- assetIds: z.array(z.string().min(1).max(128)).min(1).max(WORKSPACE_ATTACHMENT_MAX_COUNT)
13
- .refine(ids => new Set(ids).size === ids.length, 'duplicate_library_asset'),
14
- targetDirectory: z.union([z.literal(''), workspaceRelativePathSchema]),
15
- collision: z.enum(['rename', 'skip', 'replace']),
16
- }).strict();
17
- export const workspaceAssetLibraryImportResultSchema = z.object({
18
- paths: z.array(workspaceRelativePathSchema).max(Math.max(libraryResultPathLimit, bundleResultPathLimit)),
19
- skippedPaths: z.array(workspaceRelativePathSchema).max(WORKSPACE_ATTACHMENT_MAX_COUNT),
20
- failures: z.array(failureSchema).max(WORKSPACE_ATTACHMENT_MAX_COUNT),
21
- bundleReceipt: assetBundleReceiptSchema.optional(),
22
- directoryMutation: directoryMutationReceiptSchema.optional(),
23
- }).strict().superRefine((result, context) => {
24
- if (!result.bundleReceipt && result.paths.length > libraryResultPathLimit)
25
- context.addIssue({ code: 'custom', message: 'too_many_library_result_paths', path: ['paths'] });
26
- });
27
- export const workspaceAssetLibraryImportTransportSchema = z.object({
28
- assets: z.array(workspaceLibraryAssetExportSchema).max(WORKSPACE_ATTACHMENT_MAX_COUNT),
29
- failures: z.array(failureSchema).max(WORKSPACE_ATTACHMENT_MAX_COUNT),
30
- }).strict().superRefine((input, context) => {
31
- const ids = [...input.assets.map(asset => asset.assetId), ...input.failures.map(failure => failure.assetId)];
32
- if (ids.length > WORKSPACE_ATTACHMENT_MAX_COUNT || new Set(ids).size !== ids.length)
33
- context.addIssue({ code: 'custom', message: 'duplicate_library_asset' });
34
- if (input.assets.reduce((total, asset) => total + asset.files.reduce((size, file) => size + Buffer.byteLength(file.content, 'base64'), 0), 0) > WORKSPACE_LIBRARY_ATTACHMENT_MAX_BYTES)
35
- context.addIssue({ code: 'custom', message: 'library_asset_too_large' });
36
- });
37
- //# sourceMappingURL=asset-library-import.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"asset-library-import.js","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/asset-library-import.ts"],"names":[],"mappings":"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"}
@@ -1,92 +0,0 @@
1
- import { z } from 'zod';
2
- export declare const ASSET_TRANSFER_CHUNK_BYTES: number;
3
- export declare const ASSET_TRANSFER_FILE_MAX_BYTES: number;
4
- export declare const ASSET_TRANSFER_MAX_BYTES: number;
5
- export declare const ASSET_TRANSFER_MAX_FILES = 4096;
6
- export declare const ASSET_TRANSFER_BODY_MAX_BYTES: number;
7
- export declare const ASSET_TRANSFER_CHUNK_BODY_MAX_BYTES: number;
8
- export declare const assetTransferManifestSchema: z.ZodObject<{
9
- transferId: z.ZodString;
10
- files: z.ZodArray<z.ZodObject<{
11
- path: z.ZodString;
12
- size: z.ZodNumber;
13
- chunkHashes: z.ZodArray<z.ZodString>;
14
- contentHash: z.ZodOptional<z.ZodString>;
15
- expectedContentHash: z.ZodNullable<z.ZodString>;
16
- expectedRevision: z.ZodOptional<z.ZodNumber>;
17
- source: z.ZodOptional<z.ZodObject<{
18
- path: z.ZodString;
19
- contentHash: z.ZodString;
20
- }, z.core.$strict>>;
21
- processing: z.ZodOptional<z.ZodObject<{
22
- tool: z.ZodEnum<{
23
- "image.compress": "image.compress";
24
- "image.crop": "image.crop";
25
- "image.layers": "image.layers";
26
- "audio.edit": "audio.edit";
27
- "model.pack": "model.pack";
28
- "model.screenshot": "model.screenshot";
29
- "texture.export": "texture.export";
30
- "batch.image": "batch.image";
31
- "batch.audio": "batch.audio";
32
- }>;
33
- sourcePath: z.ZodString;
34
- sourceHash: z.ZodOptional<z.ZodString>;
35
- batchId: z.ZodOptional<z.ZodString>;
36
- }, z.core.$strict>>;
37
- }, z.core.$strict>>;
38
- directories: z.ZodOptional<z.ZodArray<z.ZodString>>;
39
- }, z.core.$strict>;
40
- export declare const assetTransferChunkSchema: z.ZodObject<{
41
- fileIndex: z.ZodNumber;
42
- chunkIndex: z.ZodNumber;
43
- contentBase64: z.ZodString;
44
- }, z.core.$strict>;
45
- export declare const assetBundleSavePayloadSchema: z.ZodObject<{
46
- transferId: z.ZodString;
47
- manifestHash: z.ZodString;
48
- }, z.core.$strict>;
49
- export declare const assetBundleReceiptSchema: z.ZodObject<{
50
- transferId: z.ZodString;
51
- manifestHash: z.ZodString;
52
- files: z.ZodArray<z.ZodObject<{
53
- path: z.ZodString;
54
- size: z.ZodNumber;
55
- contentHash: z.ZodString;
56
- }, z.core.$strict>>;
57
- directories: z.ZodOptional<z.ZodArray<z.ZodString>>;
58
- }, z.core.$strict>;
59
- export declare const assetTransferStatusSchema: z.ZodObject<{
60
- transferId: z.ZodString;
61
- manifestHash: z.ZodString;
62
- status: z.ZodEnum<{
63
- completed: "completed";
64
- uploading: "uploading";
65
- ready: "ready";
66
- publishing: "publishing";
67
- }>;
68
- files: z.ZodArray<z.ZodObject<{
69
- fileIndex: z.ZodNumber;
70
- receivedChunks: z.ZodArray<z.ZodNumber>;
71
- }, z.core.$strict>>;
72
- receipt: z.ZodOptional<z.ZodObject<{
73
- transferId: z.ZodString;
74
- manifestHash: z.ZodString;
75
- files: z.ZodArray<z.ZodObject<{
76
- path: z.ZodString;
77
- size: z.ZodNumber;
78
- contentHash: z.ZodString;
79
- }, z.core.$strict>>;
80
- directories: z.ZodOptional<z.ZodArray<z.ZodString>>;
81
- }, z.core.$strict>>;
82
- }, z.core.$strict>;
83
- export type AssetTransferManifest = z.infer<typeof assetTransferManifestSchema>;
84
- export type AssetTransferChunk = z.infer<typeof assetTransferChunkSchema>;
85
- export type AssetTransferStatus = z.infer<typeof assetTransferStatusSchema>;
86
- export type AssetBundleSavePayload = z.infer<typeof assetBundleSavePayloadSchema>;
87
- export type AssetBundleReceipt = z.infer<typeof assetBundleReceiptSchema>;
88
- /** Hash the normalized manifest, including destination preconditions and ordered chunks. */
89
- export declare function hashAssetTransferManifest(value: AssetTransferManifest): string;
90
- /** A receipt must cover the entire requested package, including empty directories. */
91
- export declare function isAssetBundleReceiptForManifest(manifest: AssetTransferManifest, manifestHash: string, input: unknown): input is AssetBundleReceipt;
92
- //# sourceMappingURL=asset-transfers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"asset-transfers.d.ts","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/asset-transfers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,0BAA0B,QAAc,CAAC;AACtD,eAAO,MAAM,6BAA6B,QAAoB,CAAC;AAC/D,eAAO,MAAM,wBAAwB,QAAqB,CAAC;AAC3D,eAAO,MAAM,wBAAwB,OAAO,CAAC;AAC7C,eAAO,MAAM,6BAA6B,QAAkB,CAAC;AAC7D,eAAO,MAAM,mCAAmC,QAAuD,CAAC;AAsBxG,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAwBtC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;kBAM1B,CAAC;AAEZ,eAAO,MAAM,4BAA4B;;;kBAG9B,CAAC;AAEZ,eAAO,MAAM,wBAAwB;;;;;;;;;kBAYnC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;kBAepC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,4FAA4F;AAC5F,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,qBAAqB,GAAG,MAAM,CAG9E;AAED,sFAAsF;AACtF,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB,CAclJ"}
@@ -1,119 +0,0 @@
1
- import { createHash } from 'node:crypto';
2
- import { z } from 'zod';
3
- import { workspaceAssetProcessingSchema, workspaceRelativePathSchema } from './files.js';
4
- import { isAttachmentBase64 } from './attachment-base64.js';
5
- export const ASSET_TRANSFER_CHUNK_BYTES = 1024 * 1024;
6
- export const ASSET_TRANSFER_FILE_MAX_BYTES = 512 * 1024 * 1024;
7
- export const ASSET_TRANSFER_MAX_BYTES = 1024 * 1024 * 1024;
8
- export const ASSET_TRANSFER_MAX_FILES = 4096;
9
- export const ASSET_TRANSFER_BODY_MAX_BYTES = 8 * 1024 * 1024;
10
- export const ASSET_TRANSFER_CHUNK_BODY_MAX_BYTES = 4 * Math.ceil(ASSET_TRANSFER_CHUNK_BYTES / 3) + 4096;
11
- const hashSchema = z.string().regex(/^[a-f0-9]{64}$/);
12
- const transferIdSchema = z.string().uuid();
13
- const reserved = new Set(['.git', 'node_modules', '.playcraft-temp', '.tmp']);
14
- const pathSchema = workspaceRelativePathSchema.refine(path => !path.split('/').some(part => reserved.has(part.toLowerCase())), 'reserved_workspace_path');
15
- const fileSchema = z.object({
16
- path: pathSchema,
17
- size: z.number().int().nonnegative().max(ASSET_TRANSFER_FILE_MAX_BYTES),
18
- chunkHashes: z.array(hashSchema).max(ASSET_TRANSFER_FILE_MAX_BYTES / ASSET_TRANSFER_CHUNK_BYTES),
19
- contentHash: hashSchema.optional(),
20
- expectedContentHash: hashSchema.nullable(),
21
- expectedRevision: z.number().int().nonnegative().optional(),
22
- source: z.object({ path: pathSchema, contentHash: hashSchema }).strict().optional(),
23
- processing: workspaceAssetProcessingSchema.optional(),
24
- }).strict().superRefine((file, context) => {
25
- if (file.chunkHashes.length !== Math.ceil(file.size / ASSET_TRANSFER_CHUNK_BYTES))
26
- context.addIssue({ code: 'custom', message: 'asset_transfer_chunk_count' });
27
- if (file.processing && file.source && (file.processing.sourcePath !== file.source.path
28
- || file.processing.sourceHash !== undefined && file.processing.sourceHash !== file.source.contentHash))
29
- context.addIssue({ code: 'custom', message: 'processing_source_mismatch' });
30
- });
31
- export const assetTransferManifestSchema = z.object({
32
- transferId: transferIdSchema,
33
- files: z.array(fileSchema).max(ASSET_TRANSFER_MAX_FILES),
34
- directories: z.array(pathSchema).max(ASSET_TRANSFER_MAX_FILES).optional(),
35
- }).strict().superRefine((manifest, context) => {
36
- if (!manifest.files.length && !manifest.directories?.length)
37
- context.addIssue({ code: 'custom', message: 'asset_transfer_empty' });
38
- if (manifest.files.reduce((size, file) => size + file.size, 0) > ASSET_TRANSFER_MAX_BYTES)
39
- context.addIssue({ code: 'custom', message: 'asset_transfer_too_large' });
40
- const files = new Set(manifest.files.map(file => file.path));
41
- const directories = new Set(manifest.directories ?? []);
42
- if (manifest.files.some(file => file.source && file.source.path !== file.path && files.has(file.source.path)))
43
- context.addIssue({ code: 'custom', message: 'asset_transfer_source_target_conflict' });
44
- if (files.size !== manifest.files.length || directories.size !== (manifest.directories?.length ?? 0))
45
- context.addIssue({ code: 'custom', message: 'asset_transfer_duplicate_path' });
46
- for (const path of [...files, ...directories]) {
47
- const parts = path.split('/');
48
- if (directories.has(path) && files.has(path))
49
- context.addIssue({ code: 'custom', message: 'asset_transfer_path_conflict' });
50
- for (let index = 1; index < parts.length; index++) {
51
- if (files.has(parts.slice(0, index).join('/')))
52
- context.addIssue({ code: 'custom', message: 'asset_transfer_path_conflict' });
53
- }
54
- }
55
- });
56
- export const assetTransferChunkSchema = z.object({
57
- fileIndex: z.number().int().min(0).max(ASSET_TRANSFER_MAX_FILES - 1),
58
- chunkIndex: z.number().int().min(0).max(ASSET_TRANSFER_FILE_MAX_BYTES / ASSET_TRANSFER_CHUNK_BYTES - 1),
59
- contentBase64: z.string().min(1).max(4 * Math.ceil(ASSET_TRANSFER_CHUNK_BYTES / 3))
60
- .refine(isAttachmentBase64, 'invalid_binary_content')
61
- .refine(value => Buffer.byteLength(value, 'base64') <= ASSET_TRANSFER_CHUNK_BYTES, 'asset_transfer_chunk_too_large'),
62
- }).strict();
63
- export const assetBundleSavePayloadSchema = z.object({
64
- transferId: transferIdSchema,
65
- manifestHash: hashSchema,
66
- }).strict();
67
- export const assetBundleReceiptSchema = assetBundleSavePayloadSchema.extend({
68
- files: z.array(z.object({ path: pathSchema, size: z.number().int().nonnegative().max(ASSET_TRANSFER_FILE_MAX_BYTES),
69
- contentHash: hashSchema }).strict()).max(ASSET_TRANSFER_MAX_FILES),
70
- directories: z.array(pathSchema).max(ASSET_TRANSFER_MAX_FILES).optional(),
71
- }).superRefine((receipt, context) => {
72
- if (!receipt.files.length && !receipt.directories?.length)
73
- context.addIssue({ code: 'custom', message: 'asset_transfer_empty' });
74
- if (new Set(receipt.files.map(file => file.path)).size !== receipt.files.length
75
- || new Set(receipt.directories ?? []).size !== (receipt.directories?.length ?? 0))
76
- context.addIssue({ code: 'custom', message: 'asset_transfer_duplicate_path' });
77
- if (receipt.files.reduce((size, file) => size + file.size, 0) > ASSET_TRANSFER_MAX_BYTES)
78
- context.addIssue({ code: 'custom', message: 'asset_transfer_too_large' });
79
- });
80
- export const assetTransferStatusSchema = assetBundleSavePayloadSchema.extend({
81
- status: z.enum(['uploading', 'ready', 'publishing', 'completed']),
82
- files: z.array(z.object({
83
- fileIndex: z.number().int().min(0).max(ASSET_TRANSFER_MAX_FILES - 1),
84
- receivedChunks: z.array(z.number().int().min(0).max(ASSET_TRANSFER_FILE_MAX_BYTES / ASSET_TRANSFER_CHUNK_BYTES - 1))
85
- .max(ASSET_TRANSFER_FILE_MAX_BYTES / ASSET_TRANSFER_CHUNK_BYTES),
86
- }).strict()).max(ASSET_TRANSFER_MAX_FILES),
87
- receipt: assetBundleReceiptSchema.optional(),
88
- }).superRefine((status, context) => {
89
- if (new Set(status.files.map(file => file.fileIndex)).size !== status.files.length
90
- || status.files.some(file => new Set(file.receivedChunks).size !== file.receivedChunks.length))
91
- context.addIssue({ code: 'custom', message: 'asset_transfer_duplicate_chunk' });
92
- if ((status.status === 'completed') !== Boolean(status.receipt)
93
- || status.receipt && (status.receipt.transferId !== status.transferId || status.receipt.manifestHash !== status.manifestHash))
94
- context.addIssue({ code: 'custom', message: 'asset_transfer_receipt_mismatch' });
95
- });
96
- /** Hash the normalized manifest, including destination preconditions and ordered chunks. */
97
- export function hashAssetTransferManifest(value) {
98
- const manifest = assetTransferManifestSchema.parse(value);
99
- return createHash('sha256').update(JSON.stringify(manifest)).digest('hex');
100
- }
101
- /** A receipt must cover the entire requested package, including empty directories. */
102
- export function isAssetBundleReceiptForManifest(manifest, manifestHash, input) {
103
- const parsed = assetBundleReceiptSchema.safeParse(input);
104
- if (!parsed.success)
105
- return false;
106
- const receipt = parsed.data;
107
- if (receipt.transferId !== manifest.transferId || receipt.manifestHash !== manifestHash || receipt.files.length !== manifest.files.length)
108
- return false;
109
- const files = new Map(receipt.files.map(file => [file.path, file]));
110
- if (manifest.files.some(file => {
111
- const saved = files.get(file.path);
112
- return !saved || saved.size !== file.size || file.contentHash !== undefined && file.contentHash !== saved.contentHash;
113
- }))
114
- return false;
115
- const requested = new Set(manifest.directories ?? []);
116
- const saved = new Set(receipt.directories ?? []);
117
- return requested.size === saved.size && [...requested].every(path => saved.has(path));
118
- }
119
- //# sourceMappingURL=asset-transfers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"asset-transfers.js","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/asset-transfers.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- /** Validate large payloads without repeated regular-expression groups exhausting the stack. */
2
- export declare function isAttachmentBase64(value: string): boolean;
3
- //# sourceMappingURL=attachment-base64.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"attachment-base64.d.ts","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/attachment-base64.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAIzD"}
@@ -1,8 +0,0 @@
1
- /** Validate large payloads without repeated regular-expression groups exhausting the stack. */
2
- export function isAttachmentBase64(value) {
3
- if (value.length % 4 !== 0)
4
- return false;
5
- const padding = value.endsWith('==') ? 2 : value.endsWith('=') ? 1 : 0;
6
- return !/[^A-Za-z0-9+/]/.test(value.slice(0, value.length - padding));
7
- }
8
- //# sourceMappingURL=attachment-base64.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"attachment-base64.js","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/attachment-base64.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,MAAM,UAAU,kBAAkB,CAAC,KAAa;IAC9C,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACzC,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;AACxE,CAAC"}