@aura3d/assets 4.0.3 → 4.0.5

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 (59) hide show
  1. package/dist/DataTextureLoader.d.ts +16 -0
  2. package/dist/DataTextureLoader.d.ts.map +1 -0
  3. package/dist/DataTextureLoader.js +29 -0
  4. package/dist/DataTextureLoader.js.map +1 -0
  5. package/dist/EXRLoader.d.ts +78 -0
  6. package/dist/EXRLoader.d.ts.map +1 -0
  7. package/dist/EXRLoader.js +1398 -0
  8. package/dist/EXRLoader.js.map +1 -0
  9. package/dist/FileLoader.d.ts +32 -0
  10. package/dist/FileLoader.d.ts.map +1 -0
  11. package/dist/FileLoader.js +79 -0
  12. package/dist/FileLoader.js.map +1 -0
  13. package/dist/GLTFRenderResources.d.ts +9 -0
  14. package/dist/GLTFRenderResources.d.ts.map +1 -1
  15. package/dist/GLTFRenderResources.js +47 -4
  16. package/dist/GLTFRenderResources.js.map +1 -1
  17. package/dist/GLTFSharedTextureCache.d.ts +40 -0
  18. package/dist/GLTFSharedTextureCache.d.ts.map +1 -0
  19. package/dist/GLTFSharedTextureCache.js +68 -0
  20. package/dist/GLTFSharedTextureCache.js.map +1 -0
  21. package/dist/ImageBitmapLoader.d.ts +27 -0
  22. package/dist/ImageBitmapLoader.d.ts.map +1 -0
  23. package/dist/ImageBitmapLoader.js +51 -0
  24. package/dist/ImageBitmapLoader.js.map +1 -0
  25. package/dist/ImageLoader.d.ts.map +1 -1
  26. package/dist/ImageLoader.js +12 -5
  27. package/dist/ImageLoader.js.map +1 -1
  28. package/dist/LoadContext.d.ts +4 -1
  29. package/dist/LoadContext.d.ts.map +1 -1
  30. package/dist/LoadContext.js +7 -2
  31. package/dist/LoadContext.js.map +1 -1
  32. package/dist/LoaderFetch.d.ts +12 -0
  33. package/dist/LoaderFetch.d.ts.map +1 -0
  34. package/dist/LoaderFetch.js +54 -0
  35. package/dist/LoaderFetch.js.map +1 -0
  36. package/dist/TextureLoader.d.ts.map +1 -1
  37. package/dist/TextureLoader.js +3 -1
  38. package/dist/TextureLoader.js.map +1 -1
  39. package/dist/asset-corpus/ProductionGLTFRenderPipeline.d.ts +6 -0
  40. package/dist/asset-corpus/ProductionGLTFRenderPipeline.d.ts.map +1 -1
  41. package/dist/asset-corpus/ProductionGLTFRenderPipeline.js +2 -1
  42. package/dist/asset-corpus/ProductionGLTFRenderPipeline.js.map +1 -1
  43. package/dist/browser-index.d.ts +9 -0
  44. package/dist/browser-index.d.ts.map +1 -1
  45. package/dist/browser-index.js +5 -0
  46. package/dist/browser-index.js.map +1 -1
  47. package/dist/gltf-runtime.d.ts +2 -0
  48. package/dist/gltf-runtime.d.ts.map +1 -1
  49. package/dist/gltf-runtime.js +1 -0
  50. package/dist/gltf-runtime.js.map +1 -1
  51. package/dist/index.d.ts +11 -0
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +7 -0
  54. package/dist/index.js.map +1 -1
  55. package/dist/loaders/TextureLoader.d.ts +27 -1
  56. package/dist/loaders/TextureLoader.d.ts.map +1 -1
  57. package/dist/loaders/TextureLoader.js +62 -4
  58. package/dist/loaders/TextureLoader.js.map +1 -1
  59. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"TextureLoader.d.ts","sourceRoot":"","sources":["../../../../../packages/assets/src/loaders/TextureLoader.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,+BAA+B,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;AAE9E,qBAAa,wBAAwB;IACnC,QAAQ,CAAC,gBAAgB,EAAE,SAAS,+BAA+B,EAAE,CAAkC;IAEvG,IAAI,CAAC,GAAG,EAAE,MAAM;CAMjB"}
1
+ {"version":3,"file":"TextureLoader.d.ts","sourceRoot":"","sources":["../../../../../packages/assets/src/loaders/TextureLoader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAwC,KAAK,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AACrG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAyC,KAAK,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAE9G,MAAM,MAAM,+BAA+B,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;AAa9E,qBAAa,wBAAwB;IACnC,QAAQ,CAAC,gBAAgB,EAAE,SAAS,+BAA+B,EAAE,CAAkC;IACvG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAe;gBAE5B,OAAO,CAAC,EAAE,YAAY;IAIlC;;;;;OAKG;IACH,IAAI,CACF,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,IAAI,EAClD,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,IAAI,EACnD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GACjC,2BAA2B,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAehE,iEAAiE;IAC3D,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,IAAI,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAcnH"}
@@ -1,11 +1,69 @@
1
+ /**
2
+ * threejs-parity ST-04/ST-07 (§6 lane L4): `THREE.TextureLoader`.
3
+ *
4
+ * Two call shapes:
5
+ * - `load(url, onLoad?, onProgress?, onError?)` with any argument or a bound
6
+ * `AssetManager` — the REAL async path: decodes through the native
7
+ * `AssetTextureLoader` (`ImageLoader` → `createImageBitmap`) and resolves a
8
+ * `TextureDescriptorAsset` (live pixel source — not a diagnostic).
9
+ * - Bare `load(uri)` — retained only for the loader-corpus spec, which asserts
10
+ * the diagnostic `{loader, uri, status, bytes}` shape over five loader
11
+ * classes. Production paths should always use the callback/manager form.
12
+ */
13
+ import { AssetManager } from "../AssetManager.js";
14
+ import { ImageLoader } from "../ImageLoader.js";
15
+ import { TextureLoader as NativeTextureLoader } from "../TextureLoader.js";
1
16
  import { createThreeCompatFileLoaderDiagnostic } from "./LoaderDiagnostics.js";
17
+ let sharedManager;
18
+ function defaultManager() {
19
+ if (!sharedManager) {
20
+ sharedManager = new AssetManager();
21
+ sharedManager.register(new ImageLoader());
22
+ sharedManager.register(new NativeTextureLoader());
23
+ }
24
+ return sharedManager;
25
+ }
2
26
  export class TextureLoaderThreeCompat {
3
27
  supportedFormats = ["png", "jpg", "jpeg", "webp"];
4
- load(uri) {
5
- const extension = uri.split(".").pop()?.toLowerCase() ?? "";
6
- return createThreeCompatFileLoaderDiagnostic("TextureLoaderThreeCompat", uri, {
7
- warnings: this.supportedFormats.includes(extension) ? [] : [`Texture format ${extension || "unknown"} requires browser support check.`]
28
+ manager;
29
+ constructor(manager) {
30
+ this.manager = manager;
31
+ }
32
+ /**
33
+ * three's `TextureLoader.load(url, onLoad?, onProgress?, onError?)`.
34
+ * Called with callbacks (or a bound manager) this returns a real
35
+ * `Promise<TextureDescriptorAsset>`; called bare it keeps the legacy
36
+ * corpus diagnostic shape — see the file header.
37
+ */
38
+ load(uri, onLoad, onProgress, onError) {
39
+ if (!onLoad && !onProgress && !onError && !this.manager) {
40
+ const extension = uri.split(".").pop()?.toLowerCase() ?? "";
41
+ return createThreeCompatFileLoaderDiagnostic("TextureLoaderThreeCompat", uri, {
42
+ warnings: this.supportedFormats.includes(extension) ? [] : [`Texture format ${extension || "unknown"} requires browser support check.`]
43
+ });
44
+ }
45
+ const pending = this.loadAsync(uri, onProgress).then((texture) => {
46
+ onLoad?.(texture);
47
+ return texture;
48
+ });
49
+ if (onError)
50
+ pending.catch(onError);
51
+ return pending;
52
+ }
53
+ /** Real async decode through the native texture loader chain. */
54
+ async loadAsync(url, onProgress) {
55
+ const manager = this.manager ?? defaultManager();
56
+ const handle = await manager.load(url, {
57
+ type: "texture",
58
+ onProgress: onProgress
59
+ ? (event) => onProgress({ loaded: event.loadedBytes, ...(event.totalBytes !== undefined ? { total: event.totalBytes } : {}) })
60
+ : undefined
8
61
  });
62
+ // Ownership note: the returned `source` ImageBitmap belongs to the
63
+ // manager's cached ImageAsset dependency — releasing the handle would
64
+ // close it. The cache handle stays alive for the manager's lifetime
65
+ // (three's `Cache` keeps decoded images the same way).
66
+ return handle.value;
9
67
  }
10
68
  }
11
69
  //# sourceMappingURL=TextureLoader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TextureLoader.js","sourceRoot":"","sources":["../../../../../packages/assets/src/loaders/TextureLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qCAAqC,EAAE,MAAM,qBAAqB,CAAC;AAI5E,MAAM,OAAO,wBAAwB;IAC1B,gBAAgB,GAA+C,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAEvG,IAAI,CAAC,GAAW;QACd,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QAC5D,OAAO,qCAAqC,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAC5E,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAA4C,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,kBAAkB,SAAS,IAAI,SAAS,kCAAkC,CAAC;SAC3K,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"TextureLoader.js","sourceRoot":"","sources":["../../../../../packages/assets/src/loaders/TextureLoader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,aAAa,IAAI,mBAAmB,EAA+B,MAAM,kBAAkB,CAAC;AAErG,OAAO,EAAE,qCAAqC,EAAoC,MAAM,qBAAqB,CAAC;AAI9G,IAAI,aAAuC,CAAC;AAE5C,SAAS,cAAc;IACrB,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,aAAa,GAAG,IAAI,YAAY,EAAE,CAAC;QACnC,aAAa,CAAC,QAAQ,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC;QAC1C,aAAa,CAAC,QAAQ,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,OAAO,wBAAwB;IAC1B,gBAAgB,GAA+C,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACtF,OAAO,CAAgB;IAExC,YAAY,OAAsB;QAChC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACH,IAAI,CACF,GAAW,EACX,MAAkD,EAClD,UAAmD,EACnD,OAAkC;QAElC,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACxD,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;YAC5D,OAAO,qCAAqC,CAAC,0BAA0B,EAAE,GAAG,EAAE;gBAC5E,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAA4C,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,kBAAkB,SAAS,IAAI,SAAS,kCAAkC,CAAC;aAC3K,CAAC,CAAC;QACL,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YAC/D,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC;YAClB,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,IAAI,OAAO;YAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACpC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,iEAAiE;IACjE,KAAK,CAAC,SAAS,CAAC,GAAW,EAAE,UAAmD;QAC9E,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,cAAc,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAyB,GAAG,EAAE;YAC7D,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,UAAU;gBACpB,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC9H,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;QACH,mEAAmE;QACnE,sEAAsE;QACtE,oEAAoE;QACpE,uDAAuD;QACvD,OAAO,MAAM,CAAC,KAAK,CAAC;IACtB,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aura3d/assets",
3
- "version": "4.0.3",
3
+ "version": "4.0.5",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -27,9 +27,9 @@
27
27
  "draco3d": "1.5.7",
28
28
  "ktx-parse": "1.0.1",
29
29
  "meshoptimizer": "1.2.0",
30
- "@aura3d/animation": "4.0.3",
31
- "@aura3d/rendering": "4.0.3",
32
- "@aura3d/scene": "4.0.3"
30
+ "@aura3d/animation": "4.0.5",
31
+ "@aura3d/rendering": "4.0.5",
32
+ "@aura3d/scene": "4.0.5"
33
33
  },
34
34
  "sideEffects": false,
35
35
  "description": "Asset identity, loading, caching, dependency tracking, import pipelines, worker job boundaries, and GLB/glTF runtime loaders for Aura3D.",