@playdrop/playdrop-cli 0.16.16 → 0.17.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 (363) hide show
  1. package/config/client-meta.json +4 -4
  2. package/dist/apiClient.d.ts +1 -2
  3. package/dist/apiClient.js +1 -16
  4. package/dist/appUrls.js +4 -0
  5. package/dist/apps/build.d.ts +12 -4
  6. package/dist/apps/build.js +55 -22
  7. package/dist/apps/index.d.ts +2 -1
  8. package/dist/apps/index.js +4 -1
  9. package/dist/apps/loadCheck.d.ts +5 -1
  10. package/dist/apps/loadCheck.js +52 -18
  11. package/dist/apps/serverBuild.d.ts +17 -0
  12. package/dist/apps/serverBuild.js +155 -0
  13. package/dist/apps/staticHtml.d.ts +1 -0
  14. package/dist/apps/staticHtml.js +19 -10
  15. package/dist/apps/upload.d.ts +12 -2
  16. package/dist/apps/upload.js +127 -46
  17. package/dist/catalogue.d.ts +23 -1
  18. package/dist/catalogue.js +126 -100
  19. package/dist/commandContext.d.ts +6 -3
  20. package/dist/commandContext.js +108 -18
  21. package/dist/commands/build.js +0 -7
  22. package/dist/commands/captureListing.d.ts +3 -0
  23. package/dist/commands/captureListing.js +48 -4
  24. package/dist/commands/chat.d.ts +4 -0
  25. package/dist/commands/chat.js +133 -8
  26. package/dist/commands/check.js +34 -1
  27. package/dist/commands/create.js +30 -263
  28. package/dist/commands/dev.js +37 -3
  29. package/dist/commands/devBrowser.js +2 -2
  30. package/dist/commands/devGameServer.d.ts +16 -0
  31. package/dist/commands/devGameServer.js +237 -0
  32. package/dist/commands/devRuntimeAssets.d.ts +1 -0
  33. package/dist/commands/devRuntimeAssets.js +2 -0
  34. package/dist/commands/devServer.d.ts +3 -0
  35. package/dist/commands/devServer.js +111 -5
  36. package/dist/commands/generation.d.ts +33 -4
  37. package/dist/commands/generation.js +304 -115
  38. package/dist/commands/login.js +23 -7
  39. package/dist/commands/review.d.ts +1 -1
  40. package/dist/commands/review.js +68 -95
  41. package/dist/commands/source.d.ts +19 -0
  42. package/dist/commands/source.js +142 -0
  43. package/dist/commands/tweaks.js +5 -11
  44. package/dist/commands/upload-content.d.ts +1 -1
  45. package/dist/commands/upload-content.js +16 -12
  46. package/dist/commands/upload.d.ts +17 -1
  47. package/dist/commands/upload.js +47 -10
  48. package/dist/commands/worker/archive-staging.d.ts +1 -0
  49. package/dist/commands/worker/archive-staging.js +13 -2
  50. package/dist/commands/worker/e2e-fixtures.d.ts +32 -0
  51. package/dist/commands/worker/e2e-fixtures.js +466 -0
  52. package/dist/commands/worker/game-server-infra.d.ts +80 -0
  53. package/dist/commands/worker/game-server-infra.js +595 -0
  54. package/dist/commands/worker/game-source-git.d.ts +126 -0
  55. package/dist/commands/worker/game-source-git.js +780 -0
  56. package/dist/commands/worker/generation.d.ts +94 -0
  57. package/dist/commands/worker/generation.js +1458 -0
  58. package/dist/commands/worker/runtime.d.ts +8 -10
  59. package/dist/commands/worker/runtime.js +51 -45
  60. package/dist/commands/worker.d.ts +79 -19
  61. package/dist/commands/worker.js +1796 -419
  62. package/dist/config.d.ts +2 -0
  63. package/dist/config.js +16 -3
  64. package/dist/environment.d.ts +0 -1
  65. package/dist/environment.js +0 -8
  66. package/dist/index.js +92 -13
  67. package/dist/workerAppProject.d.ts +1 -1
  68. package/dist/workerAppProject.js +15 -2
  69. package/node_modules/@playdrop/api-client/dist/client.d.ts +72 -25
  70. package/node_modules/@playdrop/api-client/dist/client.d.ts.map +1 -1
  71. package/node_modules/@playdrop/api-client/dist/client.js +33 -0
  72. package/node_modules/@playdrop/api-client/dist/core/request.d.ts +1 -0
  73. package/node_modules/@playdrop/api-client/dist/core/request.d.ts.map +1 -1
  74. package/node_modules/@playdrop/api-client/dist/core/request.js +17 -11
  75. package/node_modules/@playdrop/api-client/dist/domains/agent-tasks.d.ts +51 -6
  76. package/node_modules/@playdrop/api-client/dist/domains/agent-tasks.d.ts.map +1 -1
  77. package/node_modules/@playdrop/api-client/dist/domains/agent-tasks.js +338 -41
  78. package/node_modules/@playdrop/api-client/dist/domains/ai.d.ts +24 -1
  79. package/node_modules/@playdrop/api-client/dist/domains/ai.d.ts.map +1 -1
  80. package/node_modules/@playdrop/api-client/dist/domains/ai.js +20 -0
  81. package/node_modules/@playdrop/api-client/dist/domains/apps.d.ts +13 -8
  82. package/node_modules/@playdrop/api-client/dist/domains/apps.d.ts.map +1 -1
  83. package/node_modules/@playdrop/api-client/dist/domains/apps.js +158 -90
  84. package/node_modules/@playdrop/api-client/dist/domains/assets.d.ts +4 -0
  85. package/node_modules/@playdrop/api-client/dist/domains/assets.d.ts.map +1 -1
  86. package/node_modules/@playdrop/api-client/dist/domains/assets.js +27 -0
  87. package/node_modules/@playdrop/api-client/dist/domains/chat.d.ts +35 -3
  88. package/node_modules/@playdrop/api-client/dist/domains/chat.d.ts.map +1 -1
  89. package/node_modules/@playdrop/api-client/dist/domains/chat.js +89 -7
  90. package/node_modules/@playdrop/api-client/dist/domains/player-meta.d.ts +2 -1
  91. package/node_modules/@playdrop/api-client/dist/domains/player-meta.d.ts.map +1 -1
  92. package/node_modules/@playdrop/api-client/dist/domains/player-meta.js +9 -0
  93. package/node_modules/@playdrop/api-client/dist/domains/playtrade.d.ts +1 -2
  94. package/node_modules/@playdrop/api-client/dist/domains/playtrade.d.ts.map +1 -1
  95. package/node_modules/@playdrop/api-client/dist/domains/playtrade.js +0 -11
  96. package/node_modules/@playdrop/api-client/dist/domains/social.d.ts +29 -0
  97. package/node_modules/@playdrop/api-client/dist/domains/social.d.ts.map +1 -0
  98. package/node_modules/@playdrop/api-client/dist/domains/social.js +79 -0
  99. package/node_modules/@playdrop/api-client/dist/index.d.ts +80 -29
  100. package/node_modules/@playdrop/api-client/dist/index.d.ts.map +1 -1
  101. package/node_modules/@playdrop/api-client/dist/index.js +217 -56
  102. package/node_modules/@playdrop/api-client/dist/runtime.d.ts +18 -0
  103. package/node_modules/@playdrop/api-client/dist/runtime.d.ts.map +1 -0
  104. package/node_modules/@playdrop/api-client/dist/runtime.js +54 -0
  105. package/node_modules/@playdrop/api-client/package.json +7 -0
  106. package/node_modules/@playdrop/config/client-meta.json +4 -4
  107. package/node_modules/@playdrop/config/dist/src/creator-plans.d.ts +11 -0
  108. package/node_modules/@playdrop/config/dist/src/creator-plans.d.ts.map +1 -1
  109. package/node_modules/@playdrop/config/dist/src/creator-plans.js +13 -1
  110. package/node_modules/@playdrop/config/dist/src/deployment.d.ts +0 -1
  111. package/node_modules/@playdrop/config/dist/src/deployment.d.ts.map +1 -1
  112. package/node_modules/@playdrop/config/dist/src/deployment.js +0 -8
  113. package/node_modules/@playdrop/config/dist/src/public-deployment.d.ts +0 -1
  114. package/node_modules/@playdrop/config/dist/src/public-deployment.d.ts.map +1 -1
  115. package/node_modules/@playdrop/config/dist/src/public-deployment.js +0 -8
  116. package/node_modules/@playdrop/config/dist/src/runtime-service-origins.d.ts +1 -1
  117. package/node_modules/@playdrop/config/dist/src/runtime-service-origins.js +2 -2
  118. package/node_modules/@playdrop/config/dist/src/server/logging.d.ts.map +1 -1
  119. package/node_modules/@playdrop/config/dist/src/server/logging.js +31 -2
  120. package/node_modules/@playdrop/config/dist/test/creator-plans.test.js +10 -0
  121. package/node_modules/@playdrop/config/dist/test/deployment.test.js +0 -4
  122. package/node_modules/@playdrop/config/dist/test/runtime-service-origins.test.js +2 -0
  123. package/node_modules/@playdrop/config/dist/tsconfig.tsbuildinfo +1 -1
  124. package/node_modules/@playdrop/config/package.json +6 -0
  125. package/node_modules/@playdrop/game-source-git/dist/src/archive.d.ts +9 -0
  126. package/node_modules/@playdrop/game-source-git/dist/src/archive.d.ts.map +1 -0
  127. package/node_modules/@playdrop/game-source-git/dist/src/archive.js +107 -0
  128. package/node_modules/@playdrop/game-source-git/dist/src/bundle-storage.d.ts +29 -0
  129. package/node_modules/@playdrop/game-source-git/dist/src/bundle-storage.d.ts.map +1 -0
  130. package/node_modules/@playdrop/game-source-git/dist/src/bundle-storage.js +64 -0
  131. package/node_modules/@playdrop/game-source-git/dist/src/export.d.ts +8 -0
  132. package/node_modules/@playdrop/game-source-git/dist/src/export.d.ts.map +1 -0
  133. package/node_modules/@playdrop/game-source-git/dist/src/export.js +25 -0
  134. package/node_modules/@playdrop/game-source-git/dist/src/git.d.ts +39 -0
  135. package/node_modules/@playdrop/game-source-git/dist/src/git.d.ts.map +1 -0
  136. package/node_modules/@playdrop/game-source-git/dist/src/git.js +195 -0
  137. package/node_modules/@playdrop/game-source-git/dist/src/ignore.d.ts +6 -0
  138. package/node_modules/@playdrop/game-source-git/dist/src/ignore.d.ts.map +1 -0
  139. package/node_modules/@playdrop/game-source-git/dist/src/ignore.js +51 -0
  140. package/node_modules/@playdrop/game-source-git/dist/src/index.d.ts +10 -0
  141. package/node_modules/@playdrop/game-source-git/dist/src/index.d.ts.map +1 -0
  142. package/node_modules/@playdrop/{boxel-core/dist/src/humanoid/r15 → game-source-git/dist/src}/index.js +9 -4
  143. package/node_modules/@playdrop/game-source-git/dist/src/lock.d.ts +17 -0
  144. package/node_modules/@playdrop/game-source-git/dist/src/lock.d.ts.map +1 -0
  145. package/node_modules/@playdrop/game-source-git/dist/src/lock.js +72 -0
  146. package/node_modules/@playdrop/game-source-git/dist/src/materialize.d.ts +10 -0
  147. package/node_modules/@playdrop/game-source-git/dist/src/materialize.d.ts.map +1 -0
  148. package/node_modules/@playdrop/game-source-git/dist/src/materialize.js +99 -0
  149. package/node_modules/@playdrop/game-source-git/dist/src/paths.d.ts +24 -0
  150. package/node_modules/@playdrop/game-source-git/dist/src/paths.d.ts.map +1 -0
  151. package/node_modules/@playdrop/game-source-git/dist/src/paths.js +207 -0
  152. package/node_modules/@playdrop/game-source-git/dist/src/repository.d.ts +66 -0
  153. package/node_modules/@playdrop/game-source-git/dist/src/repository.d.ts.map +1 -0
  154. package/node_modules/@playdrop/game-source-git/dist/src/repository.js +213 -0
  155. package/node_modules/@playdrop/game-source-git/dist/test/core.test.d.ts +2 -0
  156. package/node_modules/@playdrop/game-source-git/dist/test/core.test.d.ts.map +1 -0
  157. package/node_modules/@playdrop/game-source-git/dist/test/core.test.js +441 -0
  158. package/node_modules/@playdrop/game-source-git/dist/tsconfig.tsbuildinfo +1 -0
  159. package/node_modules/@playdrop/game-source-git/package.json +28 -0
  160. package/node_modules/@playdrop/types/dist/agent-task-terminal.d.ts +2 -2
  161. package/node_modules/@playdrop/types/dist/agent-task-terminal.d.ts.map +1 -1
  162. package/node_modules/@playdrop/types/dist/agent-task-terminal.js +15 -9
  163. package/node_modules/@playdrop/types/dist/api.d.ts +728 -164
  164. package/node_modules/@playdrop/types/dist/api.d.ts.map +1 -1
  165. package/node_modules/@playdrop/types/dist/api.js +60 -11
  166. package/node_modules/@playdrop/types/dist/asset-pack.d.ts +2 -0
  167. package/node_modules/@playdrop/types/dist/asset-pack.d.ts.map +1 -1
  168. package/node_modules/@playdrop/types/dist/asset.d.ts +22 -8
  169. package/node_modules/@playdrop/types/dist/asset.d.ts.map +1 -1
  170. package/node_modules/@playdrop/types/dist/asset.js +26 -26
  171. package/node_modules/@playdrop/types/dist/chat.d.ts +107 -3
  172. package/node_modules/@playdrop/types/dist/chat.d.ts.map +1 -1
  173. package/node_modules/@playdrop/types/dist/chat.js +33 -4
  174. package/node_modules/@playdrop/types/dist/index.d.ts +3 -0
  175. package/node_modules/@playdrop/types/dist/index.d.ts.map +1 -1
  176. package/node_modules/@playdrop/types/dist/index.js +7 -1
  177. package/node_modules/@playdrop/types/dist/public-cache-tags.d.ts +11 -0
  178. package/node_modules/@playdrop/types/dist/public-cache-tags.d.ts.map +1 -0
  179. package/node_modules/@playdrop/types/dist/public-cache-tags.js +78 -0
  180. package/node_modules/@playdrop/types/dist/realtime.d.ts +3 -15
  181. package/node_modules/@playdrop/types/dist/realtime.d.ts.map +1 -1
  182. package/node_modules/@playdrop/types/dist/social.d.ts +64 -0
  183. package/node_modules/@playdrop/types/dist/social.d.ts.map +1 -0
  184. package/node_modules/@playdrop/{boxel-three/dist/src/types.js → types/dist/social.js} +14 -2
  185. package/node_modules/@playdrop/types/dist/spritesheet.d.ts +51 -0
  186. package/node_modules/@playdrop/types/dist/spritesheet.d.ts.map +1 -0
  187. package/node_modules/@playdrop/types/dist/spritesheet.js +73 -0
  188. package/node_modules/@playdrop/types/dist/version.d.ts +86 -58
  189. package/node_modules/@playdrop/types/dist/version.d.ts.map +1 -1
  190. package/node_modules/@playdrop/types/dist/version.js +111 -0
  191. package/node_modules/@playdrop/types/package.json +14 -0
  192. package/node_modules/@playdrop/vox-three/dist/src/index.d.ts +1 -1
  193. package/node_modules/@playdrop/vox-three/dist/src/index.js +1 -1
  194. package/node_modules/@playdrop/vox-three/dist/src/index.js.map +1 -1
  195. package/node_modules/@playdrop/vox-three/dist/src/vox.d.ts +0 -3
  196. package/node_modules/@playdrop/vox-three/dist/src/vox.js +0 -110
  197. package/node_modules/@playdrop/vox-three/dist/src/vox.js.map +1 -1
  198. package/node_modules/@playdrop/vox-three/dist/test/vox.test.js +0 -18
  199. package/node_modules/@playdrop/vox-three/dist/test/vox.test.js.map +1 -1
  200. package/node_modules/@playdrop/vox-three/package.json +8 -4
  201. package/package.json +9 -11
  202. package/dist/assets/model-artifacts.d.ts +0 -8
  203. package/dist/assets/model-artifacts.js +0 -382
  204. package/dist/assets/model-worker.d.ts +0 -22
  205. package/dist/assets/model-worker.js +0 -123
  206. package/node_modules/@playdrop/ai-client/dist/index.d.ts +0 -441
  207. package/node_modules/@playdrop/ai-client/dist/index.d.ts.map +0 -1
  208. package/node_modules/@playdrop/ai-client/dist/index.js +0 -499
  209. package/node_modules/@playdrop/ai-client/package.json +0 -22
  210. package/node_modules/@playdrop/boxel-core/dist/src/entity-cleaner.d.ts +0 -13
  211. package/node_modules/@playdrop/boxel-core/dist/src/entity-cleaner.js +0 -141
  212. package/node_modules/@playdrop/boxel-core/dist/src/entity-cleaner.js.map +0 -1
  213. package/node_modules/@playdrop/boxel-core/dist/src/entity-utils.d.ts +0 -47
  214. package/node_modules/@playdrop/boxel-core/dist/src/entity-utils.js +0 -313
  215. package/node_modules/@playdrop/boxel-core/dist/src/entity-utils.js.map +0 -1
  216. package/node_modules/@playdrop/boxel-core/dist/src/format-utils.d.ts +0 -3
  217. package/node_modules/@playdrop/boxel-core/dist/src/format-utils.js +0 -36
  218. package/node_modules/@playdrop/boxel-core/dist/src/format-utils.js.map +0 -1
  219. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/geometry.d.ts +0 -23
  220. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/geometry.js +0 -11
  221. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/geometry.js.map +0 -1
  222. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/index.d.ts +0 -4
  223. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/index.js +0 -21
  224. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/index.js.map +0 -1
  225. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/common.d.ts +0 -4
  226. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/common.js +0 -24
  227. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/common.js.map +0 -1
  228. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/index.d.ts +0 -3
  229. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/index.js.map +0 -1
  230. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/textured-builder.d.ts +0 -3
  231. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/textured-builder.js +0 -387
  232. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/textured-builder.js.map +0 -1
  233. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/types.d.ts +0 -6
  234. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/types.js +0 -3
  235. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/types.js.map +0 -1
  236. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/voxel-builder.d.ts +0 -3
  237. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/voxel-builder.js +0 -373
  238. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/voxel-builder.js.map +0 -1
  239. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/builder.d.ts +0 -12
  240. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/builder.js +0 -215
  241. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/builder.js.map +0 -1
  242. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/index.d.ts +0 -4
  243. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/index.js +0 -18
  244. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/index.js.map +0 -1
  245. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/scanner.d.ts +0 -42
  246. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/scanner.js +0 -145
  247. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/scanner.js.map +0 -1
  248. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/artifacts.d.ts +0 -26
  249. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/artifacts.js +0 -65
  250. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/artifacts.js.map +0 -1
  251. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/face-map.d.ts +0 -33
  252. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/face-map.js +0 -175
  253. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/face-map.js.map +0 -1
  254. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/humanoid_r15.json +0 -1517
  255. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/humanoid_r6.json +0 -61
  256. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/index.d.ts +0 -10
  257. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/index.js +0 -23
  258. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/index.js.map +0 -1
  259. package/node_modules/@playdrop/boxel-core/dist/src/index.d.ts +0 -19
  260. package/node_modules/@playdrop/boxel-core/dist/src/index.js +0 -36
  261. package/node_modules/@playdrop/boxel-core/dist/src/index.js.map +0 -1
  262. package/node_modules/@playdrop/boxel-core/dist/src/materials.d.ts +0 -26
  263. package/node_modules/@playdrop/boxel-core/dist/src/materials.js +0 -184
  264. package/node_modules/@playdrop/boxel-core/dist/src/materials.js.map +0 -1
  265. package/node_modules/@playdrop/boxel-core/dist/src/palette_tools.d.ts +0 -68
  266. package/node_modules/@playdrop/boxel-core/dist/src/palette_tools.js +0 -488
  267. package/node_modules/@playdrop/boxel-core/dist/src/palette_tools.js.map +0 -1
  268. package/node_modules/@playdrop/boxel-core/dist/src/serialization.d.ts +0 -4
  269. package/node_modules/@playdrop/boxel-core/dist/src/serialization.js +0 -380
  270. package/node_modules/@playdrop/boxel-core/dist/src/serialization.js.map +0 -1
  271. package/node_modules/@playdrop/boxel-core/dist/src/textures.d.ts +0 -29
  272. package/node_modules/@playdrop/boxel-core/dist/src/textures.js +0 -208
  273. package/node_modules/@playdrop/boxel-core/dist/src/textures.js.map +0 -1
  274. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/infer-face.d.ts +0 -9
  275. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/infer-face.js +0 -312
  276. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/infer-face.js.map +0 -1
  277. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/layer-mode.d.ts +0 -9
  278. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/layer-mode.js +0 -154
  279. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/layer-mode.js.map +0 -1
  280. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/merge-overlay.d.ts +0 -2
  281. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/merge-overlay.js +0 -121
  282. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/merge-overlay.js.map +0 -1
  283. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/slice.d.ts +0 -20
  284. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/slice.js +0 -389
  285. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/slice.js.map +0 -1
  286. package/node_modules/@playdrop/boxel-core/dist/src/transforms/upscale.d.ts +0 -3
  287. package/node_modules/@playdrop/boxel-core/dist/src/transforms/upscale.js +0 -206
  288. package/node_modules/@playdrop/boxel-core/dist/src/transforms/upscale.js.map +0 -1
  289. package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/slice.d.ts +0 -12
  290. package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/slice.js +0 -81
  291. package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/slice.js.map +0 -1
  292. package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/textured-to-voxel.d.ts +0 -12
  293. package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/textured-to-voxel.js +0 -318
  294. package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/textured-to-voxel.js.map +0 -1
  295. package/node_modules/@playdrop/boxel-core/dist/src/types.d.ts +0 -168
  296. package/node_modules/@playdrop/boxel-core/dist/src/types.js +0 -3
  297. package/node_modules/@playdrop/boxel-core/dist/src/types.js.map +0 -1
  298. package/node_modules/@playdrop/boxel-core/dist/src/validation.d.ts +0 -24
  299. package/node_modules/@playdrop/boxel-core/dist/src/validation.js +0 -620
  300. package/node_modules/@playdrop/boxel-core/dist/src/validation.js.map +0 -1
  301. package/node_modules/@playdrop/boxel-core/dist/src/voxels/greedy-mesher.d.ts +0 -11
  302. package/node_modules/@playdrop/boxel-core/dist/src/voxels/greedy-mesher.js +0 -135
  303. package/node_modules/@playdrop/boxel-core/dist/src/voxels/greedy-mesher.js.map +0 -1
  304. package/node_modules/@playdrop/boxel-core/dist/src/voxels.d.ts +0 -23
  305. package/node_modules/@playdrop/boxel-core/dist/src/voxels.js +0 -52
  306. package/node_modules/@playdrop/boxel-core/dist/src/voxels.js.map +0 -1
  307. package/node_modules/@playdrop/boxel-core/package.json +0 -19
  308. package/node_modules/@playdrop/boxel-three/dist/src/animations.d.ts +0 -4
  309. package/node_modules/@playdrop/boxel-three/dist/src/animations.js +0 -92
  310. package/node_modules/@playdrop/boxel-three/dist/src/builders.d.ts +0 -8
  311. package/node_modules/@playdrop/boxel-three/dist/src/builders.js +0 -363
  312. package/node_modules/@playdrop/boxel-three/dist/src/context.d.ts +0 -24
  313. package/node_modules/@playdrop/boxel-three/dist/src/context.js +0 -58
  314. package/node_modules/@playdrop/boxel-three/dist/src/exporters/glb.d.ts +0 -100
  315. package/node_modules/@playdrop/boxel-three/dist/src/exporters/glb.js +0 -927
  316. package/node_modules/@playdrop/boxel-three/dist/src/exporters/image.d.ts +0 -18
  317. package/node_modules/@playdrop/boxel-three/dist/src/exporters/image.js +0 -294
  318. package/node_modules/@playdrop/boxel-three/dist/src/index.d.ts +0 -17
  319. package/node_modules/@playdrop/boxel-three/dist/src/index.js +0 -64
  320. package/node_modules/@playdrop/boxel-three/dist/src/instantiate.d.ts +0 -40
  321. package/node_modules/@playdrop/boxel-three/dist/src/instantiate.js +0 -96
  322. package/node_modules/@playdrop/boxel-three/dist/src/nodes.d.ts +0 -8
  323. package/node_modules/@playdrop/boxel-three/dist/src/nodes.js +0 -88
  324. package/node_modules/@playdrop/boxel-three/dist/src/overlays.d.ts +0 -7
  325. package/node_modules/@playdrop/boxel-three/dist/src/overlays.js +0 -123
  326. package/node_modules/@playdrop/boxel-three/dist/src/primitives.d.ts +0 -4
  327. package/node_modules/@playdrop/boxel-three/dist/src/primitives.js +0 -48
  328. package/node_modules/@playdrop/boxel-three/dist/src/scene.d.ts +0 -3
  329. package/node_modules/@playdrop/boxel-three/dist/src/scene.js +0 -168
  330. package/node_modules/@playdrop/boxel-three/dist/src/skinned-mesh.d.ts +0 -29
  331. package/node_modules/@playdrop/boxel-three/dist/src/skinned-mesh.js +0 -623
  332. package/node_modules/@playdrop/boxel-three/dist/src/texture-atlas.d.ts +0 -13
  333. package/node_modules/@playdrop/boxel-three/dist/src/texture-atlas.js +0 -133
  334. package/node_modules/@playdrop/boxel-three/dist/src/textures.d.ts +0 -17
  335. package/node_modules/@playdrop/boxel-three/dist/src/textures.js +0 -216
  336. package/node_modules/@playdrop/boxel-three/dist/src/types.d.ts +0 -112
  337. package/node_modules/@playdrop/boxel-three/dist/src/voxels/faces.d.ts +0 -28
  338. package/node_modules/@playdrop/boxel-three/dist/src/voxels/faces.js +0 -344
  339. package/node_modules/@playdrop/boxel-three/dist/src/voxels/mesher.d.ts +0 -24
  340. package/node_modules/@playdrop/boxel-three/dist/src/voxels/mesher.js +0 -113
  341. package/node_modules/@playdrop/boxel-three/dist/test/export-image.playwright.test.d.ts +0 -1
  342. package/node_modules/@playdrop/boxel-three/dist/test/export-image.playwright.test.js +0 -137
  343. package/node_modules/@playdrop/boxel-three/dist/test/fixtures/render-worker.d.ts +0 -20
  344. package/node_modules/@playdrop/boxel-three/dist/test/fixtures/render-worker.js +0 -85
  345. package/node_modules/@playdrop/boxel-three/dist/test/glb-skinned.test.d.ts +0 -1
  346. package/node_modules/@playdrop/boxel-three/dist/test/glb-skinned.test.js +0 -104
  347. package/node_modules/@playdrop/boxel-three/dist/test/index.test.d.ts +0 -1
  348. package/node_modules/@playdrop/boxel-three/dist/test/index.test.js +0 -30
  349. package/node_modules/@playdrop/boxel-three/dist/test/instantiate.test.d.ts +0 -1
  350. package/node_modules/@playdrop/boxel-three/dist/test/instantiate.test.js +0 -88
  351. package/node_modules/@playdrop/boxel-three/dist/test/overlays.test.d.ts +0 -1
  352. package/node_modules/@playdrop/boxel-three/dist/test/overlays.test.js +0 -42
  353. package/node_modules/@playdrop/boxel-three/dist/test/scene-filter.test.d.ts +0 -1
  354. package/node_modules/@playdrop/boxel-three/dist/test/scene-filter.test.js +0 -73
  355. package/node_modules/@playdrop/boxel-three/dist/test/scene-smoke.test.d.ts +0 -1
  356. package/node_modules/@playdrop/boxel-three/dist/test/scene-smoke.test.js +0 -85
  357. package/node_modules/@playdrop/boxel-three/dist/test/skinned-mesh.test.d.ts +0 -1
  358. package/node_modules/@playdrop/boxel-three/dist/test/skinned-mesh.test.js +0 -73
  359. package/node_modules/@playdrop/boxel-three/dist/test/textured-overlay.test.d.ts +0 -1
  360. package/node_modules/@playdrop/boxel-three/dist/test/textured-overlay.test.js +0 -136
  361. package/node_modules/@playdrop/boxel-three/dist/test/voxels.test.d.ts +0 -1
  362. package/node_modules/@playdrop/boxel-three/dist/test/voxels.test.js +0 -42
  363. package/node_modules/@playdrop/boxel-three/package.json +0 -28
@@ -1,18 +0,0 @@
1
- import type * as THREEType from "three";
2
- import type { BoxelDefinition } from "@playdrop/boxel-core";
3
- import { type ExportMode } from "./glb.js";
4
- declare const DIRECTION_VECTORS: Record<string, [number, number, number]>;
5
- export interface RenderBoxelImageOptions {
6
- THREE: typeof THREEType;
7
- renderer: THREEType.WebGLRenderer;
8
- entity: BoxelDefinition;
9
- mode?: ExportMode;
10
- animationIds?: string[] | null;
11
- animationId?: string | null;
12
- width?: number;
13
- height?: number;
14
- direction?: keyof typeof DIRECTION_VECTORS;
15
- background?: THREEType.ColorRepresentation | null;
16
- }
17
- export declare function renderBoxelToDataURL(options: RenderBoxelImageOptions): Promise<string>;
18
- export {};
@@ -1,294 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
- var image_exports = {};
19
- __export(image_exports, {
20
- renderBoxelToDataURL: () => renderBoxelToDataURL
21
- });
22
- module.exports = __toCommonJS(image_exports);
23
- var import_scene = require("../scene.js");
24
- var import_glb = require("./glb.js");
25
- var import_skinned_mesh = require("../skinned-mesh.js");
26
- var import_animations = require("../animations.js");
27
- function findNodeById(root, id) {
28
- if (root.id === id)
29
- return root;
30
- for (const child of root.children) {
31
- const found = findNodeById(child, id);
32
- if (found)
33
- return found;
34
- }
35
- return null;
36
- }
37
- const DIRECTION_VECTORS = {
38
- preview: [1.2, 1.4, 1.3],
39
- headshot: [-0.35, 0.05, 1],
40
- top: [0, 1, 0],
41
- bottom: [0, -1, 0],
42
- front: [0, 0, 1],
43
- back: [0, 0, -1],
44
- left: [-1, 0, 0],
45
- right: [1, 0, 0]
46
- };
47
- const UP_VECTORS = {
48
- top: [0, 0, -1],
49
- bottom: [0, 0, 1]
50
- };
51
- const CAMERA_DISTANCE_FACTOR = 1.25;
52
- const DEFAULT_MIN_DISTANCE = 2.5;
53
- const HEADSHOT_MIN_DISTANCE = 2;
54
- const HEADSHOT_RADIUS_PADDING = 1.3;
55
- const HEAD_NODE_IDS = ["head", "Head"];
56
- const HEADSHOT_VERTICAL_OFFSET_RATIO = 2 / 3;
57
- const AMBIENT_LIGHT_COLOR = 11847420;
58
- const AMBIENT_LIGHT_INTENSITY = 2.2;
59
- const DIRECTIONAL_LIGHT_COLOR = 16317180;
60
- const DIRECTIONAL_LIGHT_INTENSITY = 1.3;
61
- const DIRECTIONAL_LIGHT_MIN_HEIGHT_OFFSET = 2;
62
- const SHADOW_MAP_SIZE = 2048;
63
- const SHADOW_BIAS = -12e-5;
64
- const SHADOW_NORMAL_BIAS = 6e-3;
65
- const SUPER_SAMPLE_RATIO = 2;
66
- async function renderBoxelToDataURL(options) {
67
- const { THREE: three, renderer, entity, mode = "hierarchical", animationId, width, height, direction = "preview", background = null } = options;
68
- const sizeTarget = new three.Vector2();
69
- renderer.getSize(sizeTarget);
70
- const previousWidth = sizeTarget.x;
71
- const previousHeight = sizeTarget.y;
72
- const previousPixelRatio = renderer.getPixelRatio();
73
- const previousShadowEnabled = renderer.shadowMap.enabled;
74
- const previousShadowType = renderer.shadowMap.type;
75
- const previousShadowAutoUpdate = renderer.shadowMap.autoUpdate;
76
- const clearColor = renderer.getClearColor(new three.Color());
77
- const clearAlpha = renderer.getClearAlpha();
78
- const targetWidth = width ?? (previousWidth || 1024);
79
- const targetHeight = height ?? (previousHeight || 1024);
80
- renderer.setPixelRatio(SUPER_SAMPLE_RATIO);
81
- renderer.setSize(targetWidth, targetHeight, false);
82
- renderer.shadowMap.enabled = true;
83
- renderer.shadowMap.autoUpdate = true;
84
- renderer.shadowMap.type = three.PCFSoftShadowMap;
85
- if (background === null) {
86
- renderer.setClearColor(0, 0);
87
- } else if (background !== void 0) {
88
- const color = new three.Color(background);
89
- renderer.setClearColor(color, 1);
90
- }
91
- let disposeScene;
92
- let root;
93
- let animations = [];
94
- let nodeLookup = null;
95
- if (mode === "hierarchical") {
96
- const scene2 = (0, import_scene.createBoxelScene)({ THREE: three, entity });
97
- disposeScene = scene2.dispose;
98
- root = scene2.root;
99
- animations = scene2.animations;
100
- nodeLookup = /* @__PURE__ */ new Map();
101
- scene2.nodes.forEach((meta) => {
102
- nodeLookup.set(meta.id, meta.object);
103
- });
104
- } else if (mode === "skinned") {
105
- const skinned = (0, import_skinned_mesh.buildEntitySkinnedMesh)({ THREE: three, entity });
106
- const group = new three.Group();
107
- group.add(skinned.mesh);
108
- disposeScene = () => {
109
- skinned.dispose();
110
- };
111
- root = group;
112
- nodeLookup = /* @__PURE__ */ new Map();
113
- skinned.boneMap.forEach((bone, nodeId) => nodeLookup.set(nodeId, bone));
114
- animations = (0, import_animations.buildAnimations)(three, entity, nodeLookup);
115
- } else {
116
- const sceneGraph = (0, import_glb.createBoxelSceneGraph)({ THREE: three, model: entity, mode });
117
- disposeScene = sceneGraph.dispose;
118
- root = sceneGraph.root;
119
- animations = sceneGraph.animations;
120
- nodeLookup = sceneGraph.nodeLookup;
121
- }
122
- const scene = new three.Scene();
123
- scene.background = background === null ? null : background === void 0 ? null : new three.Color(background);
124
- scene.add(root);
125
- root.traverse((obj) => {
126
- const mesh = obj;
127
- if (mesh.isMesh) {
128
- mesh.castShadow = true;
129
- mesh.receiveShadow = true;
130
- }
131
- });
132
- const ambient = new three.AmbientLight(AMBIENT_LIGHT_COLOR, AMBIENT_LIGHT_INTENSITY);
133
- const directional = new three.DirectionalLight(DIRECTIONAL_LIGHT_COLOR, DIRECTIONAL_LIGHT_INTENSITY);
134
- directional.castShadow = true;
135
- directional.shadow.mapSize.set(SHADOW_MAP_SIZE, SHADOW_MAP_SIZE);
136
- directional.shadow.bias = SHADOW_BIAS;
137
- directional.shadow.normalBias = SHADOW_NORMAL_BIAS;
138
- scene.add(ambient);
139
- scene.add(directional);
140
- let dataUrl = "";
141
- const requestedAnimationId = typeof animationId === "string" && animationId.trim().length > 0 ? animationId.trim() : null;
142
- const normalizedRequestedAnimationId = requestedAnimationId?.toLowerCase();
143
- let sampleClip = null;
144
- if (requestedAnimationId) {
145
- sampleClip = animations.find((entry) => entry.id === requestedAnimationId || entry.id.toLowerCase() === normalizedRequestedAnimationId) ?? null;
146
- if (!sampleClip) {
147
- throw new Error(`Animation "${requestedAnimationId}" was not found for this entity.`);
148
- }
149
- } else if ((direction === "preview" || direction === "headshot") && animations.length > 0) {
150
- const idleAnimation = animations.find((entry) => entry.id.toLowerCase().includes("idle"));
151
- if (idleAnimation) {
152
- sampleClip = idleAnimation;
153
- }
154
- }
155
- let mixer = null;
156
- if (sampleClip) {
157
- mixer = new three.AnimationMixer(root);
158
- const action = mixer.clipAction(sampleClip.clip);
159
- action.play();
160
- action.paused = true;
161
- const firstKeyframe = sampleClip.channels.reduce((min, channel) => {
162
- const times = channel.track.times;
163
- if (!times || times.length === 0) {
164
- return min;
165
- }
166
- const firstTime = times[0];
167
- return Number.isFinite(firstTime) && firstTime < min ? firstTime : min;
168
- }, Number.POSITIVE_INFINITY);
169
- const sampleTime = Number.isFinite(firstKeyframe) ? firstKeyframe : 0;
170
- mixer.setTime(sampleTime);
171
- mixer.update(0);
172
- }
173
- try {
174
- root.updateMatrixWorld(true);
175
- const bounds = new three.Box3().setFromObject(root);
176
- const sphere = bounds.getBoundingSphere(new three.Sphere());
177
- const center = sphere.center.clone();
178
- let radius = sphere.radius || 1;
179
- let headCenter = null;
180
- if (direction === "headshot" && nodeLookup) {
181
- const headObject = HEAD_NODE_IDS.map((id) => nodeLookup.get(id)).find(Boolean);
182
- if (headObject) {
183
- let headBounds;
184
- if (mode === "skinned" && headObject.type === "Bone") {
185
- const headNode = findNodeById(entity.geometry.root, headObject.name);
186
- if (headNode?.size) {
187
- headObject.updateMatrixWorld(true);
188
- const nodeCenter = headNode.center ?? [0, 0, 0];
189
- const halfSize = headNode.size.map((s) => s / 2);
190
- const localMin = new three.Vector3(nodeCenter[0] - halfSize[0], nodeCenter[1] - halfSize[1], nodeCenter[2] - halfSize[2]);
191
- const localMax = new three.Vector3(nodeCenter[0] + halfSize[0], nodeCenter[1] + halfSize[1], nodeCenter[2] + halfSize[2]);
192
- localMin.applyMatrix4(headObject.matrixWorld);
193
- localMax.applyMatrix4(headObject.matrixWorld);
194
- headBounds = new three.Box3(localMin, localMax);
195
- } else {
196
- headBounds = new three.Box3().setFromObject(headObject);
197
- }
198
- } else {
199
- headBounds = new three.Box3().setFromObject(headObject);
200
- }
201
- if (!headBounds.isEmpty()) {
202
- headCenter = headBounds.getCenter(new three.Vector3());
203
- center.copy(headCenter);
204
- const headSphere = headBounds.getBoundingSphere(new three.Sphere());
205
- const headRadius = headSphere.radius || radius;
206
- radius = Math.max(headRadius * HEADSHOT_RADIUS_PADDING, headRadius);
207
- center.y -= radius * HEADSHOT_VERTICAL_OFFSET_RATIO;
208
- }
209
- }
210
- }
211
- const camera = new three.PerspectiveCamera(50, targetWidth / targetHeight, 0.1, Math.max(1e3, radius * 10));
212
- const dir = DIRECTION_VECTORS[direction] ?? DIRECTION_VECTORS.preview;
213
- const target = new three.Vector3().fromArray(dir).normalize();
214
- const minDistance = direction === "headshot" ? HEADSHOT_MIN_DISTANCE : DEFAULT_MIN_DISTANCE;
215
- let distance = Math.max(radius * CAMERA_DISTANCE_FACTOR, minDistance);
216
- const basePosition = center.clone().add(target.clone().multiplyScalar(distance));
217
- if (direction === "headshot" && headCenter) {
218
- const deltaY = headCenter.y - center.y;
219
- if (Math.abs(deltaY) >= distance) {
220
- distance = Math.abs(deltaY) + 0.1;
221
- }
222
- const horizontalMagnitude = Math.sqrt(Math.max(0, distance * distance - deltaY * deltaY));
223
- const horizontalDir = new three.Vector3(target.x, 0, target.z);
224
- if (horizontalDir.lengthSq() > 0) {
225
- horizontalDir.normalize().multiplyScalar(horizontalMagnitude);
226
- camera.position.set(center.x + horizontalDir.x, headCenter.y, center.z + horizontalDir.z);
227
- } else {
228
- camera.position.set(center.x, headCenter.y, center.z);
229
- }
230
- } else {
231
- camera.position.copy(basePosition);
232
- }
233
- camera.aspect = targetWidth / targetHeight;
234
- camera.updateProjectionMatrix();
235
- camera.lookAt(center);
236
- const up = UP_VECTORS[direction];
237
- if (up) {
238
- camera.up.set(up[0], up[1], up[2]);
239
- } else {
240
- camera.up.set(0, 1, 0);
241
- }
242
- const lightPosition = camera.position.clone();
243
- lightPosition.y = Math.max(lightPosition.y, center.y + DIRECTIONAL_LIGHT_MIN_HEIGHT_OFFSET);
244
- directional.position.copy(lightPosition);
245
- directional.target.position.copy(center);
246
- directional.target.updateMatrixWorld();
247
- const shadowCamera = directional.shadow.camera;
248
- const cameraRange = Math.max(10, radius * 4);
249
- shadowCamera.left = -cameraRange;
250
- shadowCamera.right = cameraRange;
251
- shadowCamera.top = cameraRange;
252
- shadowCamera.bottom = -cameraRange;
253
- shadowCamera.near = 0.1;
254
- shadowCamera.far = Math.max(50, radius * 8);
255
- shadowCamera.updateProjectionMatrix();
256
- scene.add(directional.target);
257
- renderer.render(scene, camera);
258
- if (typeof document !== "undefined") {
259
- const captureCanvas = document.createElement("canvas");
260
- captureCanvas.width = targetWidth;
261
- captureCanvas.height = targetHeight;
262
- const ctx = captureCanvas.getContext("2d");
263
- if (!ctx) {
264
- dataUrl = renderer.domElement.toDataURL("image/png");
265
- } else {
266
- ctx.clearRect(0, 0, targetWidth, targetHeight);
267
- ctx.drawImage(renderer.domElement, 0, 0, targetWidth, targetHeight);
268
- dataUrl = captureCanvas.toDataURL("image/png");
269
- }
270
- } else {
271
- dataUrl = renderer.domElement.toDataURL("image/png");
272
- }
273
- scene.remove(directional.target);
274
- } finally {
275
- if (mixer) {
276
- mixer.stopAllAction();
277
- }
278
- scene.remove(root);
279
- scene.remove(ambient);
280
- scene.remove(directional);
281
- disposeScene();
282
- renderer.setSize(previousWidth || targetWidth, previousHeight || targetHeight, false);
283
- renderer.setPixelRatio(previousPixelRatio || 1);
284
- renderer.shadowMap.enabled = previousShadowEnabled;
285
- renderer.shadowMap.type = previousShadowType;
286
- renderer.shadowMap.autoUpdate = previousShadowAutoUpdate;
287
- renderer.setClearColor(clearColor, clearAlpha);
288
- }
289
- return dataUrl;
290
- }
291
- // Annotate the CommonJS export names for ESM import in node:
292
- 0 && (module.exports = {
293
- renderBoxelToDataURL
294
- });
@@ -1,17 +0,0 @@
1
- export * from "./types.js";
2
- export { createBoxelScene, createBoxelNodeScene } from "./scene.js";
3
- export { attachBoxelOverlays } from "./overlays.js";
4
- export * from "./primitives.js";
5
- export * from "./context.js";
6
- export * from "./textures.js";
7
- export * from "./builders.js";
8
- export * from "./voxels/mesher.js";
9
- export * from "./voxels/faces.js";
10
- export { exportModelToGLB, createBoxelSceneGraph } from "./exporters/glb.js";
11
- export type { ExportMode } from "./exporters/glb.js";
12
- export { renderBoxelToDataURL } from "./exporters/image.js";
13
- export type { RenderBoxelImageOptions } from "./exporters/image.js";
14
- export { __testing as __boxelThreeTesting } from "./exporters/glb.js";
15
- export * from "./texture-atlas.js";
16
- export * from "./skinned-mesh.js";
17
- export * from "./instantiate.js";
@@ -1,64 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var src_exports = {};
20
- __export(src_exports, {
21
- __boxelThreeTesting: () => import_glb2.__testing,
22
- attachBoxelOverlays: () => import_overlays.attachBoxelOverlays,
23
- createBoxelNodeScene: () => import_scene.createBoxelNodeScene,
24
- createBoxelScene: () => import_scene.createBoxelScene,
25
- createBoxelSceneGraph: () => import_glb.createBoxelSceneGraph,
26
- exportModelToGLB: () => import_glb.exportModelToGLB,
27
- renderBoxelToDataURL: () => import_image.renderBoxelToDataURL
28
- });
29
- module.exports = __toCommonJS(src_exports);
30
- __reExport(src_exports, require("./types.js"), module.exports);
31
- var import_scene = require("./scene.js");
32
- var import_overlays = require("./overlays.js");
33
- __reExport(src_exports, require("./primitives.js"), module.exports);
34
- __reExport(src_exports, require("./context.js"), module.exports);
35
- __reExport(src_exports, require("./textures.js"), module.exports);
36
- __reExport(src_exports, require("./builders.js"), module.exports);
37
- __reExport(src_exports, require("./voxels/mesher.js"), module.exports);
38
- __reExport(src_exports, require("./voxels/faces.js"), module.exports);
39
- var import_glb = require("./exporters/glb.js");
40
- var import_image = require("./exporters/image.js");
41
- var import_glb2 = require("./exporters/glb.js");
42
- __reExport(src_exports, require("./texture-atlas.js"), module.exports);
43
- __reExport(src_exports, require("./skinned-mesh.js"), module.exports);
44
- __reExport(src_exports, require("./instantiate.js"), module.exports);
45
- // Annotate the CommonJS export names for ESM import in node:
46
- 0 && (module.exports = {
47
- __boxelThreeTesting,
48
- attachBoxelOverlays,
49
- createBoxelNodeScene,
50
- createBoxelScene,
51
- createBoxelSceneGraph,
52
- exportModelToGLB,
53
- renderBoxelToDataURL,
54
- ...require("./types.js"),
55
- ...require("./primitives.js"),
56
- ...require("./context.js"),
57
- ...require("./textures.js"),
58
- ...require("./builders.js"),
59
- ...require("./voxels/mesher.js"),
60
- ...require("./voxels/faces.js"),
61
- ...require("./texture-atlas.js"),
62
- ...require("./skinned-mesh.js"),
63
- ...require("./instantiate.js")
64
- });
@@ -1,40 +0,0 @@
1
- import type * as THREEType from "three";
2
- import type { BoxelDefinition } from "@playdrop/boxel-core";
3
- import type { BoxelSceneResult } from "./types.js";
4
- import type { BuildSkinnedMeshResult } from "./skinned-mesh.js";
5
- export type InstantiateEntityObject3DMode = "hierarchy" | "merged" | "skinned";
6
- interface InstantiateBaseResult {
7
- mode: InstantiateEntityObject3DMode;
8
- dispose(): void;
9
- }
10
- export interface InstantiateHierarchyResult extends InstantiateBaseResult {
11
- mode: "hierarchy";
12
- object: THREEType.Group;
13
- scene: BoxelSceneResult;
14
- clips: THREEType.AnimationClip[];
15
- findNode(nodeId: string): THREEType.Object3D | undefined;
16
- forEachNode(visitor: (node: THREEType.Object3D, nodeId: string) => void): void;
17
- }
18
- export interface InstantiateMergedResult extends InstantiateBaseResult {
19
- mode: "merged";
20
- object: THREEType.Group;
21
- }
22
- export interface InstantiateSkinnedResult extends InstantiateBaseResult {
23
- mode: "skinned";
24
- object: THREEType.SkinnedMesh;
25
- skeleton: THREEType.Skeleton;
26
- boneMap: Map<string, THREEType.Bone>;
27
- clips: THREEType.AnimationClip[];
28
- stats: BuildSkinnedMeshResult["stats"];
29
- warnings: string[];
30
- findBone(nodeId: string): THREEType.Bone | undefined;
31
- forEachBone(visitor: (bone: THREEType.Bone, nodeId: string) => void): void;
32
- }
33
- export type InstantiateEntityObject3DResult = InstantiateHierarchyResult | InstantiateMergedResult | InstantiateSkinnedResult;
34
- export interface InstantiateEntityObject3DOptions {
35
- THREE: typeof THREEType;
36
- entity: BoxelDefinition;
37
- mode?: InstantiateEntityObject3DMode;
38
- }
39
- export declare function instantiateEntityObject3D(options: InstantiateEntityObject3DOptions): InstantiateEntityObject3DResult;
40
- export {};
@@ -1,96 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
- var instantiate_exports = {};
19
- __export(instantiate_exports, {
20
- instantiateEntityObject3D: () => instantiateEntityObject3D
21
- });
22
- module.exports = __toCommonJS(instantiate_exports);
23
- var import_scene = require("./scene.js");
24
- var import_glb = require("./exporters/glb.js");
25
- var import_skinned_mesh = require("./skinned-mesh.js");
26
- var import_animations = require("./animations.js");
27
- function instantiateHierarchy(options) {
28
- const { THREE, entity } = options;
29
- const scene = (0, import_scene.createBoxelScene)({ THREE, entity });
30
- const clips = scene.animations.map((animation) => animation.clip);
31
- return {
32
- mode: "hierarchy",
33
- object: scene.root,
34
- scene,
35
- clips,
36
- findNode: (nodeId) => scene.nodes.get(nodeId)?.object,
37
- forEachNode: (visitor) => {
38
- scene.nodes.forEach((meta) => visitor(meta.object, meta.id));
39
- },
40
- dispose: () => {
41
- scene.dispose();
42
- }
43
- };
44
- }
45
- function instantiateMerged(options) {
46
- const { THREE, entity } = options;
47
- const graph = (0, import_glb.createBoxelSceneGraph)({ THREE, model: entity, mode: "merged" });
48
- const { root } = graph;
49
- return {
50
- mode: "merged",
51
- object: root,
52
- dispose: () => {
53
- graph.dispose();
54
- }
55
- };
56
- }
57
- function instantiateSkinned(options) {
58
- const { THREE, entity } = options;
59
- const result = (0, import_skinned_mesh.buildEntitySkinnedMesh)({ THREE, entity });
60
- const boneMap = result.boneMap;
61
- const animations = (0, import_animations.buildAnimations)(THREE, entity, boneMap);
62
- const clips = animations.map((animation) => animation.clip);
63
- return {
64
- mode: "skinned",
65
- object: result.mesh,
66
- skeleton: result.skeleton,
67
- boneMap,
68
- clips,
69
- stats: result.stats,
70
- warnings: result.warnings,
71
- findBone: (nodeId) => boneMap.get(nodeId),
72
- forEachBone: (visitor) => {
73
- boneMap.forEach((bone, nodeId) => visitor(bone, nodeId));
74
- },
75
- dispose: () => {
76
- result.dispose();
77
- }
78
- };
79
- }
80
- function instantiateEntityObject3D(options) {
81
- const mode = options.mode ?? "hierarchy";
82
- switch (mode) {
83
- case "hierarchy":
84
- return instantiateHierarchy(options);
85
- case "merged":
86
- return instantiateMerged(options);
87
- case "skinned":
88
- return instantiateSkinned(options);
89
- default:
90
- throw new Error(`Unknown entity instantiation mode: ${String(mode)}`);
91
- }
92
- }
93
- // Annotate the CommonJS export names for ESM import in node:
94
- 0 && (module.exports = {
95
- instantiateEntityObject3D
96
- });
@@ -1,8 +0,0 @@
1
- import type * as THREEType from "three";
2
- import type { Node } from "@playdrop/boxel-core";
3
- import type { PrimitiveBuilderContext } from "./context.js";
4
- export interface NodeBuildResult {
5
- object: THREEType.Object3D;
6
- nodes: Map<string, THREEType.Object3D>;
7
- }
8
- export declare function buildNodeObject(context: PrimitiveBuilderContext, node: Node, visitedPrimitives?: Set<string>): NodeBuildResult;
@@ -1,88 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
- var nodes_exports = {};
19
- __export(nodes_exports, {
20
- buildNodeObject: () => buildNodeObject
21
- });
22
- module.exports = __toCommonJS(nodes_exports);
23
- var import_builders = require("./builders.js");
24
- function applyNodeTransforms(context, object, node) {
25
- object.position.set(node.position[0], node.position[1], node.position[2]);
26
- if (node.rotation) {
27
- object.rotation.set(context.THREE.MathUtils.degToRad(node.rotation[0]), context.THREE.MathUtils.degToRad(node.rotation[1]), context.THREE.MathUtils.degToRad(node.rotation[2]));
28
- }
29
- if (node.scale) {
30
- object.scale.set(node.scale[0], node.scale[1], node.scale[2]);
31
- }
32
- }
33
- function buildNodeObject(context, node, visitedPrimitives = /* @__PURE__ */ new Set()) {
34
- const connectMode = node.connect ?? "none";
35
- const object = new context.THREE.Object3D();
36
- object.name = node.id;
37
- object.userData = {
38
- ...object.userData ?? {},
39
- kind: "entity-node",
40
- nodeId: node.id,
41
- primitiveId: node.mesh ?? object.userData?.primitiveId ?? void 0,
42
- connectMode
43
- };
44
- if (node.size) {
45
- object.userData.size = [...node.size];
46
- }
47
- if (node.center) {
48
- object.userData.center = [...node.center];
49
- }
50
- applyNodeTransforms(context, object, node);
51
- const nodes = /* @__PURE__ */ new Map();
52
- nodes.set(node.id, object);
53
- if (node.mesh) {
54
- const primitive = context.primitivesById.get(node.mesh);
55
- if (primitive) {
56
- const mesh = (0, import_builders.createPrimitiveObject)(context, primitive, "centered", visitedPrimitives);
57
- if (mesh) {
58
- if (node.center) {
59
- mesh.position.set(node.center[0], node.center[1], node.center[2]);
60
- }
61
- object.add(mesh);
62
- if (mesh.userData?.size && !object.userData.size) {
63
- object.userData.size = mesh.userData.size;
64
- }
65
- if (mesh.userData?.sockets) {
66
- object.userData.sockets = mesh.userData.sockets;
67
- }
68
- }
69
- }
70
- } else if (node.size) {
71
- const mesh = (0, import_builders.createBoundingBoxMesh)(context, node.size);
72
- mesh.name = `${node.id}__placeholder`;
73
- if (node.center) {
74
- mesh.position.set(node.center[0], node.center[1], node.center[2]);
75
- }
76
- object.add(mesh);
77
- }
78
- node.children.forEach((child) => {
79
- const childResult = buildNodeObject(context, child, new Set(visitedPrimitives));
80
- object.add(childResult.object);
81
- childResult.nodes.forEach((value, key) => nodes.set(key, value));
82
- });
83
- return { object, nodes };
84
- }
85
- // Annotate the CommonJS export names for ESM import in node:
86
- 0 && (module.exports = {
87
- buildNodeObject
88
- });
@@ -1,7 +0,0 @@
1
- import type * as THREEType from "three";
2
- import type { BoxelOverlayOptions, BoxelOverlayHandles } from "./types.js";
3
- export interface CreateOverlayContext {
4
- THREE: typeof THREEType;
5
- target: THREEType.Object3D;
6
- }
7
- export declare function attachBoxelOverlays(context: CreateOverlayContext, options?: BoxelOverlayOptions): BoxelOverlayHandles;