@playdrop/playdrop-cli 0.16.12 → 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 (364) 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 -7
  25. package/dist/commands/chat.js +165 -77
  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/provider-telemetry.js +1 -1
  59. package/dist/commands/worker/runtime.d.ts +8 -10
  60. package/dist/commands/worker/runtime.js +53 -48
  61. package/dist/commands/worker.d.ts +79 -19
  62. package/dist/commands/worker.js +1796 -419
  63. package/dist/config.d.ts +2 -0
  64. package/dist/config.js +16 -3
  65. package/dist/environment.d.ts +0 -1
  66. package/dist/environment.js +0 -8
  67. package/dist/index.js +92 -22
  68. package/dist/workerAppProject.d.ts +1 -1
  69. package/dist/workerAppProject.js +15 -2
  70. package/node_modules/@playdrop/api-client/dist/client.d.ts +143 -39
  71. package/node_modules/@playdrop/api-client/dist/client.d.ts.map +1 -1
  72. package/node_modules/@playdrop/api-client/dist/client.js +33 -0
  73. package/node_modules/@playdrop/api-client/dist/core/request.d.ts +1 -0
  74. package/node_modules/@playdrop/api-client/dist/core/request.d.ts.map +1 -1
  75. package/node_modules/@playdrop/api-client/dist/core/request.js +17 -11
  76. package/node_modules/@playdrop/api-client/dist/domains/agent-tasks.d.ts +51 -6
  77. package/node_modules/@playdrop/api-client/dist/domains/agent-tasks.d.ts.map +1 -1
  78. package/node_modules/@playdrop/api-client/dist/domains/agent-tasks.js +338 -41
  79. package/node_modules/@playdrop/api-client/dist/domains/ai.d.ts +24 -1
  80. package/node_modules/@playdrop/api-client/dist/domains/ai.d.ts.map +1 -1
  81. package/node_modules/@playdrop/api-client/dist/domains/ai.js +20 -0
  82. package/node_modules/@playdrop/api-client/dist/domains/apps.d.ts +13 -8
  83. package/node_modules/@playdrop/api-client/dist/domains/apps.d.ts.map +1 -1
  84. package/node_modules/@playdrop/api-client/dist/domains/apps.js +158 -90
  85. package/node_modules/@playdrop/api-client/dist/domains/assets.d.ts +4 -0
  86. package/node_modules/@playdrop/api-client/dist/domains/assets.d.ts.map +1 -1
  87. package/node_modules/@playdrop/api-client/dist/domains/assets.js +27 -0
  88. package/node_modules/@playdrop/api-client/dist/domains/chat.d.ts +152 -21
  89. package/node_modules/@playdrop/api-client/dist/domains/chat.d.ts.map +1 -1
  90. package/node_modules/@playdrop/api-client/dist/domains/chat.js +477 -100
  91. package/node_modules/@playdrop/api-client/dist/domains/player-meta.d.ts +2 -1
  92. package/node_modules/@playdrop/api-client/dist/domains/player-meta.d.ts.map +1 -1
  93. package/node_modules/@playdrop/api-client/dist/domains/player-meta.js +9 -0
  94. package/node_modules/@playdrop/api-client/dist/domains/playtrade.d.ts +1 -2
  95. package/node_modules/@playdrop/api-client/dist/domains/playtrade.d.ts.map +1 -1
  96. package/node_modules/@playdrop/api-client/dist/domains/playtrade.js +0 -11
  97. package/node_modules/@playdrop/api-client/dist/domains/social.d.ts +29 -0
  98. package/node_modules/@playdrop/api-client/dist/domains/social.d.ts.map +1 -0
  99. package/node_modules/@playdrop/api-client/dist/domains/social.js +79 -0
  100. package/node_modules/@playdrop/api-client/dist/index.d.ts +81 -30
  101. package/node_modules/@playdrop/api-client/dist/index.d.ts.map +1 -1
  102. package/node_modules/@playdrop/api-client/dist/index.js +217 -56
  103. package/node_modules/@playdrop/api-client/dist/runtime.d.ts +18 -0
  104. package/node_modules/@playdrop/api-client/dist/runtime.d.ts.map +1 -0
  105. package/node_modules/@playdrop/api-client/dist/runtime.js +54 -0
  106. package/node_modules/@playdrop/api-client/package.json +7 -0
  107. package/node_modules/@playdrop/config/client-meta.json +4 -4
  108. package/node_modules/@playdrop/config/dist/src/creator-plans.d.ts +11 -0
  109. package/node_modules/@playdrop/config/dist/src/creator-plans.d.ts.map +1 -1
  110. package/node_modules/@playdrop/config/dist/src/creator-plans.js +13 -1
  111. package/node_modules/@playdrop/config/dist/src/deployment.d.ts +0 -1
  112. package/node_modules/@playdrop/config/dist/src/deployment.d.ts.map +1 -1
  113. package/node_modules/@playdrop/config/dist/src/deployment.js +0 -8
  114. package/node_modules/@playdrop/config/dist/src/public-deployment.d.ts +0 -1
  115. package/node_modules/@playdrop/config/dist/src/public-deployment.d.ts.map +1 -1
  116. package/node_modules/@playdrop/config/dist/src/public-deployment.js +0 -8
  117. package/node_modules/@playdrop/config/dist/src/runtime-service-origins.d.ts +1 -1
  118. package/node_modules/@playdrop/config/dist/src/runtime-service-origins.js +2 -2
  119. package/node_modules/@playdrop/config/dist/src/server/logging.d.ts.map +1 -1
  120. package/node_modules/@playdrop/config/dist/src/server/logging.js +31 -2
  121. package/node_modules/@playdrop/config/dist/test/creator-plans.test.js +10 -0
  122. package/node_modules/@playdrop/config/dist/test/deployment.test.js +0 -4
  123. package/node_modules/@playdrop/config/dist/test/runtime-service-origins.test.js +2 -0
  124. package/node_modules/@playdrop/config/dist/tsconfig.tsbuildinfo +1 -1
  125. package/node_modules/@playdrop/config/package.json +6 -0
  126. package/node_modules/@playdrop/game-source-git/dist/src/archive.d.ts +9 -0
  127. package/node_modules/@playdrop/game-source-git/dist/src/archive.d.ts.map +1 -0
  128. package/node_modules/@playdrop/game-source-git/dist/src/archive.js +107 -0
  129. package/node_modules/@playdrop/game-source-git/dist/src/bundle-storage.d.ts +29 -0
  130. package/node_modules/@playdrop/game-source-git/dist/src/bundle-storage.d.ts.map +1 -0
  131. package/node_modules/@playdrop/game-source-git/dist/src/bundle-storage.js +64 -0
  132. package/node_modules/@playdrop/game-source-git/dist/src/export.d.ts +8 -0
  133. package/node_modules/@playdrop/game-source-git/dist/src/export.d.ts.map +1 -0
  134. package/node_modules/@playdrop/game-source-git/dist/src/export.js +25 -0
  135. package/node_modules/@playdrop/game-source-git/dist/src/git.d.ts +39 -0
  136. package/node_modules/@playdrop/game-source-git/dist/src/git.d.ts.map +1 -0
  137. package/node_modules/@playdrop/game-source-git/dist/src/git.js +195 -0
  138. package/node_modules/@playdrop/game-source-git/dist/src/ignore.d.ts +6 -0
  139. package/node_modules/@playdrop/game-source-git/dist/src/ignore.d.ts.map +1 -0
  140. package/node_modules/@playdrop/game-source-git/dist/src/ignore.js +51 -0
  141. package/node_modules/@playdrop/game-source-git/dist/src/index.d.ts +10 -0
  142. package/node_modules/@playdrop/game-source-git/dist/src/index.d.ts.map +1 -0
  143. package/node_modules/@playdrop/{boxel-core/dist/src/humanoid/r15 → game-source-git/dist/src}/index.js +9 -4
  144. package/node_modules/@playdrop/game-source-git/dist/src/lock.d.ts +17 -0
  145. package/node_modules/@playdrop/game-source-git/dist/src/lock.d.ts.map +1 -0
  146. package/node_modules/@playdrop/game-source-git/dist/src/lock.js +72 -0
  147. package/node_modules/@playdrop/game-source-git/dist/src/materialize.d.ts +10 -0
  148. package/node_modules/@playdrop/game-source-git/dist/src/materialize.d.ts.map +1 -0
  149. package/node_modules/@playdrop/game-source-git/dist/src/materialize.js +99 -0
  150. package/node_modules/@playdrop/game-source-git/dist/src/paths.d.ts +24 -0
  151. package/node_modules/@playdrop/game-source-git/dist/src/paths.d.ts.map +1 -0
  152. package/node_modules/@playdrop/game-source-git/dist/src/paths.js +207 -0
  153. package/node_modules/@playdrop/game-source-git/dist/src/repository.d.ts +66 -0
  154. package/node_modules/@playdrop/game-source-git/dist/src/repository.d.ts.map +1 -0
  155. package/node_modules/@playdrop/game-source-git/dist/src/repository.js +213 -0
  156. package/node_modules/@playdrop/game-source-git/dist/test/core.test.d.ts +2 -0
  157. package/node_modules/@playdrop/game-source-git/dist/test/core.test.d.ts.map +1 -0
  158. package/node_modules/@playdrop/game-source-git/dist/test/core.test.js +441 -0
  159. package/node_modules/@playdrop/game-source-git/dist/tsconfig.tsbuildinfo +1 -0
  160. package/node_modules/@playdrop/game-source-git/package.json +28 -0
  161. package/node_modules/@playdrop/types/dist/agent-task-terminal.d.ts +2 -2
  162. package/node_modules/@playdrop/types/dist/agent-task-terminal.d.ts.map +1 -1
  163. package/node_modules/@playdrop/types/dist/agent-task-terminal.js +15 -9
  164. package/node_modules/@playdrop/types/dist/api.d.ts +730 -166
  165. package/node_modules/@playdrop/types/dist/api.d.ts.map +1 -1
  166. package/node_modules/@playdrop/types/dist/api.js +65 -18
  167. package/node_modules/@playdrop/types/dist/asset-pack.d.ts +2 -0
  168. package/node_modules/@playdrop/types/dist/asset-pack.d.ts.map +1 -1
  169. package/node_modules/@playdrop/types/dist/asset.d.ts +22 -8
  170. package/node_modules/@playdrop/types/dist/asset.d.ts.map +1 -1
  171. package/node_modules/@playdrop/types/dist/asset.js +26 -26
  172. package/node_modules/@playdrop/types/dist/chat.d.ts +273 -31
  173. package/node_modules/@playdrop/types/dist/chat.d.ts.map +1 -1
  174. package/node_modules/@playdrop/types/dist/chat.js +38 -4
  175. package/node_modules/@playdrop/types/dist/index.d.ts +3 -0
  176. package/node_modules/@playdrop/types/dist/index.d.ts.map +1 -1
  177. package/node_modules/@playdrop/types/dist/index.js +7 -1
  178. package/node_modules/@playdrop/types/dist/public-cache-tags.d.ts +11 -0
  179. package/node_modules/@playdrop/types/dist/public-cache-tags.d.ts.map +1 -0
  180. package/node_modules/@playdrop/types/dist/public-cache-tags.js +78 -0
  181. package/node_modules/@playdrop/types/dist/realtime.d.ts +3 -15
  182. package/node_modules/@playdrop/types/dist/realtime.d.ts.map +1 -1
  183. package/node_modules/@playdrop/types/dist/social.d.ts +64 -0
  184. package/node_modules/@playdrop/types/dist/social.d.ts.map +1 -0
  185. package/node_modules/@playdrop/{boxel-three/dist/src/types.js → types/dist/social.js} +14 -2
  186. package/node_modules/@playdrop/types/dist/spritesheet.d.ts +51 -0
  187. package/node_modules/@playdrop/types/dist/spritesheet.d.ts.map +1 -0
  188. package/node_modules/@playdrop/types/dist/spritesheet.js +73 -0
  189. package/node_modules/@playdrop/types/dist/version.d.ts +86 -58
  190. package/node_modules/@playdrop/types/dist/version.d.ts.map +1 -1
  191. package/node_modules/@playdrop/types/dist/version.js +111 -0
  192. package/node_modules/@playdrop/types/package.json +14 -0
  193. package/node_modules/@playdrop/vox-three/dist/src/index.d.ts +1 -1
  194. package/node_modules/@playdrop/vox-three/dist/src/index.js +1 -1
  195. package/node_modules/@playdrop/vox-three/dist/src/index.js.map +1 -1
  196. package/node_modules/@playdrop/vox-three/dist/src/vox.d.ts +0 -3
  197. package/node_modules/@playdrop/vox-three/dist/src/vox.js +0 -110
  198. package/node_modules/@playdrop/vox-three/dist/src/vox.js.map +1 -1
  199. package/node_modules/@playdrop/vox-three/dist/test/vox.test.js +0 -18
  200. package/node_modules/@playdrop/vox-three/dist/test/vox.test.js.map +1 -1
  201. package/node_modules/@playdrop/vox-three/package.json +8 -4
  202. package/package.json +9 -11
  203. package/dist/assets/model-artifacts.d.ts +0 -8
  204. package/dist/assets/model-artifacts.js +0 -382
  205. package/dist/assets/model-worker.d.ts +0 -22
  206. package/dist/assets/model-worker.js +0 -123
  207. package/node_modules/@playdrop/ai-client/dist/index.d.ts +0 -441
  208. package/node_modules/@playdrop/ai-client/dist/index.d.ts.map +0 -1
  209. package/node_modules/@playdrop/ai-client/dist/index.js +0 -499
  210. package/node_modules/@playdrop/ai-client/package.json +0 -22
  211. package/node_modules/@playdrop/boxel-core/dist/src/entity-cleaner.d.ts +0 -13
  212. package/node_modules/@playdrop/boxel-core/dist/src/entity-cleaner.js +0 -141
  213. package/node_modules/@playdrop/boxel-core/dist/src/entity-cleaner.js.map +0 -1
  214. package/node_modules/@playdrop/boxel-core/dist/src/entity-utils.d.ts +0 -47
  215. package/node_modules/@playdrop/boxel-core/dist/src/entity-utils.js +0 -313
  216. package/node_modules/@playdrop/boxel-core/dist/src/entity-utils.js.map +0 -1
  217. package/node_modules/@playdrop/boxel-core/dist/src/format-utils.d.ts +0 -3
  218. package/node_modules/@playdrop/boxel-core/dist/src/format-utils.js +0 -36
  219. package/node_modules/@playdrop/boxel-core/dist/src/format-utils.js.map +0 -1
  220. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/geometry.d.ts +0 -23
  221. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/geometry.js +0 -11
  222. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/geometry.js.map +0 -1
  223. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/index.d.ts +0 -4
  224. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/index.js +0 -21
  225. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/index.js.map +0 -1
  226. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/common.d.ts +0 -4
  227. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/common.js +0 -24
  228. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/common.js.map +0 -1
  229. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/index.d.ts +0 -3
  230. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/index.js.map +0 -1
  231. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/textured-builder.d.ts +0 -3
  232. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/textured-builder.js +0 -387
  233. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/textured-builder.js.map +0 -1
  234. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/types.d.ts +0 -6
  235. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/types.js +0 -3
  236. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/types.js.map +0 -1
  237. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/voxel-builder.d.ts +0 -3
  238. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/voxel-builder.js +0 -373
  239. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/voxel-builder.js.map +0 -1
  240. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/builder.d.ts +0 -12
  241. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/builder.js +0 -215
  242. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/builder.js.map +0 -1
  243. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/index.d.ts +0 -4
  244. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/index.js +0 -18
  245. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/index.js.map +0 -1
  246. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/scanner.d.ts +0 -42
  247. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/scanner.js +0 -145
  248. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/scanner.js.map +0 -1
  249. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/artifacts.d.ts +0 -26
  250. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/artifacts.js +0 -65
  251. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/artifacts.js.map +0 -1
  252. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/face-map.d.ts +0 -33
  253. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/face-map.js +0 -175
  254. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/face-map.js.map +0 -1
  255. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/humanoid_r15.json +0 -1517
  256. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/humanoid_r6.json +0 -61
  257. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/index.d.ts +0 -10
  258. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/index.js +0 -23
  259. package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/index.js.map +0 -1
  260. package/node_modules/@playdrop/boxel-core/dist/src/index.d.ts +0 -19
  261. package/node_modules/@playdrop/boxel-core/dist/src/index.js +0 -36
  262. package/node_modules/@playdrop/boxel-core/dist/src/index.js.map +0 -1
  263. package/node_modules/@playdrop/boxel-core/dist/src/materials.d.ts +0 -26
  264. package/node_modules/@playdrop/boxel-core/dist/src/materials.js +0 -184
  265. package/node_modules/@playdrop/boxel-core/dist/src/materials.js.map +0 -1
  266. package/node_modules/@playdrop/boxel-core/dist/src/palette_tools.d.ts +0 -68
  267. package/node_modules/@playdrop/boxel-core/dist/src/palette_tools.js +0 -488
  268. package/node_modules/@playdrop/boxel-core/dist/src/palette_tools.js.map +0 -1
  269. package/node_modules/@playdrop/boxel-core/dist/src/serialization.d.ts +0 -4
  270. package/node_modules/@playdrop/boxel-core/dist/src/serialization.js +0 -380
  271. package/node_modules/@playdrop/boxel-core/dist/src/serialization.js.map +0 -1
  272. package/node_modules/@playdrop/boxel-core/dist/src/textures.d.ts +0 -29
  273. package/node_modules/@playdrop/boxel-core/dist/src/textures.js +0 -208
  274. package/node_modules/@playdrop/boxel-core/dist/src/textures.js.map +0 -1
  275. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/infer-face.d.ts +0 -9
  276. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/infer-face.js +0 -312
  277. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/infer-face.js.map +0 -1
  278. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/layer-mode.d.ts +0 -9
  279. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/layer-mode.js +0 -154
  280. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/layer-mode.js.map +0 -1
  281. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/merge-overlay.d.ts +0 -2
  282. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/merge-overlay.js +0 -121
  283. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/merge-overlay.js.map +0 -1
  284. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/slice.d.ts +0 -20
  285. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/slice.js +0 -389
  286. package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/slice.js.map +0 -1
  287. package/node_modules/@playdrop/boxel-core/dist/src/transforms/upscale.d.ts +0 -3
  288. package/node_modules/@playdrop/boxel-core/dist/src/transforms/upscale.js +0 -206
  289. package/node_modules/@playdrop/boxel-core/dist/src/transforms/upscale.js.map +0 -1
  290. package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/slice.d.ts +0 -12
  291. package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/slice.js +0 -81
  292. package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/slice.js.map +0 -1
  293. package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/textured-to-voxel.d.ts +0 -12
  294. package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/textured-to-voxel.js +0 -318
  295. package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/textured-to-voxel.js.map +0 -1
  296. package/node_modules/@playdrop/boxel-core/dist/src/types.d.ts +0 -168
  297. package/node_modules/@playdrop/boxel-core/dist/src/types.js +0 -3
  298. package/node_modules/@playdrop/boxel-core/dist/src/types.js.map +0 -1
  299. package/node_modules/@playdrop/boxel-core/dist/src/validation.d.ts +0 -24
  300. package/node_modules/@playdrop/boxel-core/dist/src/validation.js +0 -620
  301. package/node_modules/@playdrop/boxel-core/dist/src/validation.js.map +0 -1
  302. package/node_modules/@playdrop/boxel-core/dist/src/voxels/greedy-mesher.d.ts +0 -11
  303. package/node_modules/@playdrop/boxel-core/dist/src/voxels/greedy-mesher.js +0 -135
  304. package/node_modules/@playdrop/boxel-core/dist/src/voxels/greedy-mesher.js.map +0 -1
  305. package/node_modules/@playdrop/boxel-core/dist/src/voxels.d.ts +0 -23
  306. package/node_modules/@playdrop/boxel-core/dist/src/voxels.js +0 -52
  307. package/node_modules/@playdrop/boxel-core/dist/src/voxels.js.map +0 -1
  308. package/node_modules/@playdrop/boxel-core/package.json +0 -19
  309. package/node_modules/@playdrop/boxel-three/dist/src/animations.d.ts +0 -4
  310. package/node_modules/@playdrop/boxel-three/dist/src/animations.js +0 -92
  311. package/node_modules/@playdrop/boxel-three/dist/src/builders.d.ts +0 -8
  312. package/node_modules/@playdrop/boxel-three/dist/src/builders.js +0 -363
  313. package/node_modules/@playdrop/boxel-three/dist/src/context.d.ts +0 -24
  314. package/node_modules/@playdrop/boxel-three/dist/src/context.js +0 -58
  315. package/node_modules/@playdrop/boxel-three/dist/src/exporters/glb.d.ts +0 -100
  316. package/node_modules/@playdrop/boxel-three/dist/src/exporters/glb.js +0 -927
  317. package/node_modules/@playdrop/boxel-three/dist/src/exporters/image.d.ts +0 -18
  318. package/node_modules/@playdrop/boxel-three/dist/src/exporters/image.js +0 -294
  319. package/node_modules/@playdrop/boxel-three/dist/src/index.d.ts +0 -17
  320. package/node_modules/@playdrop/boxel-three/dist/src/index.js +0 -64
  321. package/node_modules/@playdrop/boxel-three/dist/src/instantiate.d.ts +0 -40
  322. package/node_modules/@playdrop/boxel-three/dist/src/instantiate.js +0 -96
  323. package/node_modules/@playdrop/boxel-three/dist/src/nodes.d.ts +0 -8
  324. package/node_modules/@playdrop/boxel-three/dist/src/nodes.js +0 -88
  325. package/node_modules/@playdrop/boxel-three/dist/src/overlays.d.ts +0 -7
  326. package/node_modules/@playdrop/boxel-three/dist/src/overlays.js +0 -123
  327. package/node_modules/@playdrop/boxel-three/dist/src/primitives.d.ts +0 -4
  328. package/node_modules/@playdrop/boxel-three/dist/src/primitives.js +0 -48
  329. package/node_modules/@playdrop/boxel-three/dist/src/scene.d.ts +0 -3
  330. package/node_modules/@playdrop/boxel-three/dist/src/scene.js +0 -168
  331. package/node_modules/@playdrop/boxel-three/dist/src/skinned-mesh.d.ts +0 -29
  332. package/node_modules/@playdrop/boxel-three/dist/src/skinned-mesh.js +0 -623
  333. package/node_modules/@playdrop/boxel-three/dist/src/texture-atlas.d.ts +0 -13
  334. package/node_modules/@playdrop/boxel-three/dist/src/texture-atlas.js +0 -133
  335. package/node_modules/@playdrop/boxel-three/dist/src/textures.d.ts +0 -17
  336. package/node_modules/@playdrop/boxel-three/dist/src/textures.js +0 -216
  337. package/node_modules/@playdrop/boxel-three/dist/src/types.d.ts +0 -112
  338. package/node_modules/@playdrop/boxel-three/dist/src/voxels/faces.d.ts +0 -28
  339. package/node_modules/@playdrop/boxel-three/dist/src/voxels/faces.js +0 -344
  340. package/node_modules/@playdrop/boxel-three/dist/src/voxels/mesher.d.ts +0 -24
  341. package/node_modules/@playdrop/boxel-three/dist/src/voxels/mesher.js +0 -113
  342. package/node_modules/@playdrop/boxel-three/dist/test/export-image.playwright.test.d.ts +0 -1
  343. package/node_modules/@playdrop/boxel-three/dist/test/export-image.playwright.test.js +0 -137
  344. package/node_modules/@playdrop/boxel-three/dist/test/fixtures/render-worker.d.ts +0 -20
  345. package/node_modules/@playdrop/boxel-three/dist/test/fixtures/render-worker.js +0 -85
  346. package/node_modules/@playdrop/boxel-three/dist/test/glb-skinned.test.d.ts +0 -1
  347. package/node_modules/@playdrop/boxel-three/dist/test/glb-skinned.test.js +0 -104
  348. package/node_modules/@playdrop/boxel-three/dist/test/index.test.d.ts +0 -1
  349. package/node_modules/@playdrop/boxel-three/dist/test/index.test.js +0 -30
  350. package/node_modules/@playdrop/boxel-three/dist/test/instantiate.test.d.ts +0 -1
  351. package/node_modules/@playdrop/boxel-three/dist/test/instantiate.test.js +0 -88
  352. package/node_modules/@playdrop/boxel-three/dist/test/overlays.test.d.ts +0 -1
  353. package/node_modules/@playdrop/boxel-three/dist/test/overlays.test.js +0 -42
  354. package/node_modules/@playdrop/boxel-three/dist/test/scene-filter.test.d.ts +0 -1
  355. package/node_modules/@playdrop/boxel-three/dist/test/scene-filter.test.js +0 -73
  356. package/node_modules/@playdrop/boxel-three/dist/test/scene-smoke.test.d.ts +0 -1
  357. package/node_modules/@playdrop/boxel-three/dist/test/scene-smoke.test.js +0 -85
  358. package/node_modules/@playdrop/boxel-three/dist/test/skinned-mesh.test.d.ts +0 -1
  359. package/node_modules/@playdrop/boxel-three/dist/test/skinned-mesh.test.js +0 -73
  360. package/node_modules/@playdrop/boxel-three/dist/test/textured-overlay.test.d.ts +0 -1
  361. package/node_modules/@playdrop/boxel-three/dist/test/textured-overlay.test.js +0 -136
  362. package/node_modules/@playdrop/boxel-three/dist/test/voxels.test.d.ts +0 -1
  363. package/node_modules/@playdrop/boxel-three/dist/test/voxels.test.js +0 -42
  364. package/node_modules/@playdrop/boxel-three/package.json +0 -28
@@ -1,488 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.analyzeEntityMaterials = exports.DEFAULT_SATURATION_FACTOR = void 0;
4
- exports.collectMaterialUsage = collectMaterialUsage;
5
- exports.rebalanceLuminance = rebalanceLuminance;
6
- exports.applySaturation = applySaturation;
7
- exports.mapLuminance = mapLuminance;
8
- exports.mapSaturation = mapSaturation;
9
- exports.rewriteEntityPalette = rewriteEntityPalette;
10
- exports.clusterMaterials = clusterMaterials;
11
- exports.analyzePalette = analyzePalette;
12
- const textures_1 = require("./textures");
13
- const FACE_KEYS = ["top", "bottom", "north", "south", "east", "west"];
14
- const EPSILON = 1e-8;
15
- exports.DEFAULT_SATURATION_FACTOR = 2;
16
- const DEFAULT_LUMINANCE_OPTIONS = {
17
- min: 0.04,
18
- max: 0.8,
19
- kneeLow: 0.02,
20
- kneeHigh: 0.08,
21
- };
22
- function collectMaterialUsage(entity) {
23
- const context = {
24
- primitives: new Map(entity.primitives.map((primitive) => [primitive.id, primitive])),
25
- textures: new Map(entity.textures.map((texture) => [texture.id, texture])),
26
- patterns: new Map(entity.patterns.map((pattern) => [pattern.id, pattern])),
27
- materials: new Map(entity.materials.map((material) => [material.id, material])),
28
- counts: new Map(),
29
- textureHistograms: new Map(),
30
- };
31
- if (entity.geometry?.root) {
32
- traverseNodes(context, entity.geometry.root, new Set());
33
- }
34
- const results = [];
35
- context.counts.forEach((count, materialId) => {
36
- const material = context.materials.get(materialId);
37
- if (!material) {
38
- return;
39
- }
40
- const baseColor = Array.isArray(material.baseColor) && material.baseColor.length === 3
41
- ? [...material.baseColor]
42
- : [0, 0, 0];
43
- results.push({
44
- materialId,
45
- baseColor,
46
- opacity: typeof material.opacity === "number" ? material.opacity : undefined,
47
- usageCount: count,
48
- });
49
- });
50
- results.sort((a, b) => {
51
- if (b.usageCount !== a.usageCount) {
52
- return b.usageCount - a.usageCount;
53
- }
54
- return a.materialId.localeCompare(b.materialId);
55
- });
56
- return results;
57
- }
58
- function rebalanceLuminance(color, options) {
59
- const opts = { ...DEFAULT_LUMINANCE_OPTIONS, ...options };
60
- const [rLin, gLin, bLin] = color.map((component) => srgbChannelToLinear(component));
61
- const currentLuminance = computeLuminance(rLin, gLin, bLin);
62
- const target = compressLuminance(currentLuminance, opts);
63
- let nextR = rLin;
64
- let nextG = gLin;
65
- let nextB = bLin;
66
- if (currentLuminance > EPSILON) {
67
- const scale = target / (currentLuminance + EPSILON);
68
- nextR = clamp01(rLin * scale);
69
- nextG = clamp01(gLin * scale);
70
- nextB = clamp01(bLin * scale);
71
- }
72
- else if (target > 0) {
73
- nextR = nextG = nextB = clamp01(target);
74
- }
75
- return {
76
- luminance: target,
77
- color: [linearToSrgbByte(nextR), linearToSrgbByte(nextG), linearToSrgbByte(nextB)],
78
- };
79
- }
80
- function applySaturation(color, options) {
81
- const scale = Number.isFinite(options.scale) && options.scale > 0 ? options.scale : 1;
82
- const targetLuminance = options.luminance ?? computeLuminanceVec(color);
83
- const lab = rgbToLab(color);
84
- const [, chroma, hue] = labToLch(lab);
85
- if (chroma <= EPSILON) {
86
- return { color, luminance: targetLuminance, clipped: false };
87
- }
88
- const evaluate = (s) => {
89
- const scaledLab = lchToLab([lab[0], chroma * s, hue]);
90
- const [rLinRaw, gLinRaw, bLinRaw] = labToLinearRgb(scaledLab);
91
- const clipped = rLinRaw < -1e-5 ||
92
- rLinRaw > 1 + 1e-5 ||
93
- gLinRaw < -1e-5 ||
94
- gLinRaw > 1 + 1e-5 ||
95
- bLinRaw < -1e-5 ||
96
- bLinRaw > 1 + 1e-5;
97
- const rLin = clamp01(rLinRaw);
98
- const gLin = clamp01(gLinRaw);
99
- const bLin = clamp01(bLinRaw);
100
- const luminance = computeLuminance(rLin, gLin, bLin);
101
- return { rLin, gLin, bLin, luminance, clipped };
102
- };
103
- let result = evaluate(1);
104
- if (scale > 1) {
105
- let lo = 1;
106
- let hi = scale;
107
- for (let i = 0; i < 12 && hi - lo > 1e-3; i += 1) {
108
- const mid = (lo + hi) / 2;
109
- const candidate = evaluate(mid);
110
- if (!candidate.clipped) {
111
- result = candidate;
112
- lo = mid;
113
- }
114
- else {
115
- hi = mid;
116
- }
117
- }
118
- }
119
- else if (scale < 1) {
120
- result = evaluate(scale);
121
- }
122
- // Rescale to target luminance while keeping hue/chroma.
123
- let { rLin, gLin, bLin } = result;
124
- if (targetLuminance > EPSILON) {
125
- const scaleFactor = targetLuminance / (result.luminance + EPSILON);
126
- rLin = clamp01(rLin * scaleFactor);
127
- gLin = clamp01(gLin * scaleFactor);
128
- bLin = clamp01(bLin * scaleFactor);
129
- }
130
- const finalLuminance = computeLuminance(rLin, gLin, bLin);
131
- return {
132
- color: [linearToSrgbByte(rLin), linearToSrgbByte(gLin), linearToSrgbByte(bLin)],
133
- luminance: finalLuminance,
134
- clipped: result.clipped,
135
- };
136
- }
137
- function mapLuminance(samples, options) {
138
- return samples.map((sample) => {
139
- const result = rebalanceLuminance(sample.baseColor, options);
140
- return {
141
- ...sample,
142
- color: result.color,
143
- luminance: result.luminance,
144
- };
145
- });
146
- }
147
- function mapSaturation(entries, options) {
148
- return entries.map((entry) => applySaturation(entry.color, { scale: options.scale, luminance: entry.luminance }));
149
- }
150
- function rewriteEntityPalette(entity, colors) {
151
- const clone = structuredClone(entity);
152
- clone.materials =
153
- clone.materials?.map((material) => {
154
- const next = colors.get(material.id);
155
- if (!next)
156
- return material;
157
- return {
158
- ...material,
159
- baseColor: [...next],
160
- };
161
- }) ?? null;
162
- return clone;
163
- }
164
- function clusterMaterials(samples, options) {
165
- if (!Array.isArray(samples) || samples.length === 0) {
166
- return [];
167
- }
168
- const threshold = options?.deltaE && options.deltaE > 0 ? options.deltaE : 0;
169
- const entriesWithLab = samples.map((sample) => ({
170
- sample,
171
- lab: rgbToLab(sample.baseColor),
172
- }));
173
- if (threshold === 0) {
174
- return entriesWithLab
175
- .sort((a, b) => b.sample.usageCount - a.sample.usageCount)
176
- .map((entry) => ({
177
- id: entry.sample.materialId,
178
- centerRgb: entry.sample.baseColor,
179
- centerLab: entry.lab,
180
- totalCount: entry.sample.usageCount,
181
- samples: [entry.sample],
182
- }));
183
- }
184
- const sorted = entriesWithLab.sort((a, b) => b.sample.usageCount - a.sample.usageCount);
185
- const clusters = [];
186
- sorted.forEach((entry) => {
187
- let best = null;
188
- let bestDistance = Infinity;
189
- for (const cluster of clusters) {
190
- const distance = deltaE(cluster.center, entry.lab);
191
- if (distance <= threshold && distance < bestDistance) {
192
- best = cluster;
193
- bestDistance = distance;
194
- }
195
- }
196
- if (best) {
197
- best.members.push(entry.sample);
198
- best.sumWeight += entry.sample.usageCount;
199
- best.sumL += entry.lab[0] * entry.sample.usageCount;
200
- best.sumA += entry.lab[1] * entry.sample.usageCount;
201
- best.sumB += entry.lab[2] * entry.sample.usageCount;
202
- best.center = [best.sumL / best.sumWeight, best.sumA / best.sumWeight, best.sumB / best.sumWeight];
203
- }
204
- else {
205
- clusters.push({
206
- members: [entry.sample],
207
- sumWeight: entry.sample.usageCount,
208
- sumL: entry.lab[0] * entry.sample.usageCount,
209
- sumA: entry.lab[1] * entry.sample.usageCount,
210
- sumB: entry.lab[2] * entry.sample.usageCount,
211
- center: entry.lab,
212
- });
213
- }
214
- });
215
- return clusters
216
- .map((cluster, index) => ({
217
- id: `cluster_${index + 1}`,
218
- centerLab: cluster.center,
219
- centerRgb: labToRgb(cluster.center),
220
- totalCount: cluster.sumWeight,
221
- samples: cluster.members.sort((a, b) => b.usageCount - a.usageCount),
222
- }))
223
- .sort((a, b) => b.totalCount - a.totalCount);
224
- }
225
- function analyzePalette(entity, options = {}) {
226
- const samples = collectMaterialUsage(entity);
227
- const luminanceOptions = {
228
- ...DEFAULT_LUMINANCE_OPTIONS,
229
- ...options.luminance,
230
- };
231
- const balanced = mapLuminance(samples, luminanceOptions);
232
- const saturated = mapSaturation(balanced.map((entry) => ({ color: entry.color, luminance: entry.luminance })), {
233
- scale: options.saturationScale ?? exports.DEFAULT_SATURATION_FACTOR,
234
- });
235
- return balanced.map((entry, index) => ({
236
- materialId: entry.materialId,
237
- baseColor: entry.baseColor,
238
- opacity: entry.opacity,
239
- count: entry.usageCount,
240
- luminance: computeLuminanceVec(entry.baseColor),
241
- balancedColor: entry.color,
242
- balancedLuminance: entry.luminance,
243
- saturatedColor: saturated[index].color,
244
- saturatedLuminance: saturated[index].luminance,
245
- saturationClipped: saturated[index].clipped,
246
- }));
247
- }
248
- // Backwards compatibility wrapper
249
- exports.analyzeEntityMaterials = analyzePalette;
250
- function traverseNodes(context, node, stack) {
251
- if (node.mesh) {
252
- analyzePrimitiveInstance(context, node.mesh, 1, stack);
253
- }
254
- node.children?.forEach((child) => traverseNodes(context, child, stack));
255
- }
256
- function analyzePrimitiveInstance(context, primitiveId, multiplier, stack) {
257
- const primitive = context.primitives.get(primitiveId);
258
- if (!primitive) {
259
- return;
260
- }
261
- switch (primitive.kind) {
262
- case "plain_box":
263
- incrementUsage(context, primitive.material, multiplier);
264
- break;
265
- case "textured_box":
266
- analyzeTexturedBox(context, primitive, multiplier);
267
- break;
268
- case "voxel_box":
269
- analyzeVoxelBox(context, primitive, multiplier);
270
- break;
271
- case "combo_box": {
272
- if (stack.has(primitiveId)) {
273
- return;
274
- }
275
- stack.add(primitiveId);
276
- analyzeComboBox(context, primitive, multiplier, stack);
277
- stack.delete(primitiveId);
278
- break;
279
- }
280
- default:
281
- break;
282
- }
283
- }
284
- function incrementUsage(context, materialId, amount) {
285
- if (!context.materials.has(materialId)) {
286
- return;
287
- }
288
- const existing = context.counts.get(materialId) ?? 0;
289
- context.counts.set(materialId, existing + amount);
290
- }
291
- function analyzeTexturedBox(context, primitive, multiplier) {
292
- FACE_KEYS.forEach((face) => {
293
- const baseTextureId = (0, textures_1.resolveFaceTextureId)(primitive, face);
294
- if (baseTextureId) {
295
- countTextureMaterials(context, baseTextureId, multiplier);
296
- }
297
- const overlayTextureId = (0, textures_1.resolveOverlayFaceTextureId)(primitive, face);
298
- if (overlayTextureId) {
299
- countTextureMaterials(context, overlayTextureId, multiplier);
300
- }
301
- });
302
- }
303
- function analyzeVoxelBox(context, primitive, multiplier) {
304
- const palette = primitive.palette ?? [];
305
- if (palette.length === 0) {
306
- return;
307
- }
308
- primitive.voxels?.forEach((value) => {
309
- if (typeof value !== "number" || value <= 0) {
310
- return;
311
- }
312
- const paletteIndex = value - 1;
313
- const materialId = palette[paletteIndex];
314
- if (!materialId) {
315
- return;
316
- }
317
- incrementUsage(context, materialId, multiplier);
318
- });
319
- }
320
- function analyzeComboBox(context, primitive, multiplier, stack) {
321
- primitive.slots?.forEach((slot) => {
322
- if (!slot?.primitive) {
323
- return;
324
- }
325
- analyzePrimitiveInstance(context, slot.primitive, multiplier, stack);
326
- });
327
- }
328
- function countTextureMaterials(context, textureId, multiplier) {
329
- const histogram = buildTextureHistogram(context, textureId);
330
- histogram.forEach((value, materialId) => {
331
- incrementUsage(context, materialId, value * multiplier);
332
- });
333
- }
334
- const buildTextureHistogram = (context, textureId) => {
335
- const cached = context.textureHistograms.get(textureId);
336
- if (cached) {
337
- return cached;
338
- }
339
- const histogram = new Map();
340
- const texture = context.textures.get(textureId);
341
- if (!texture) {
342
- context.textureHistograms.set(textureId, histogram);
343
- return histogram;
344
- }
345
- const pattern = context.patterns.get(texture.pattern);
346
- if (!pattern || !Array.isArray(pattern.data)) {
347
- context.textureHistograms.set(textureId, histogram);
348
- return histogram;
349
- }
350
- const materials = texture.materials ?? [];
351
- pattern.data.forEach((cell) => {
352
- const materialIndex = Number(cell);
353
- if (!Number.isInteger(materialIndex) || materialIndex < 0 || materialIndex >= materials.length) {
354
- return;
355
- }
356
- const materialId = materials[materialIndex];
357
- if (!materialId) {
358
- return;
359
- }
360
- histogram.set(materialId, (histogram.get(materialId) ?? 0) + 1);
361
- });
362
- context.textureHistograms.set(textureId, histogram);
363
- return histogram;
364
- };
365
- function compressLuminance(value, options) {
366
- if (value < options.min) {
367
- const diff = options.min - value;
368
- const weight = smoothstep(0, options.kneeLow ?? DEFAULT_LUMINANCE_OPTIONS.kneeLow, diff);
369
- const lifted = value + diff * weight;
370
- return Math.min(options.min, lifted);
371
- }
372
- if (value > options.max) {
373
- const diff = value - options.max;
374
- const weight = smoothstep(0, options.kneeHigh ?? DEFAULT_LUMINANCE_OPTIONS.kneeHigh, diff);
375
- const lowered = value - diff * weight;
376
- return Math.max(options.max, lowered);
377
- }
378
- return value;
379
- }
380
- function smoothstep(edge0, edge1, x) {
381
- const t = clamp01((x - edge0) / (edge1 - edge0));
382
- return t * t * (3 - 2 * t);
383
- }
384
- function clamp01(value) {
385
- return Math.min(1, Math.max(0, value));
386
- }
387
- function srgbChannelToLinear(value) {
388
- const normalized = value / 255;
389
- if (normalized <= 0.04045) {
390
- return normalized / 12.92;
391
- }
392
- return Math.pow((normalized + 0.055) / 1.055, 2.4);
393
- }
394
- function linearChannelToSrgb(value) {
395
- const normalized = clamp01(value);
396
- if (normalized <= 0.0031308) {
397
- return normalized * 12.92;
398
- }
399
- return 1.055 * Math.pow(normalized, 1 / 2.4) - 0.055;
400
- }
401
- function linearToSrgbByte(value) {
402
- return Math.round(clamp01(linearChannelToSrgb(value)) * 255);
403
- }
404
- function computeLuminance(r, g, b) {
405
- return 0.2126 * r + 0.7152 * g + 0.0722 * b;
406
- }
407
- function computeLuminanceVec(color) {
408
- const [r, g, b] = color.map((component) => srgbChannelToLinear(component));
409
- return computeLuminance(r, g, b);
410
- }
411
- const RGB_TO_XYZ = {
412
- x: [0.4124, 0.3576, 0.1805],
413
- y: [0.2126, 0.7152, 0.0722],
414
- z: [0.0193, 0.1192, 0.9505],
415
- };
416
- const REF_X = 95.047;
417
- const REF_Y = 100;
418
- const REF_Z = 108.883;
419
- function xyzToLabHelper(value) {
420
- if (value > 0.008856) {
421
- return Math.cbrt(value);
422
- }
423
- return 7.787 * value + 16 / 116;
424
- }
425
- function labToXyzHelper(value) {
426
- const cubed = value * value * value;
427
- if (cubed > 0.008856) {
428
- return cubed;
429
- }
430
- return (value - 16 / 116) / 7.787;
431
- }
432
- function rgbToLab(rgb) {
433
- const rLin = srgbChannelToLinear(rgb[0]);
434
- const gLin = srgbChannelToLinear(rgb[1]);
435
- const bLin = srgbChannelToLinear(rgb[2]);
436
- const x = (rLin * RGB_TO_XYZ.x[0] + gLin * RGB_TO_XYZ.x[1] + bLin * RGB_TO_XYZ.x[2]) * 100;
437
- const y = (rLin * RGB_TO_XYZ.y[0] + gLin * RGB_TO_XYZ.y[1] + bLin * RGB_TO_XYZ.y[2]) * 100;
438
- const z = (rLin * RGB_TO_XYZ.z[0] + gLin * RGB_TO_XYZ.z[1] + bLin * RGB_TO_XYZ.z[2]) * 100;
439
- const xr = xyzToLabHelper(x / REF_X);
440
- const yr = xyzToLabHelper(y / REF_Y);
441
- const zr = xyzToLabHelper(z / REF_Z);
442
- const L = 116 * yr - 16;
443
- const a = 500 * (xr - yr);
444
- const b = 200 * (yr - zr);
445
- return [L, a, b];
446
- }
447
- function labToLinearRgb(lab) {
448
- const [L, a, b] = lab;
449
- const fy = (L + 16) / 116;
450
- const fx = fy + a / 500;
451
- const fz = fy - b / 200;
452
- const xr = labToXyzHelper(fx);
453
- const yr = labToXyzHelper(fy);
454
- const zr = labToXyzHelper(fz);
455
- const x = (xr * REF_X) / 100;
456
- const y = (yr * REF_Y) / 100;
457
- const z = (zr * REF_Z) / 100;
458
- const rLin = x * 3.2406 + y * -1.5372 + z * -0.4986;
459
- const gLin = x * -0.9689 + y * 1.8758 + z * 0.0415;
460
- const bLin = x * 0.0557 + y * -0.204 + z * 1.057;
461
- return [rLin, gLin, bLin];
462
- }
463
- function labToRgb(lab) {
464
- const [rLin, gLin, bLin] = labToLinearRgb(lab);
465
- const r = Math.round(clamp01(linearChannelToSrgb(rLin)) * 255);
466
- const g = Math.round(clamp01(linearChannelToSrgb(gLin)) * 255);
467
- const b = Math.round(clamp01(linearChannelToSrgb(bLin)) * 255);
468
- return [r, g, b];
469
- }
470
- function labToLch(lab) {
471
- const [L, a, b] = lab;
472
- const C = Math.sqrt(a * a + b * b);
473
- const h = Math.atan2(b, a);
474
- return [L, C, h];
475
- }
476
- function lchToLab(lch) {
477
- const [L, C, h] = lch;
478
- const a = C * Math.cos(h);
479
- const b = C * Math.sin(h);
480
- return [L, a, b];
481
- }
482
- function deltaE(a, b) {
483
- const dL = a[0] - b[0];
484
- const dA = a[1] - b[1];
485
- const dB = a[2] - b[2];
486
- return Math.sqrt(dL * dL + dA * dA + dB * dB);
487
- }
488
- //# sourceMappingURL=palette_tools.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"palette_tools.js","sourceRoot":"","sources":["../../src/palette_tools.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import type { BoxelDefinition } from "./types";
2
- export declare const formatBoxel: (model: BoxelDefinition) => string;
3
- export declare const parseBoxel: (candidate: unknown) => BoxelDefinition;
4
- export declare const parseBoxelJson: (raw: string) => BoxelDefinition;