@carbonenginejs/runtime-resource 0.1.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 (372) hide show
  1. package/FORMAT-PROVENANCE.md +135 -0
  2. package/LICENSE +21 -0
  3. package/NOTICE +29 -0
  4. package/README.md +241 -0
  5. package/dist/CjsMotherLode.js +56 -0
  6. package/dist/CjsMotherLode.js.map +1 -0
  7. package/dist/CjsResMan.js +740 -0
  8. package/dist/CjsResMan.js.map +1 -0
  9. package/dist/CjsResManQueue.js +214 -0
  10. package/dist/CjsResManQueue.js.map +1 -0
  11. package/dist/CjsResource.js +366 -0
  12. package/dist/CjsResource.js.map +1 -0
  13. package/dist/CjsResourceSource.js +59 -0
  14. package/dist/CjsResourceSource.js.map +1 -0
  15. package/dist/_virtual/_rollupPluginBabelHelpers.js +153 -0
  16. package/dist/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  17. package/dist/format/CjsFormat.js +178 -0
  18. package/dist/format/CjsFormat.js.map +1 -0
  19. package/dist/format/CjsResourceProbe.js +269 -0
  20. package/dist/format/CjsResourceProbe.js.map +1 -0
  21. package/dist/format/payloadContract.js +173 -0
  22. package/dist/format/payloadContract.js.map +1 -0
  23. package/dist/formats/black/CjsBlackFormat.js +272 -0
  24. package/dist/formats/black/CjsBlackFormat.js.map +1 -0
  25. package/dist/formats/black/core/CjsBlackBinaryReader.js +153 -0
  26. package/dist/formats/black/core/CjsBlackBinaryReader.js.map +1 -0
  27. package/dist/formats/black/core/CjsBlackPropertyReaders.js +382 -0
  28. package/dist/formats/black/core/CjsBlackPropertyReaders.js.map +1 -0
  29. package/dist/formats/black/core/CjsBlackReader.js +760 -0
  30. package/dist/formats/black/core/CjsBlackReader.js.map +1 -0
  31. package/dist/formats/black/core/CjsBlackSchemaRegistry.js +433 -0
  32. package/dist/formats/black/core/CjsBlackSchemaRegistry.js.map +1 -0
  33. package/dist/formats/black/core/black-schema-v1-2026-07-11.json.js +4 -0
  34. package/dist/formats/black/core/black-schema-v1-2026-07-11.json.js.map +1 -0
  35. package/dist/formats/black/core/blackConstants.js +7 -0
  36. package/dist/formats/black/core/blackConstants.js.map +1 -0
  37. package/dist/formats/black/core/blackDefinitions.js +10 -0
  38. package/dist/formats/black/core/blackDefinitions.js.map +1 -0
  39. package/dist/formats/black/core/blackEnums.js +6 -0
  40. package/dist/formats/black/core/blackEnums.js.map +1 -0
  41. package/dist/formats/black/core/blackSchema.js +3 -0
  42. package/dist/formats/black/core/blackSchema.js.map +1 -0
  43. package/dist/formats/black/core/blackVersion.js +22 -0
  44. package/dist/formats/black/core/blackVersion.js.map +1 -0
  45. package/dist/formats/black/core/helpers.js +182 -0
  46. package/dist/formats/black/core/helpers.js.map +1 -0
  47. package/dist/formats/black/core/schema.js +4 -0
  48. package/dist/formats/black/core/schema.js.map +1 -0
  49. package/dist/formats/black/index.js +2 -0
  50. package/dist/formats/black/index.js.map +1 -0
  51. package/dist/formats/bnk/CjsBnkFormat.js +245 -0
  52. package/dist/formats/bnk/CjsBnkFormat.js.map +1 -0
  53. package/dist/formats/bnk/core/helpers.js +354 -0
  54. package/dist/formats/bnk/core/helpers.js.map +1 -0
  55. package/dist/formats/bnk/core/soundbanksInfo.js +246 -0
  56. package/dist/formats/bnk/core/soundbanksInfo.js.map +1 -0
  57. package/dist/formats/bnk/index.js +3 -0
  58. package/dist/formats/bnk/index.js.map +1 -0
  59. package/dist/formats/cmf/CjsCmfFormat.js +491 -0
  60. package/dist/formats/cmf/CjsCmfFormat.js.map +1 -0
  61. package/dist/formats/cmf/core/binary.js +118 -0
  62. package/dist/formats/cmf/core/binary.js.map +1 -0
  63. package/dist/formats/cmf/core/buffers.js +233 -0
  64. package/dist/formats/cmf/core/buffers.js.map +1 -0
  65. package/dist/formats/cmf/core/constants.js +47 -0
  66. package/dist/formats/cmf/core/constants.js.map +1 -0
  67. package/dist/formats/cmf/core/gr2Anim.js +453 -0
  68. package/dist/formats/cmf/core/gr2Anim.js.map +1 -0
  69. package/dist/formats/cmf/core/helpers.js +287 -0
  70. package/dist/formats/cmf/core/helpers.js.map +1 -0
  71. package/dist/formats/cmf/core/pack.js +276 -0
  72. package/dist/formats/cmf/core/pack.js.map +1 -0
  73. package/dist/formats/cmf/core/schema.js +364 -0
  74. package/dist/formats/cmf/core/schema.js.map +1 -0
  75. package/dist/formats/cmf/core/shared.js +268 -0
  76. package/dist/formats/cmf/core/shared.js.map +1 -0
  77. package/dist/formats/cmf/core/writer.js +517 -0
  78. package/dist/formats/cmf/core/writer.js.map +1 -0
  79. package/dist/formats/cmf/index.js +2 -0
  80. package/dist/formats/cmf/index.js.map +1 -0
  81. package/dist/formats/dds/CjsDdsFormat.js +187 -0
  82. package/dist/formats/dds/CjsDdsFormat.js.map +1 -0
  83. package/dist/formats/dds/core/helpers.js +812 -0
  84. package/dist/formats/dds/core/helpers.js.map +1 -0
  85. package/dist/formats/dds/index.js +2 -0
  86. package/dist/formats/dds/index.js.map +1 -0
  87. package/dist/formats/fbx/CjsFbxFormat.js +260 -0
  88. package/dist/formats/fbx/CjsFbxFormat.js.map +1 -0
  89. package/dist/formats/fbx/core/helpers.js +3901 -0
  90. package/dist/formats/fbx/core/helpers.js.map +1 -0
  91. package/dist/formats/fbx/index.js +2 -0
  92. package/dist/formats/fbx/index.js.map +1 -0
  93. package/dist/formats/flac/CjsFlacFormat.js +81 -0
  94. package/dist/formats/flac/CjsFlacFormat.js.map +1 -0
  95. package/dist/formats/flac/core/helpers.js +295 -0
  96. package/dist/formats/flac/core/helpers.js.map +1 -0
  97. package/dist/formats/flac/index.js +2 -0
  98. package/dist/formats/flac/index.js.map +1 -0
  99. package/dist/formats/gif/CjsGifFormat.js +81 -0
  100. package/dist/formats/gif/CjsGifFormat.js.map +1 -0
  101. package/dist/formats/gif/core/helpers.js +360 -0
  102. package/dist/formats/gif/core/helpers.js.map +1 -0
  103. package/dist/formats/gif/index.js +2 -0
  104. package/dist/formats/gif/index.js.map +1 -0
  105. package/dist/formats/gltf/CjsGltfFormat.js +284 -0
  106. package/dist/formats/gltf/CjsGltfFormat.js.map +1 -0
  107. package/dist/formats/gltf/core/helpers.js +292 -0
  108. package/dist/formats/gltf/core/helpers.js.map +1 -0
  109. package/dist/formats/gltf/core/json.js +79 -0
  110. package/dist/formats/gltf/core/json.js.map +1 -0
  111. package/dist/formats/gltf/core/parser.js +666 -0
  112. package/dist/formats/gltf/core/parser.js.map +1 -0
  113. package/dist/formats/gltf/core/targets.js +163 -0
  114. package/dist/formats/gltf/core/targets.js.map +1 -0
  115. package/dist/formats/gltf/index.js +2 -0
  116. package/dist/formats/gltf/index.js.map +1 -0
  117. package/dist/formats/index.js +23 -0
  118. package/dist/formats/index.js.map +1 -0
  119. package/dist/formats/jpeg/CjsJpegFormat.js +200 -0
  120. package/dist/formats/jpeg/CjsJpegFormat.js.map +1 -0
  121. package/dist/formats/jpeg/core/helpers.js +350 -0
  122. package/dist/formats/jpeg/core/helpers.js.map +1 -0
  123. package/dist/formats/jpeg/core/jpeg.js +377 -0
  124. package/dist/formats/jpeg/core/jpeg.js.map +1 -0
  125. package/dist/formats/jpeg/index.js +2 -0
  126. package/dist/formats/jpeg/index.js.map +1 -0
  127. package/dist/formats/mp3/CjsMp3Format.js +186 -0
  128. package/dist/formats/mp3/CjsMp3Format.js.map +1 -0
  129. package/dist/formats/mp3/core/helpers.js +338 -0
  130. package/dist/formats/mp3/core/helpers.js.map +1 -0
  131. package/dist/formats/mp3/index.js +2 -0
  132. package/dist/formats/mp3/index.js.map +1 -0
  133. package/dist/formats/mp4/CjsMp4Format.js +185 -0
  134. package/dist/formats/mp4/CjsMp4Format.js.map +1 -0
  135. package/dist/formats/mp4/core/helpers.js +449 -0
  136. package/dist/formats/mp4/core/helpers.js.map +1 -0
  137. package/dist/formats/mp4/index.js +2 -0
  138. package/dist/formats/mp4/index.js.map +1 -0
  139. package/dist/formats/obj/CjsObjFormat.js +247 -0
  140. package/dist/formats/obj/CjsObjFormat.js.map +1 -0
  141. package/dist/formats/obj/core/helpers.js +573 -0
  142. package/dist/formats/obj/core/helpers.js.map +1 -0
  143. package/dist/formats/obj/core/json.js +64 -0
  144. package/dist/formats/obj/core/json.js.map +1 -0
  145. package/dist/formats/obj/core/parser.js +321 -0
  146. package/dist/formats/obj/core/parser.js.map +1 -0
  147. package/dist/formats/obj/index.js +2 -0
  148. package/dist/formats/obj/index.js.map +1 -0
  149. package/dist/formats/ogg/CjsOggFormat.js +82 -0
  150. package/dist/formats/ogg/CjsOggFormat.js.map +1 -0
  151. package/dist/formats/ogg/core/helpers.js +387 -0
  152. package/dist/formats/ogg/core/helpers.js.map +1 -0
  153. package/dist/formats/ogg/core/imdct.js +178 -0
  154. package/dist/formats/ogg/core/imdct.js.map +1 -0
  155. package/dist/formats/ogg/core/vorbis.js +999 -0
  156. package/dist/formats/ogg/core/vorbis.js.map +1 -0
  157. package/dist/formats/ogg/index.js +2 -0
  158. package/dist/formats/ogg/index.js.map +1 -0
  159. package/dist/formats/png/CjsPngFormat.js +189 -0
  160. package/dist/formats/png/CjsPngFormat.js.map +1 -0
  161. package/dist/formats/png/core/helpers.js +583 -0
  162. package/dist/formats/png/core/helpers.js.map +1 -0
  163. package/dist/formats/png/index.js +2 -0
  164. package/dist/formats/png/index.js.map +1 -0
  165. package/dist/formats/red/CjsRedFormat.js +247 -0
  166. package/dist/formats/red/CjsRedFormat.js.map +1 -0
  167. package/dist/formats/red/core/CjsRedReader.js +201 -0
  168. package/dist/formats/red/core/CjsRedReader.js.map +1 -0
  169. package/dist/formats/red/core/blackDefinitions.js +3 -0
  170. package/dist/formats/red/core/blackDefinitions.js.map +1 -0
  171. package/dist/formats/red/core/helpers.js +136 -0
  172. package/dist/formats/red/core/helpers.js.map +1 -0
  173. package/dist/formats/red/core/redGraph.js +68 -0
  174. package/dist/formats/red/core/redGraph.js.map +1 -0
  175. package/dist/formats/red/core/schema.js +4 -0
  176. package/dist/formats/red/core/schema.js.map +1 -0
  177. package/dist/formats/red/index.js +2 -0
  178. package/dist/formats/red/index.js.map +1 -0
  179. package/dist/formats/stl/CjsStlFormat.js +304 -0
  180. package/dist/formats/stl/CjsStlFormat.js.map +1 -0
  181. package/dist/formats/stl/core/helpers.js +257 -0
  182. package/dist/formats/stl/core/helpers.js.map +1 -0
  183. package/dist/formats/stl/core/json.js +51 -0
  184. package/dist/formats/stl/core/json.js.map +1 -0
  185. package/dist/formats/stl/core/stl.js +544 -0
  186. package/dist/formats/stl/core/stl.js.map +1 -0
  187. package/dist/formats/stl/core/targets.js +163 -0
  188. package/dist/formats/stl/core/targets.js.map +1 -0
  189. package/dist/formats/stl/index.js +2 -0
  190. package/dist/formats/stl/index.js.map +1 -0
  191. package/dist/formats/tga/CjsTgaFormat.js +186 -0
  192. package/dist/formats/tga/CjsTgaFormat.js.map +1 -0
  193. package/dist/formats/tga/core/helpers.js +446 -0
  194. package/dist/formats/tga/core/helpers.js.map +1 -0
  195. package/dist/formats/tga/index.js +2 -0
  196. package/dist/formats/tga/index.js.map +1 -0
  197. package/dist/formats/wav/CjsWavFormat.js +186 -0
  198. package/dist/formats/wav/CjsWavFormat.js.map +1 -0
  199. package/dist/formats/wav/core/helpers.js +328 -0
  200. package/dist/formats/wav/core/helpers.js.map +1 -0
  201. package/dist/formats/wav/index.js +2 -0
  202. package/dist/formats/wav/index.js.map +1 -0
  203. package/dist/formats/webm/CjsWebmFormat.js +185 -0
  204. package/dist/formats/webm/CjsWebmFormat.js.map +1 -0
  205. package/dist/formats/webm/core/helpers.js +537 -0
  206. package/dist/formats/webm/core/helpers.js.map +1 -0
  207. package/dist/formats/webm/index.js +2 -0
  208. package/dist/formats/webm/index.js.map +1 -0
  209. package/dist/formats/webp/CjsWebpFormat.js +80 -0
  210. package/dist/formats/webp/CjsWebpFormat.js.map +1 -0
  211. package/dist/formats/webp/core/helpers.js +214 -0
  212. package/dist/formats/webp/core/helpers.js.map +1 -0
  213. package/dist/formats/webp/index.js +2 -0
  214. package/dist/formats/webp/index.js.map +1 -0
  215. package/dist/formats/wem/CjsWemFormat.js +197 -0
  216. package/dist/formats/wem/CjsWemFormat.js.map +1 -0
  217. package/dist/formats/wem/core/bitStream.js +259 -0
  218. package/dist/formats/wem/core/bitStream.js.map +1 -0
  219. package/dist/formats/wem/core/codebookLibrary.js +164 -0
  220. package/dist/formats/wem/core/codebookLibrary.js.map +1 -0
  221. package/dist/formats/wem/core/helpers.js +336 -0
  222. package/dist/formats/wem/core/helpers.js.map +1 -0
  223. package/dist/formats/wem/core/packedCodebooksAotuv603.js +30 -0
  224. package/dist/formats/wem/core/packedCodebooksAotuv603.js.map +1 -0
  225. package/dist/formats/wem/core/wemToOgg.js +485 -0
  226. package/dist/formats/wem/core/wemToOgg.js.map +1 -0
  227. package/dist/formats/wem/index.js +2 -0
  228. package/dist/formats/wem/index.js.map +1 -0
  229. package/dist/formats/yaml/CjsYamlFormat.js +77 -0
  230. package/dist/formats/yaml/CjsYamlFormat.js.map +1 -0
  231. package/dist/formats/yaml/core/CjsYamlReader.js +304 -0
  232. package/dist/formats/yaml/core/CjsYamlReader.js.map +1 -0
  233. package/dist/formats/yaml/core/helpers.js +160 -0
  234. package/dist/formats/yaml/core/helpers.js.map +1 -0
  235. package/dist/formats/yaml/index.js +2 -0
  236. package/dist/formats/yaml/index.js.map +1 -0
  237. package/dist/generated/resources/AudioGeometryResData.js +47 -0
  238. package/dist/generated/resources/AudioGeometryResData.js.map +1 -0
  239. package/dist/generated/resources/CmfVertexReader.js +46 -0
  240. package/dist/generated/resources/CmfVertexReader.js.map +1 -0
  241. package/dist/generated/resources/GStateBindingCallbackData.js +31 -0
  242. package/dist/generated/resources/GStateBindingCallbackData.js.map +1 -0
  243. package/dist/generated/resources/MeshDecalData.js +37 -0
  244. package/dist/generated/resources/MeshDecalData.js.map +1 -0
  245. package/dist/generated/resources/MeshDecalLodData.js +34 -0
  246. package/dist/generated/resources/MeshDecalLodData.js.map +1 -0
  247. package/dist/generated/resources/Tr2AsyncSave.js +46 -0
  248. package/dist/generated/resources/Tr2AsyncSave.js.map +1 -0
  249. package/dist/generated/resources/Tr2CmfContents.js +37 -0
  250. package/dist/generated/resources/Tr2CmfContents.js.map +1 -0
  251. package/dist/generated/resources/Tr2GrannyIntersectionResult.js +58 -0
  252. package/dist/generated/resources/Tr2GrannyIntersectionResult.js.map +1 -0
  253. package/dist/generated/resources/Tr2LoadPrepareFence.js +37 -0
  254. package/dist/generated/resources/Tr2LoadPrepareFence.js.map +1 -0
  255. package/dist/generated/resources/Tr2MaterialArea.js +34 -0
  256. package/dist/generated/resources/Tr2MaterialArea.js.map +1 -0
  257. package/dist/generated/resources/Tr2MaterialMesh.js +31 -0
  258. package/dist/generated/resources/Tr2MaterialMesh.js.map +1 -0
  259. package/dist/generated/resources/Tr2MaterialRes.js +34 -0
  260. package/dist/generated/resources/Tr2MaterialRes.js.map +1 -0
  261. package/dist/generated/resources/Tr2ShaderPermutation.js +43 -0
  262. package/dist/generated/resources/Tr2ShaderPermutation.js.map +1 -0
  263. package/dist/generated/resources/Tr2TextureLodManager.js +60 -0
  264. package/dist/generated/resources/Tr2TextureLodManager.js.map +1 -0
  265. package/dist/generated/resources/Tr2TextureLodUpdateRequest.js +37 -0
  266. package/dist/generated/resources/Tr2TextureLodUpdateRequest.js.map +1 -0
  267. package/dist/generated/resources/Tr2TexturePackChannel.js +37 -0
  268. package/dist/generated/resources/Tr2TexturePackChannel.js.map +1 -0
  269. package/dist/generated/resources/Tr2TexturePipeline.js +44 -0
  270. package/dist/generated/resources/Tr2TexturePipeline.js.map +1 -0
  271. package/dist/generated/resources/Tr2TexturePipelineParams.js +34 -0
  272. package/dist/generated/resources/Tr2TexturePipelineParams.js.map +1 -0
  273. package/dist/generated/resources/Tr2TexturePipelineStepCompress.js +40 -0
  274. package/dist/generated/resources/Tr2TexturePipelineStepCompress.js.map +1 -0
  275. package/dist/generated/resources/Tr2TexturePipelineStepLimitSize.js +34 -0
  276. package/dist/generated/resources/Tr2TexturePipelineStepLimitSize.js.map +1 -0
  277. package/dist/generated/resources/Tr2TexturePipelineStepLoad.js +31 -0
  278. package/dist/generated/resources/Tr2TexturePipelineStepLoad.js.map +1 -0
  279. package/dist/generated/resources/Tr2TexturePipelineStepPack.js +43 -0
  280. package/dist/generated/resources/Tr2TexturePipelineStepPack.js.map +1 -0
  281. package/dist/generated/resources/TriGeometryResAreaData.js +59 -0
  282. package/dist/generated/resources/TriGeometryResAreaData.js.map +1 -0
  283. package/dist/generated/resources/TriGeometryResJointData.js +38 -0
  284. package/dist/generated/resources/TriGeometryResJointData.js.map +1 -0
  285. package/dist/generated/resources/TriGeometryResLodData.js +88 -0
  286. package/dist/generated/resources/TriGeometryResLodData.js.map +1 -0
  287. package/dist/generated/resources/TriGeometryResMeshData.js +63 -0
  288. package/dist/generated/resources/TriGeometryResMeshData.js.map +1 -0
  289. package/dist/generated/resources/TriGeometryResSkeletonData.js +34 -0
  290. package/dist/generated/resources/TriGeometryResSkeletonData.js.map +1 -0
  291. package/dist/generated/resources/TriJointBinding.js +38 -0
  292. package/dist/generated/resources/TriJointBinding.js.map +1 -0
  293. package/dist/generated/resources/TriMorphTargetGeometryConstants.js +46 -0
  294. package/dist/generated/resources/TriMorphTargetGeometryConstants.js.map +1 -0
  295. package/dist/generated/resources/TriRtGeometryConstants.js +88 -0
  296. package/dist/generated/resources/TriRtGeometryConstants.js.map +1 -0
  297. package/dist/generated/resources/enums.js +18 -0
  298. package/dist/generated/resources/enums.js.map +1 -0
  299. package/dist/generated/resources/index.js +32 -0
  300. package/dist/generated/resources/index.js.map +1 -0
  301. package/dist/index.js +52 -0
  302. package/dist/index.js.map +1 -0
  303. package/dist/resourcePath.js +18 -0
  304. package/dist/resourcePath.js.map +1 -0
  305. package/dist/resourceStates.js +9 -0
  306. package/dist/resourceStates.js.map +1 -0
  307. package/dist/resources/Tr2EffectRes.js +71 -0
  308. package/dist/resources/Tr2EffectRes.js.map +1 -0
  309. package/dist/resources/Tr2GrannyStateRes.js +44 -0
  310. package/dist/resources/Tr2GrannyStateRes.js.map +1 -0
  311. package/dist/resources/Tr2ImageRes.js +114 -0
  312. package/dist/resources/Tr2ImageRes.js.map +1 -0
  313. package/dist/resources/Tr2LightProfileRes.js +40 -0
  314. package/dist/resources/Tr2LightProfileRes.js.map +1 -0
  315. package/dist/resources/TriGeometryRes.js +216 -0
  316. package/dist/resources/TriGeometryRes.js.map +1 -0
  317. package/dist/resources/TriGrannyRes.js +43 -0
  318. package/dist/resources/TriGrannyRes.js.map +1 -0
  319. package/dist/resources/TriTextureRes.js +304 -0
  320. package/dist/resources/TriTextureRes.js.map +1 -0
  321. package/dist/resources/resourceBoundary.js +47 -0
  322. package/dist/resources/resourceBoundary.js.map +1 -0
  323. package/dist/texture/CjsTextureArrayRes.js +406 -0
  324. package/dist/texture/CjsTextureArrayRes.js.map +1 -0
  325. package/dist/texture/CjsTextureParameterProxy.js +133 -0
  326. package/dist/texture/CjsTextureParameterProxy.js.map +1 -0
  327. package/format-notices/black/LICENSE +21 -0
  328. package/format-notices/black/NOTICE +47 -0
  329. package/format-notices/bnk/LICENSE +21 -0
  330. package/format-notices/bnk/NOTICE +17 -0
  331. package/format-notices/cmf/LICENSE +21 -0
  332. package/format-notices/cmf/NOTICE +36 -0
  333. package/format-notices/dds/LICENSE +21 -0
  334. package/format-notices/dds/NOTICE +14 -0
  335. package/format-notices/fbx/LICENSE +21 -0
  336. package/format-notices/fbx/NOTICE +14 -0
  337. package/format-notices/flac/LICENSE +21 -0
  338. package/format-notices/flac/NOTICE +14 -0
  339. package/format-notices/gif/LICENSE +21 -0
  340. package/format-notices/gif/NOTICE +14 -0
  341. package/format-notices/gltf/LICENSE +21 -0
  342. package/format-notices/gltf/NOTICE +27 -0
  343. package/format-notices/jpeg/LICENSE +21 -0
  344. package/format-notices/jpeg/NOTICE +14 -0
  345. package/format-notices/mp3/LICENSE +21 -0
  346. package/format-notices/mp3/NOTICE +14 -0
  347. package/format-notices/mp4/LICENSE +21 -0
  348. package/format-notices/mp4/NOTICE +14 -0
  349. package/format-notices/obj/LICENSE +21 -0
  350. package/format-notices/obj/NOTICE +26 -0
  351. package/format-notices/ogg/LICENSE +21 -0
  352. package/format-notices/ogg/NOTICE +28 -0
  353. package/format-notices/png/LICENSE +21 -0
  354. package/format-notices/png/NOTICE +14 -0
  355. package/format-notices/red/LICENSE +21 -0
  356. package/format-notices/red/NOTICE +31 -0
  357. package/format-notices/stl/LICENSE +21 -0
  358. package/format-notices/stl/NOTICE +21 -0
  359. package/format-notices/tga/LICENSE +21 -0
  360. package/format-notices/tga/NOTICE +14 -0
  361. package/format-notices/wav/LICENSE +21 -0
  362. package/format-notices/wav/NOTICE +14 -0
  363. package/format-notices/webm/LICENSE +21 -0
  364. package/format-notices/webm/NOTICE +14 -0
  365. package/format-notices/webp/LICENSE +21 -0
  366. package/format-notices/webp/NOTICE +14 -0
  367. package/format-notices/wem/LICENSE +57 -0
  368. package/format-notices/wem/NOTICE +33 -0
  369. package/format-notices/yaml/LICENSE +21 -0
  370. package/format-notices/yaml/NOTICE +44 -0
  371. package/package.json +51 -0
  372. package/resource-lifecycle.md +487 -0
@@ -0,0 +1,163 @@
1
+ const CMF_CLASS_KEYS = Object.freeze(["Root", "Section", "Metadata", "MetadataEntry", "Mesh", "IndexGroup", "VertexElement", "MeshLod", "MeshArea", "LodMeshArea", "BoneBinding", "MorphTargets", "MorphTarget", "LodMorphTarget", "AudioOcclusionMesh", "Skeleton", "BoneMask", "BoneWeight", "Animation", "AnimationChannel", "AnimationCurve"]);
2
+ function buildCmfFromShared(root) {
3
+ return {
4
+ version: 1,
5
+ metadata: null,
6
+ meshes: (root.meshes ?? []).map(mesh => buildMesh(mesh)),
7
+ skeletons: [],
8
+ animations: []
9
+ };
10
+ }
11
+ function buildMesh(mesh) {
12
+ const vertex = mesh.vertex ?? {},
13
+ indices = mesh.indices ?? [],
14
+ stride = estimateVertexStride(vertex),
15
+ vertexCount = stride === 0 ? 0 : Math.floor((vertex.position ?? []).length / 3);
16
+ return {
17
+ name: mesh.name ?? "",
18
+ decl: buildDecl(vertex),
19
+ lods: [{
20
+ vb: {
21
+ index: 1,
22
+ offset: 0,
23
+ size: vertexCount * stride,
24
+ stride
25
+ },
26
+ ib: {
27
+ index: 2,
28
+ offset: 0,
29
+ size: totalIndexCount(indices) * bytesPerIndex(indices),
30
+ stride: bytesPerIndex(indices)
31
+ },
32
+ areas: indices.map((group, index) => ({
33
+ firstElement: firstTriangle(indices, index),
34
+ elementCount: Math.floor((group.faces ?? []).length / 3)
35
+ })),
36
+ morphTargets: [],
37
+ threshold: 0xffffffff,
38
+ vertex,
39
+ indices
40
+ }],
41
+ areas: indices.map(group => ({
42
+ name: group.name ?? "",
43
+ bounds: bounds(mesh),
44
+ bones: [],
45
+ affectedByBones: false,
46
+ affectedByMorphTargets: false
47
+ })),
48
+ boneBindings: [],
49
+ morphTargets: {
50
+ decl: [],
51
+ targets: []
52
+ },
53
+ uvDensities: [],
54
+ bounds: bounds(mesh),
55
+ audioOcclusionMesh: {
56
+ vertices: [],
57
+ indices: [],
58
+ bounds: {
59
+ min: [0, 0, 0],
60
+ max: [0, 0, 0]
61
+ }
62
+ },
63
+ topology: "TriangleList",
64
+ skeleton: null,
65
+ vertex,
66
+ indices
67
+ };
68
+ }
69
+ function buildDecl(vertex) {
70
+ const decl = [];
71
+ let offset = 0;
72
+ for (const channel of [["position", "Position", 3], ["normal", "Normal", 3], ["tangent", "Tangent", 3], ["binormal", "Binormal", 3], ["texcoord0", "TexCoord", 2, 0], ["texcoord1", "TexCoord", 2, 1], ["color0", "Color", 4, 0], ["blendIndice", "BoneIndices", 4, 0, "UInt16"], ["blendWeight", "BoneWeights", 4, 0]]) {
73
+ const [name, usage, elementCount, usageIndex = 0, type = "Float32"] = channel;
74
+ if (!Array.isArray(vertex[name]) || vertex[name].length === 0) continue;
75
+ decl.push({
76
+ usage,
77
+ usageIndex,
78
+ type,
79
+ elementCount,
80
+ offset
81
+ });
82
+ offset += elementCount * elementTypeSize(type);
83
+ }
84
+ return decl;
85
+ }
86
+ function estimateVertexStride(vertex) {
87
+ return buildDecl(vertex).reduce((stride, element) => Math.max(stride, element.offset + element.elementCount * elementTypeSize(element.type)), 0);
88
+ }
89
+ function elementTypeSize(type) {
90
+ return type === "Float32" ? 4 : type.includes("16") ? 2 : 1;
91
+ }
92
+ function totalIndexCount(indices) {
93
+ return indices.reduce((total, group) => total + (group.faces?.length ?? 0), 0);
94
+ }
95
+ function bytesPerIndex(indices) {
96
+ return indices.some(group => group.bytesPerIndex === 4 || (group.faces ?? []).some(index => index > 0xffff)) ? 4 : 2;
97
+ }
98
+ function firstTriangle(indices, areaIndex) {
99
+ let first = 0;
100
+ for (let i = 0; i < areaIndex; i++) first += Math.floor((indices[i].faces ?? []).length / 3);
101
+ return first;
102
+ }
103
+ function bounds(mesh) {
104
+ return {
105
+ min: mesh.minBounds ?? [0, 0, 0],
106
+ max: mesh.maxBounds ?? [0, 0, 0]
107
+ };
108
+ }
109
+ function hydrateCmf(root, classes, hydrationOptions = {}) {
110
+ const hydrationClasses = createHydrationClasses(classes, hydrationOptions);
111
+ return hydrate("Root", {
112
+ ...root,
113
+ metadata: root.metadata ? hydrate("Metadata", root.metadata, hydrationClasses) : null,
114
+ meshes: root.meshes.map(mesh => hydrateMesh(mesh, hydrationClasses)),
115
+ skeletons: root.skeletons.map(skeleton => hydrate("Skeleton", skeleton, hydrationClasses)),
116
+ animations: root.animations.map(animation => hydrate("Animation", animation, hydrationClasses))
117
+ }, hydrationClasses, hydrationOptions);
118
+ }
119
+ function hydrateMesh(mesh, classes) {
120
+ return hydrate("Mesh", {
121
+ ...mesh,
122
+ decl: mesh.decl.map(element => hydrate("VertexElement", element, classes)),
123
+ lods: mesh.lods.map(lod => hydrate("MeshLod", {
124
+ ...lod,
125
+ areas: lod.areas.map(area => hydrate("LodMeshArea", area, classes)),
126
+ morphTargets: lod.morphTargets.map(target => hydrate("LodMorphTarget", target, classes))
127
+ }, classes)),
128
+ areas: mesh.areas.map(area => hydrate("MeshArea", area, classes)),
129
+ boneBindings: mesh.boneBindings.map(binding => hydrate("BoneBinding", binding, classes)),
130
+ morphTargets: hydrate("MorphTargets", {
131
+ decl: mesh.morphTargets.decl.map(element => hydrate("VertexElement", element, classes)),
132
+ targets: mesh.morphTargets.targets.map(target => hydrate("MorphTarget", target, classes))
133
+ }, classes),
134
+ audioOcclusionMesh: hydrate("AudioOcclusionMesh", mesh.audioOcclusionMesh, classes)
135
+ }, classes);
136
+ }
137
+ function hydrate(type, fields, classes, hydrationOptions = {}) {
138
+ const Class = classes?.[type];
139
+ const options = Object.keys(hydrationOptions).length > 0 ? hydrationOptions : classes?.__hydrationOptions || {};
140
+ return Class ? populate(new Class(), fields, options) : fields;
141
+ }
142
+ function populate(instance, fields, hydrationOptions = {}) {
143
+ if (!instance || typeof instance.SetValues !== "function") {
144
+ throw new TypeError("CjsStlFormat CMF class population requires classes to implement SetValues(values)");
145
+ }
146
+ instance.SetValues(fields, {
147
+ ...hydrationOptions,
148
+ skipUpdate: true,
149
+ skipEvents: true
150
+ });
151
+ return instance;
152
+ }
153
+ function createHydrationClasses(classes, hydrationOptions) {
154
+ const map = Object.create(classes || null);
155
+ Object.defineProperty(map, "__hydrationOptions", {
156
+ value: hydrationOptions,
157
+ enumerable: false
158
+ });
159
+ return map;
160
+ }
161
+
162
+ export { CMF_CLASS_KEYS, buildCmfFromShared, hydrateCmf };
163
+ //# sourceMappingURL=targets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"targets.js","sources":["../../../../../src/formats/stl/core/targets.js"],"sourcesContent":["export const CMF_CLASS_KEYS = Object.freeze([\n \"Root\",\n \"Section\",\n \"Metadata\",\n \"MetadataEntry\",\n \"Mesh\",\n \"IndexGroup\",\n \"VertexElement\",\n \"MeshLod\",\n \"MeshArea\",\n \"LodMeshArea\",\n \"BoneBinding\",\n \"MorphTargets\",\n \"MorphTarget\",\n \"LodMorphTarget\",\n \"AudioOcclusionMesh\",\n \"Skeleton\",\n \"BoneMask\",\n \"BoneWeight\",\n \"Animation\",\n \"AnimationChannel\",\n \"AnimationCurve\"\n]);\n\nexport function buildCmfFromShared(root)\n{\n return {\n version: 1,\n metadata: null,\n meshes: (root.meshes ?? []).map((mesh) => buildMesh(mesh)),\n skeletons: [],\n animations: []\n };\n}\n\nfunction buildMesh(mesh)\n{\n const\n vertex = mesh.vertex ?? {},\n indices = mesh.indices ?? [],\n stride = estimateVertexStride(vertex),\n vertexCount = stride === 0 ? 0 : Math.floor((vertex.position ?? []).length / 3);\n\n return {\n name: mesh.name ?? \"\",\n decl: buildDecl(vertex),\n lods: [ {\n vb: { index: 1, offset: 0, size: vertexCount * stride, stride },\n ib: { index: 2, offset: 0, size: totalIndexCount(indices) * bytesPerIndex(indices), stride: bytesPerIndex(indices) },\n areas: indices.map((group, index) => ({\n firstElement: firstTriangle(indices, index),\n elementCount: Math.floor((group.faces ?? []).length / 3)\n })),\n morphTargets: [],\n threshold: 0xffffffff,\n vertex,\n indices\n } ],\n areas: indices.map((group) => ({\n name: group.name ?? \"\",\n bounds: bounds(mesh),\n bones: [],\n affectedByBones: false,\n affectedByMorphTargets: false\n })),\n boneBindings: [],\n morphTargets: { decl: [], targets: [] },\n uvDensities: [],\n bounds: bounds(mesh),\n audioOcclusionMesh: {\n vertices: [],\n indices: [],\n bounds: { min: [ 0, 0, 0 ], max: [ 0, 0, 0 ] }\n },\n topology: \"TriangleList\",\n skeleton: null,\n vertex,\n indices\n };\n}\n\nfunction buildDecl(vertex)\n{\n const decl = [];\n let offset = 0;\n for (const channel of [\n [ \"position\", \"Position\", 3 ],\n [ \"normal\", \"Normal\", 3 ],\n [ \"tangent\", \"Tangent\", 3 ],\n [ \"binormal\", \"Binormal\", 3 ],\n [ \"texcoord0\", \"TexCoord\", 2, 0 ],\n [ \"texcoord1\", \"TexCoord\", 2, 1 ],\n [ \"color0\", \"Color\", 4, 0 ],\n [ \"blendIndice\", \"BoneIndices\", 4, 0, \"UInt16\" ],\n [ \"blendWeight\", \"BoneWeights\", 4, 0 ]\n ])\n {\n const [ name, usage, elementCount, usageIndex = 0, type = \"Float32\" ] = channel;\n if (!Array.isArray(vertex[name]) || vertex[name].length === 0) continue;\n decl.push({ usage, usageIndex, type, elementCount, offset });\n offset += elementCount * elementTypeSize(type);\n }\n return decl;\n}\n\nfunction estimateVertexStride(vertex)\n{\n return buildDecl(vertex).reduce((stride, element) => Math.max(stride, element.offset + element.elementCount * elementTypeSize(element.type)), 0);\n}\n\nfunction elementTypeSize(type)\n{\n return type === \"Float32\" ? 4 : type.includes(\"16\") ? 2 : 1;\n}\n\nfunction totalIndexCount(indices)\n{\n return indices.reduce((total, group) => total + (group.faces?.length ?? 0), 0);\n}\n\nfunction bytesPerIndex(indices)\n{\n return indices.some((group) => group.bytesPerIndex === 4 || (group.faces ?? []).some((index) => index > 0xffff)) ? 4 : 2;\n}\n\nfunction firstTriangle(indices, areaIndex)\n{\n let first = 0;\n for (let i = 0; i < areaIndex; i++) first += Math.floor((indices[i].faces ?? []).length / 3);\n return first;\n}\n\nfunction bounds(mesh)\n{\n return {\n min: mesh.minBounds ?? [ 0, 0, 0 ],\n max: mesh.maxBounds ?? [ 0, 0, 0 ]\n };\n}\n\nexport function hydrateCmf(root, classes, hydrationOptions = {})\n{\n const hydrationClasses = createHydrationClasses(classes, hydrationOptions);\n return hydrate(\"Root\", {\n ...root,\n metadata: root.metadata ? hydrate(\"Metadata\", root.metadata, hydrationClasses) : null,\n meshes: root.meshes.map((mesh) => hydrateMesh(mesh, hydrationClasses)),\n skeletons: root.skeletons.map((skeleton) => hydrate(\"Skeleton\", skeleton, hydrationClasses)),\n animations: root.animations.map((animation) => hydrate(\"Animation\", animation, hydrationClasses))\n }, hydrationClasses, hydrationOptions);\n}\n\nfunction hydrateMesh(mesh, classes)\n{\n return hydrate(\"Mesh\", {\n ...mesh,\n decl: mesh.decl.map((element) => hydrate(\"VertexElement\", element, classes)),\n lods: mesh.lods.map((lod) => hydrate(\"MeshLod\", {\n ...lod,\n areas: lod.areas.map((area) => hydrate(\"LodMeshArea\", area, classes)),\n morphTargets: lod.morphTargets.map((target) => hydrate(\"LodMorphTarget\", target, classes))\n }, classes)),\n areas: mesh.areas.map((area) => hydrate(\"MeshArea\", area, classes)),\n boneBindings: mesh.boneBindings.map((binding) => hydrate(\"BoneBinding\", binding, classes)),\n morphTargets: hydrate(\"MorphTargets\", {\n decl: mesh.morphTargets.decl.map((element) => hydrate(\"VertexElement\", element, classes)),\n targets: mesh.morphTargets.targets.map((target) => hydrate(\"MorphTarget\", target, classes))\n }, classes),\n audioOcclusionMesh: hydrate(\"AudioOcclusionMesh\", mesh.audioOcclusionMesh, classes)\n }, classes);\n}\n\nfunction hydrate(type, fields, classes, hydrationOptions = {})\n{\n const Class = classes?.[type];\n const options = Object.keys(hydrationOptions).length > 0 ? hydrationOptions : classes?.__hydrationOptions || {};\n return Class ? populate(new Class(), fields, options) : fields;\n}\n\nfunction populate(instance, fields, hydrationOptions = {})\n{\n if (!instance || typeof instance.SetValues !== \"function\")\n {\n throw new TypeError(\"CjsStlFormat CMF class population requires classes to implement SetValues(values)\");\n }\n instance.SetValues(fields, { ...hydrationOptions, skipUpdate: true, skipEvents: true });\n return instance;\n}\n\nfunction createHydrationClasses(classes, hydrationOptions)\n{\n const map = Object.create(classes || null);\n Object.defineProperty(map, \"__hydrationOptions\", { value: hydrationOptions, enumerable: false });\n return map;\n}\n"],"names":["CMF_CLASS_KEYS","Object","freeze","buildCmfFromShared","root","version","metadata","meshes","map","mesh","buildMesh","skeletons","animations","vertex","indices","stride","estimateVertexStride","vertexCount","Math","floor","position","length","name","decl","buildDecl","lods","vb","index","offset","size","ib","totalIndexCount","bytesPerIndex","areas","group","firstElement","firstTriangle","elementCount","faces","morphTargets","threshold","bounds","bones","affectedByBones","affectedByMorphTargets","boneBindings","targets","uvDensities","audioOcclusionMesh","vertices","min","max","topology","skeleton","channel","usage","usageIndex","type","Array","isArray","push","elementTypeSize","reduce","element","includes","total","some","areaIndex","first","i","minBounds","maxBounds","hydrateCmf","classes","hydrationOptions","hydrationClasses","createHydrationClasses","hydrate","hydrateMesh","animation","lod","area","target","binding","fields","Class","options","keys","__hydrationOptions","populate","instance","SetValues","TypeError","skipUpdate","skipEvents","create","defineProperty","value","enumerable"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { CjsStlFormat, CjsStlFormat as default } from './CjsStlFormat.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,186 @@
1
+ import { DEFAULT_VALUES, normalizeValues, readWithValues, inspectWithValues, isSupportedWithValues, toJsonValue, isTGA, toBytes, OUTPUT_IMAGE, OUTPUT_RGBA, OUTPUT_RAW, OUTPUT_JSON } from './core/helpers.js';
2
+
3
+ const FORMAT_NAME = "CjsTgaFormat";
4
+ class CjsTgaFormat {
5
+ #values = DEFAULT_VALUES;
6
+
7
+ /**
8
+ * Create a reusable TGA format profile.
9
+ *
10
+ * @param {object} [options] Default read/inspect options.
11
+ */
12
+ constructor(options = {}) {
13
+ this.SetValues(options);
14
+ }
15
+
16
+ /**
17
+ * Merge options into this profile.
18
+ *
19
+ * @param {object} [options] Values to merge.
20
+ * @returns {CjsTgaFormat} This format profile.
21
+ */
22
+ SetValues(options = {}) {
23
+ this.#values = normalizeValues(this.#values, {
24
+ inputType: "tga",
25
+ ...options
26
+ }, FORMAT_NAME);
27
+ return this;
28
+ }
29
+
30
+ /**
31
+ * Get normalized profile values with optional per-call overrides.
32
+ *
33
+ * @param {object} [options] Per-call values.
34
+ * @returns {object} Normalized read values.
35
+ */
36
+ GetValues(options = {}) {
37
+ return normalizeValues(this.#values, {
38
+ inputType: "tga",
39
+ ...options
40
+ }, FORMAT_NAME);
41
+ }
42
+
43
+ /**
44
+ * Read TGA bytes with this profile.
45
+ *
46
+ * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.
47
+ * @param {object} [options] Per-call values.
48
+ * @returns {object} GPU-free raw/debug/RGBA payload for the selected emit target.
49
+ */
50
+ Read(input, options = {}) {
51
+ return readWithValues(input, this.GetValues(options), "tga");
52
+ }
53
+
54
+ /**
55
+ * Read TGA bytes asynchronously with this profile.
56
+ *
57
+ * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.
58
+ * @param {object} [options] Per-call values.
59
+ * @returns {Promise<object>} GPU-free raw/debug/RGBA payload for the selected emit target.
60
+ */
61
+ async ReadAsync(input, options = {}) {
62
+ return this.Read(input, options);
63
+ }
64
+
65
+ /**
66
+ * Inspect TGA bytes without decoding full image data.
67
+ *
68
+ * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.
69
+ * @param {object} [options] Per-call values.
70
+ * @returns {object} TGA header metadata.
71
+ */
72
+ Inspect(input, options = {}) {
73
+ return inspectWithValues(input, this.GetValues(options), "tga");
74
+ }
75
+
76
+ /**
77
+ * Report whether TGA input and requested output variants are supported.
78
+ *
79
+ * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.
80
+ * @param {object} [options] Per-call values.
81
+ * @returns {object} Support/probe report.
82
+ */
83
+ IsSupported(input, options = {}) {
84
+ return isSupportedWithValues(input, this.GetValues(options), "tga");
85
+ }
86
+
87
+ /**
88
+ * Convert format output into JSON-compatible debug data.
89
+ *
90
+ * @param {any} value Format output.
91
+ * @returns {any} JSON-compatible value.
92
+ */
93
+ ToJSON(value) {
94
+ return toJsonValue(value);
95
+ }
96
+
97
+ /**
98
+ * One-shot TGA read.
99
+ *
100
+ * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.
101
+ * @param {object} [options] Read options.
102
+ * @returns {object} GPU-free raw/debug/RGBA payload for the selected emit target.
103
+ */
104
+ static read(input, options = {}) {
105
+ return readWithValues(input, normalizeValues(DEFAULT_VALUES, {
106
+ inputType: "tga",
107
+ ...options
108
+ }, FORMAT_NAME), "tga");
109
+ }
110
+
111
+ /**
112
+ * One-shot asynchronous TGA read.
113
+ *
114
+ * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.
115
+ * @param {object} [options] Read options.
116
+ * @returns {Promise<object>} GPU-free raw/debug/RGBA payload for the selected emit target.
117
+ */
118
+ static async readAsync(input, options = {}) {
119
+ return CjsTgaFormat.read(input, options);
120
+ }
121
+
122
+ /**
123
+ * One-shot TGA inspection.
124
+ *
125
+ * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.
126
+ * @param {object} [options] Inspect options.
127
+ * @returns {object} TGA header metadata.
128
+ */
129
+ static inspect(input, options = {}) {
130
+ return inspectWithValues(input, normalizeValues(DEFAULT_VALUES, {
131
+ inputType: "tga",
132
+ ...options
133
+ }, FORMAT_NAME), "tga");
134
+ }
135
+
136
+ /**
137
+ * One-shot TGA support probe.
138
+ *
139
+ * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.
140
+ * @param {object} [options] Probe options.
141
+ * @returns {object} Support/probe report.
142
+ */
143
+ static isSupported(input, options = {}) {
144
+ return isSupportedWithValues(input, normalizeValues(DEFAULT_VALUES, {
145
+ inputType: "tga",
146
+ ...options
147
+ }, FORMAT_NAME), "tga");
148
+ }
149
+
150
+ /**
151
+ * Convert format output into JSON-compatible debug data.
152
+ *
153
+ * @param {any} value Format output.
154
+ * @returns {any} JSON-compatible value.
155
+ */
156
+ static toJSON(value) {
157
+ return toJsonValue(value);
158
+ }
159
+
160
+ /**
161
+ * Test whether bytes look like a TGA file.
162
+ *
163
+ * @param {Uint8Array|ArrayBuffer|DataView} input Candidate TGA bytes.
164
+ * @returns {boolean} True when the TGA header looks valid.
165
+ */
166
+ static isTGA(input) {
167
+ try {
168
+ return isTGA(toBytes(input));
169
+ } catch {
170
+ return false;
171
+ }
172
+ }
173
+ static OUTPUT_IMAGE = OUTPUT_IMAGE;
174
+ static OUTPUT_RGBA = OUTPUT_RGBA;
175
+ static OUTPUT_RAW = OUTPUT_RAW;
176
+ static OUTPUT_JSON = OUTPUT_JSON;
177
+ static OUTPUT_TGA_JSON = "tgaJson";
178
+ static type = Object.freeze(["image"]);
179
+ static mediaTypes = Object.freeze(["image"]);
180
+ static inputTypes = Object.freeze(["tga"]);
181
+ static outputTypes = Object.freeze([OUTPUT_IMAGE, OUTPUT_RGBA]);
182
+ static debugOutputTypes = Object.freeze(["tgaJson", OUTPUT_RAW]);
183
+ }
184
+
185
+ export { CjsTgaFormat };
186
+ //# sourceMappingURL=CjsTgaFormat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CjsTgaFormat.js","sources":["../../../../src/formats/tga/CjsTgaFormat.js"],"sourcesContent":["import {\n DEFAULT_VALUES,\n OUTPUT_IMAGE,\n OUTPUT_JSON,\n OUTPUT_RAW,\n OUTPUT_RGBA,\n inspectWithValues,\n isSupportedWithValues,\n isTGA,\n normalizeValues,\n readWithValues,\n toBytes,\n toJsonValue\n} from \"./core/helpers.js\";\n\nconst FORMAT_NAME = \"CjsTgaFormat\";\n\nexport class CjsTgaFormat\n{\n #values = DEFAULT_VALUES;\n\n /**\n * Create a reusable TGA format profile.\n *\n * @param {object} [options] Default read/inspect options.\n */\n constructor(options = {})\n {\n this.SetValues(options);\n }\n\n /**\n * Merge options into this profile.\n *\n * @param {object} [options] Values to merge.\n * @returns {CjsTgaFormat} This format profile.\n */\n SetValues(options = {})\n {\n this.#values = normalizeValues(this.#values, { inputType: \"tga\", ...options }, FORMAT_NAME);\n return this;\n }\n\n /**\n * Get normalized profile values with optional per-call overrides.\n *\n * @param {object} [options] Per-call values.\n * @returns {object} Normalized read values.\n */\n GetValues(options = {})\n {\n return normalizeValues(this.#values, { inputType: \"tga\", ...options }, FORMAT_NAME);\n }\n\n /**\n * Read TGA bytes with this profile.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.\n * @param {object} [options] Per-call values.\n * @returns {object} GPU-free raw/debug/RGBA payload for the selected emit target.\n */\n Read(input, options = {})\n {\n return readWithValues(input, this.GetValues(options), \"tga\");\n }\n\n /**\n * Read TGA bytes asynchronously with this profile.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.\n * @param {object} [options] Per-call values.\n * @returns {Promise<object>} GPU-free raw/debug/RGBA payload for the selected emit target.\n */\n async ReadAsync(input, options = {})\n {\n return this.Read(input, options);\n }\n\n /**\n * Inspect TGA bytes without decoding full image data.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.\n * @param {object} [options] Per-call values.\n * @returns {object} TGA header metadata.\n */\n Inspect(input, options = {})\n {\n return inspectWithValues(input, this.GetValues(options), \"tga\");\n }\n\n /**\n * Report whether TGA input and requested output variants are supported.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.\n * @param {object} [options] Per-call values.\n * @returns {object} Support/probe report.\n */\n IsSupported(input, options = {})\n {\n return isSupportedWithValues(input, this.GetValues(options), \"tga\");\n }\n\n /**\n * Convert format output into JSON-compatible debug data.\n *\n * @param {any} value Format output.\n * @returns {any} JSON-compatible value.\n */\n ToJSON(value)\n {\n return toJsonValue(value);\n }\n\n /**\n * One-shot TGA read.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.\n * @param {object} [options] Read options.\n * @returns {object} GPU-free raw/debug/RGBA payload for the selected emit target.\n */\n static read(input, options = {})\n {\n return readWithValues(input, normalizeValues(DEFAULT_VALUES, { inputType: \"tga\", ...options }, FORMAT_NAME), \"tga\");\n }\n\n /**\n * One-shot asynchronous TGA read.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.\n * @param {object} [options] Read options.\n * @returns {Promise<object>} GPU-free raw/debug/RGBA payload for the selected emit target.\n */\n static async readAsync(input, options = {})\n {\n return CjsTgaFormat.read(input, options);\n }\n\n /**\n * One-shot TGA inspection.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.\n * @param {object} [options] Inspect options.\n * @returns {object} TGA header metadata.\n */\n static inspect(input, options = {})\n {\n return inspectWithValues(input, normalizeValues(DEFAULT_VALUES, { inputType: \"tga\", ...options }, FORMAT_NAME), \"tga\");\n }\n\n /**\n * One-shot TGA support probe.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input TGA bytes.\n * @param {object} [options] Probe options.\n * @returns {object} Support/probe report.\n */\n static isSupported(input, options = {})\n {\n return isSupportedWithValues(input, normalizeValues(DEFAULT_VALUES, { inputType: \"tga\", ...options }, FORMAT_NAME), \"tga\");\n }\n\n /**\n * Convert format output into JSON-compatible debug data.\n *\n * @param {any} value Format output.\n * @returns {any} JSON-compatible value.\n */\n static toJSON(value)\n {\n return toJsonValue(value);\n }\n\n /**\n * Test whether bytes look like a TGA file.\n *\n * @param {Uint8Array|ArrayBuffer|DataView} input Candidate TGA bytes.\n * @returns {boolean} True when the TGA header looks valid.\n */\n static isTGA(input)\n {\n try\n {\n return isTGA(toBytes(input));\n }\n catch\n {\n return false;\n }\n }\n\n static OUTPUT_IMAGE = OUTPUT_IMAGE;\n static OUTPUT_RGBA = OUTPUT_RGBA;\n static OUTPUT_RAW = OUTPUT_RAW;\n static OUTPUT_JSON = OUTPUT_JSON;\n static OUTPUT_TGA_JSON = \"tgaJson\";\n static type = Object.freeze([ \"image\" ]);\n static mediaTypes = Object.freeze([ \"image\" ]);\n static inputTypes = Object.freeze([ \"tga\" ]);\n static outputTypes = Object.freeze([ OUTPUT_IMAGE, OUTPUT_RGBA ]);\n static debugOutputTypes = Object.freeze([ \"tgaJson\", OUTPUT_RAW ]);\n}\n\nexport default CjsTgaFormat;\n"],"names":["FORMAT_NAME","CjsTgaFormat","DEFAULT_VALUES","constructor","options","SetValues","normalizeValues","inputType","GetValues","Read","input","readWithValues","ReadAsync","Inspect","inspectWithValues","IsSupported","isSupportedWithValues","ToJSON","value","toJsonValue","read","readAsync","inspect","isSupported","toJSON","isTGA","toBytes","OUTPUT_IMAGE","OUTPUT_RGBA","OUTPUT_RAW","OUTPUT_JSON","OUTPUT_TGA_JSON","type","Object","freeze","mediaTypes","inputTypes","outputTypes","debugOutputTypes"],"mappings":"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"}