@preference-sl/prefconfigurator-wasm 4.1.5 → 4.1.7

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 (31) hide show
  1. package/_framework/{PrefConfigurator.Abstractions.2nb70uep3a.wasm → PrefConfigurator.Abstractions.jsws59h2n5.wasm} +0 -0
  2. package/_framework/PrefConfigurator.Abstractions.jsws59h2n5.wasm.br +0 -0
  3. package/_framework/{PrefConfigurator.Abstractions.2nb70uep3a.wasm.gz → PrefConfigurator.Abstractions.jsws59h2n5.wasm.gz} +0 -0
  4. package/_framework/PrefConfigurator.Application.a0589zm8xa.wasm +0 -0
  5. package/_framework/PrefConfigurator.Application.a0589zm8xa.wasm.br +0 -0
  6. package/_framework/PrefConfigurator.Application.a0589zm8xa.wasm.gz +0 -0
  7. package/_framework/{PrefConfigurator.Domain.7csjlxxf90.wasm → PrefConfigurator.Domain.h24lrqtwce.wasm} +0 -0
  8. package/_framework/PrefConfigurator.Domain.h24lrqtwce.wasm.br +0 -0
  9. package/_framework/PrefConfigurator.Domain.h24lrqtwce.wasm.gz +0 -0
  10. package/_framework/{PrefConfigurator.Infrastructure.1e8yr9yout.wasm → PrefConfigurator.Infrastructure.r6wjcqtflb.wasm} +0 -0
  11. package/_framework/PrefConfigurator.Infrastructure.r6wjcqtflb.wasm.br +0 -0
  12. package/_framework/PrefConfigurator.Infrastructure.r6wjcqtflb.wasm.gz +0 -0
  13. package/_framework/PrefConfigurator.Wasm.g7rvx41bg3.wasm +0 -0
  14. package/_framework/PrefConfigurator.Wasm.g7rvx41bg3.wasm.br +0 -0
  15. package/_framework/PrefConfigurator.Wasm.g7rvx41bg3.wasm.gz +0 -0
  16. package/_framework/blazor.boot.json +11 -11
  17. package/_framework/blazor.boot.json.br +0 -0
  18. package/_framework/blazor.boot.json.gz +0 -0
  19. package/js/gltf-merger.js +49 -24
  20. package/package.json +1 -1
  21. package/_framework/PrefConfigurator.Abstractions.2nb70uep3a.wasm.br +0 -0
  22. package/_framework/PrefConfigurator.Application.esij2lwz10.wasm +0 -0
  23. package/_framework/PrefConfigurator.Application.esij2lwz10.wasm.br +0 -0
  24. package/_framework/PrefConfigurator.Application.esij2lwz10.wasm.gz +0 -0
  25. package/_framework/PrefConfigurator.Domain.7csjlxxf90.wasm.br +0 -0
  26. package/_framework/PrefConfigurator.Domain.7csjlxxf90.wasm.gz +0 -0
  27. package/_framework/PrefConfigurator.Infrastructure.1e8yr9yout.wasm.br +0 -0
  28. package/_framework/PrefConfigurator.Infrastructure.1e8yr9yout.wasm.gz +0 -0
  29. package/_framework/PrefConfigurator.Wasm.jqipqzywqq.wasm +0 -0
  30. package/_framework/PrefConfigurator.Wasm.jqipqzywqq.wasm.br +0 -0
  31. package/_framework/PrefConfigurator.Wasm.jqipqzywqq.wasm.gz +0 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "mainAssemblyName": "PrefConfigurator.Wasm",
3
3
  "resources": {
4
- "hash": "sha256-8zvOGXkut0FwW2ZIg9omMi3nmSir5hk6dUIRD2PV26M=",
4
+ "hash": "sha256-WckXpVo9krZnzRUdOO3jOImkb5Ulbuk31Mv7ohv5iVQ=",
5
5
  "fingerprinting": {
6
6
  "Microsoft.CSharp.wdyr58w263.wasm": "Microsoft.CSharp.wasm",
7
7
  "Microsoft.Extensions.Caching.Abstractions.9tfokavdri.wasm": "Microsoft.Extensions.Caching.Abstractions.wasm",
@@ -34,11 +34,11 @@
34
34
  "Microsoft.Extensions.Options.c9gmov336d.wasm": "Microsoft.Extensions.Options.wasm",
35
35
  "Microsoft.Extensions.Primitives.ii8zcoqmmf.wasm": "Microsoft.Extensions.Primitives.wasm",
36
36
  "Newtonsoft.Json.ou6h2ikg0u.wasm": "Newtonsoft.Json.wasm",
37
- "PrefConfigurator.Abstractions.2nb70uep3a.wasm": "PrefConfigurator.Abstractions.wasm",
38
- "PrefConfigurator.Application.esij2lwz10.wasm": "PrefConfigurator.Application.wasm",
39
- "PrefConfigurator.Domain.7csjlxxf90.wasm": "PrefConfigurator.Domain.wasm",
40
- "PrefConfigurator.Infrastructure.1e8yr9yout.wasm": "PrefConfigurator.Infrastructure.wasm",
41
- "PrefConfigurator.Wasm.jqipqzywqq.wasm": "PrefConfigurator.Wasm.wasm",
37
+ "PrefConfigurator.Abstractions.jsws59h2n5.wasm": "PrefConfigurator.Abstractions.wasm",
38
+ "PrefConfigurator.Application.a0589zm8xa.wasm": "PrefConfigurator.Application.wasm",
39
+ "PrefConfigurator.Domain.h24lrqtwce.wasm": "PrefConfigurator.Domain.wasm",
40
+ "PrefConfigurator.Infrastructure.r6wjcqtflb.wasm": "PrefConfigurator.Infrastructure.wasm",
41
+ "PrefConfigurator.Wasm.g7rvx41bg3.wasm": "PrefConfigurator.Wasm.wasm",
42
42
  "Preference.Hydra.OpenApi.oba396x8m7.wasm": "Preference.Hydra.OpenApi.wasm",
43
43
  "System.f0t8bkq7p2.wasm": "System.wasm",
44
44
  "System.Collections.Concurrent.3x28nluuwn.wasm": "System.Collections.Concurrent.wasm",
@@ -135,11 +135,11 @@
135
135
  "Microsoft.Extensions.Options.c9gmov336d.wasm": "sha256-0N/ionjXj1tzE4oM9Wt55U0WDRfW6CCbnq2+PbQfUBc=",
136
136
  "Microsoft.Extensions.Primitives.ii8zcoqmmf.wasm": "sha256-Jt5QBSXSDEahiZ89Pn1MhJ9A3C/ftN8ZXaBGV9JgqwQ=",
137
137
  "Newtonsoft.Json.ou6h2ikg0u.wasm": "sha256-8EZ4H5Mb5yxuavrUzuw5k75ewxJQbdU+Y1rksETqPVo=",
138
- "PrefConfigurator.Abstractions.2nb70uep3a.wasm": "sha256-ro5m0PxN5EJAyzRBMpb/kB4JVzESoltU2hwfKuwD9Bo=",
139
- "PrefConfigurator.Application.esij2lwz10.wasm": "sha256-3lt2vFDmIJJfIxFugsoHfCYNnIL3OiFSRRrlTWjaaxA=",
140
- "PrefConfigurator.Domain.7csjlxxf90.wasm": "sha256-Nz9X/noC2ecRK146PxpLYxFAMkpDMltapDj5IESR2pU=",
141
- "PrefConfigurator.Infrastructure.1e8yr9yout.wasm": "sha256-+T0UgbxZMeIKddoo33xzxEUMZEpjwDYUNK2+Vu3i1dk=",
142
- "PrefConfigurator.Wasm.jqipqzywqq.wasm": "sha256-5e40X/QaP0qPJIPB9UBnW3ZDnuyTcSArW2Ezo95ISO4=",
138
+ "PrefConfigurator.Abstractions.jsws59h2n5.wasm": "sha256-/fFD3oBfZx/hpFk/j2u0SudKKzYa4XX7LlyPwqh4Lps=",
139
+ "PrefConfigurator.Application.a0589zm8xa.wasm": "sha256-WkCH6qRehUhfhBq+tNLTe7Wp/BlWkGPlw3duwe5FmvY=",
140
+ "PrefConfigurator.Domain.h24lrqtwce.wasm": "sha256-2XoogpYyMmtC0uR17Rd7NC8RjS0Z0MGPUGSiON6L2Og=",
141
+ "PrefConfigurator.Infrastructure.r6wjcqtflb.wasm": "sha256-s+2x0/VHirMPCBHUNosMl97SqgbvczEtP/cSxsroPQg=",
142
+ "PrefConfigurator.Wasm.g7rvx41bg3.wasm": "sha256-fLy2zyMx1S88CBd1C50d60m1Hy19/epMYiWG9B1rqCU=",
143
143
  "Preference.Hydra.OpenApi.oba396x8m7.wasm": "sha256-BOitG9XqTGoVdagU40GvNefDuOylKCPs3Gp5VG0M3oY=",
144
144
  "System.f0t8bkq7p2.wasm": "sha256-319B7WIXJ7ZD6SZ1l7es3CoglOLgv5lKWx0Ew9mli1c=",
145
145
  "System.Collections.Concurrent.3x28nluuwn.wasm": "sha256-xwvOotzdpOgojZxJSPpPCqC1ZclGeXX5Gb5BO3q0GTw=",
Binary file
Binary file
package/js/gltf-merger.js CHANGED
@@ -34,29 +34,54 @@ async function loadCreateModuleFactory() {
34
34
  throw new Error(`PrefGltfMergerWasm.js not found. Tried: ${candidatePaths.join(", ")}`);
35
35
  }
36
36
 
37
- async function getModule() {
38
- if (!moduleInstance) {
39
- const createModule = await loadCreateModuleFactory();
40
- moduleInstance = await createModule(); // esto inicializa el WASM
41
- }
42
- return moduleInstance;
43
- }
37
+ async function getModule() {
38
+ if (!moduleInstance) {
39
+ const createModule = await loadCreateModuleFactory();
40
+ moduleInstance = await createModule({
41
+ onAbort: (what) => {
42
+ console.error("[gltf-merger] WASM abort:", what);
43
+ },
44
+ printErr: (...args) => {
45
+ console.error("[gltf-merger][wasm]", ...args);
46
+ }
47
+ }); // esto inicializa el WASM
48
+ }
49
+ return moduleInstance;
50
+ }
44
51
 
45
- export async function mergeModels(modelA, modelB, sceneWallDataStr, buildWallDataStr, materials, materialAssignment, textureRootPath, binary) {
46
- if (!modelA || !modelB) {
47
- throw new Error("Models not valid");
48
- }
52
+ export async function mergeModels(modelA, modelB, sceneWallDataStr, buildWallDataStr, materials, materialAssignment, textureRootPath, binary) {
53
+ if (!modelA || !modelB) {
54
+ throw new Error("Models not valid");
55
+ }
56
+
57
+ const module = await getModule();
58
+ const merger = new module.GltfMerger();
59
+ try {
60
+ const result = merger.mergeModels(modelA, modelB, sceneWallDataStr, buildWallDataStr, materials, materialAssignment, textureRootPath, binary);
61
+ if (!result?.success) {
62
+ console.error("[gltf-merger] mergeModels failed:", result?.error ?? "Unknown merger error");
63
+ }
64
+ return result;
65
+ } catch (error) {
66
+ console.error("[gltf-merger] mergeModels exception:", error);
67
+ throw error;
68
+ }
69
+ }
49
70
 
50
- const module = await getModule();
51
- const merger = new module.GltfMerger();
52
- return merger.mergeModels(modelA, modelB, sceneWallDataStr, buildWallDataStr, materials, materialAssignment, textureRootPath, binary);
53
- }
54
-
55
- export async function applyWallMaterials(modelBuffer, wallMaterialDataJson, textureRootPath) {
56
- if (!modelBuffer || !wallMaterialDataJson || !textureRootPath) {
57
- throw new Error("Null input data");
58
- }
59
- const module = await getModule();
60
- const merger = new module.GltfMerger();
61
- return merger.applyWallMaterials(modelBuffer, wallMaterialDataJson, textureRootPath);
62
- }
71
+ export async function applyWallMaterials(modelBuffer, wallMaterialDataJson, textureRootPath) {
72
+ if (!modelBuffer || !wallMaterialDataJson || !textureRootPath) {
73
+ throw new Error("Null input data");
74
+ }
75
+ const module = await getModule();
76
+ const merger = new module.GltfMerger();
77
+ try {
78
+ const result = merger.applyWallMaterials(modelBuffer, wallMaterialDataJson, textureRootPath);
79
+ if (!result?.success) {
80
+ console.error("[gltf-merger] applyWallMaterials failed:", result?.error ?? "Unknown merger error");
81
+ }
82
+ return result;
83
+ } catch (error) {
84
+ console.error("[gltf-merger] applyWallMaterials exception:", error);
85
+ throw error;
86
+ }
87
+ }
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  },
5
5
  "description": ".NET WebAssembly runtime package that centralizes logic for building product configurators, exposing a simple API for integration into ecommerce platforms.",
6
6
  "types": "main.d.ts",
7
- "version": "4.1.5",
7
+ "version": "4.1.7",
8
8
  "files": [
9
9
  "_framework/**",
10
10
  "**/*.js",