@aura3d/cli 4.0.8 → 4.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 (55) hide show
  1. package/data/aura.exports.json +10 -10
  2. package/data/root-export-dispositions.json +504 -0
  3. package/dist/cli-help.d.ts.map +1 -1
  4. package/dist/cli-help.js +6 -0
  5. package/dist/cli-help.js.map +1 -1
  6. package/dist/cli.js +33 -0
  7. package/dist/cli.js.map +1 -1
  8. package/dist/commands/assets/gltfToolkit.d.ts +25 -0
  9. package/dist/commands/assets/gltfToolkit.d.ts.map +1 -0
  10. package/dist/commands/assets/gltfToolkit.js +59 -0
  11. package/dist/commands/assets/gltfToolkit.js.map +1 -0
  12. package/dist/commands/assets/importMeshy.d.ts +50 -0
  13. package/dist/commands/assets/importMeshy.d.ts.map +1 -0
  14. package/dist/commands/assets/importMeshy.js +112 -0
  15. package/dist/commands/assets/importMeshy.js.map +1 -0
  16. package/dist/commands/assets/index.d.ts +6 -0
  17. package/dist/commands/assets/index.d.ts.map +1 -0
  18. package/dist/commands/assets/index.js +54 -0
  19. package/dist/commands/assets/index.js.map +1 -0
  20. package/dist/commands/assets/mergeClips.d.ts +44 -0
  21. package/dist/commands/assets/mergeClips.d.ts.map +1 -0
  22. package/dist/commands/assets/mergeClips.js +103 -0
  23. package/dist/commands/assets/mergeClips.js.map +1 -0
  24. package/dist/commands/assets/optimize.d.ts +54 -0
  25. package/dist/commands/assets/optimize.d.ts.map +1 -0
  26. package/dist/commands/assets/optimize.js +76 -0
  27. package/dist/commands/assets/optimize.js.map +1 -0
  28. package/dist/commands/assets/optimizeVerb.d.ts +9 -0
  29. package/dist/commands/assets/optimizeVerb.d.ts.map +1 -0
  30. package/dist/commands/assets/optimizeVerb.js +40 -0
  31. package/dist/commands/assets/optimizeVerb.js.map +1 -0
  32. package/dist/commands/meshyLedger.d.ts +103 -0
  33. package/dist/commands/meshyLedger.d.ts.map +1 -0
  34. package/dist/commands/meshyLedger.js +308 -0
  35. package/dist/commands/meshyLedger.js.map +1 -0
  36. package/dist/commands/prd05/index.d.ts.map +1 -1
  37. package/dist/commands/prd05/index.js +8 -2
  38. package/dist/commands/prd05/index.js.map +1 -1
  39. package/dist/commands/registry.d.ts +1 -0
  40. package/dist/commands/registry.d.ts.map +1 -1
  41. package/dist/commands/registry.js +1 -0
  42. package/dist/commands/registry.js.map +1 -1
  43. package/package.json +5 -5
  44. package/skills/aura3d-assets/SKILL.md +28 -26
  45. package/skills/aura3d-browser-game/SKILL.md +16 -13
  46. package/skills/aura3d-browser-game/references/kits-and-hooks.md +107 -0
  47. package/skills/aura3d-core/SKILL.md +9 -8
  48. package/skills/aura3d-core/references/pitfalls.md +62 -0
  49. package/skills/aura3d-evidence-review/SKILL.md +22 -2
  50. package/skills/aura3d-materials-environments/SKILL.md +8 -0
  51. package/skills/aura3d-materials-environments/references/custom-shader-chunks.md +53 -0
  52. package/skills/aura3d-performance/SKILL.md +17 -1
  53. package/skills/llms.txt +30 -20
  54. package/skills/meshy-cli/SKILL.md +7 -5
  55. package/skills/meshy-cli/references/asset-tooling.md +72 -0
package/dist/cli.js CHANGED
@@ -7,6 +7,7 @@ import { writeRouteTypedAssets } from "./asset-route-typegen.js";
7
7
  import { runResolve, runSearch } from "./pull-bridge.js";
8
8
  import { cliCommandFor, cliCommandNames } from "./contracts/commands.js";
9
9
  import "./commands/registry.js";
10
+ import { importMeshyIsolated, importMeshyIsolatedUsage, isAuraMonorepoRoot } from "./commands/assets/importMeshy.js";
10
11
  const args = process.argv.slice(2);
11
12
  const { hasFlag, readAssetQuality, readAssetRole, readAssetType, readAssetValidationOptions, readAudioMetadata, readCliAssetProfile, readEvidenceOutput, readInspectFile, readOption, readOrientation, readParts, readProvenanceEvidence, readRenderedProbe, readResolveConstraints, } = createCliOptionReaders(args);
12
13
  const helpRequested = hasFlag("--help") || hasFlag("-h");
@@ -62,6 +63,38 @@ async function main() {
62
63
  }));
63
64
  }
64
65
  else if (action === "import-meshy") {
66
+ // Inside the Aura3D monorepo a plain import rewrites shared root manifests, so it runs isolated by default.
67
+ const isolatedInto = readOption("--into");
68
+ if (isolatedInto !== undefined || (isAuraMonorepoRoot(process.cwd()) && !hasFlag("--shared-manifest"))) {
69
+ const downloadDir = args[2];
70
+ const prefix = readOption("--prefix");
71
+ const roleName = readOption("--name");
72
+ if (!downloadDir || !isolatedInto || !prefix || !roleName) {
73
+ throw new Error(`import-meshy runs in an isolated project here, so shared manifests are never touched: ${importMeshyIsolatedUsage()} (pass --shared-manifest to write the project's own aura.assets.json deliberately).`);
74
+ }
75
+ const isolatedProfile = readOption("--profile");
76
+ if (isolatedProfile && !["prop", "environment", "vehicle", "humanoid"].includes(isolatedProfile)) {
77
+ throw new Error(`Unsupported Meshy --profile value "${isolatedProfile}". Use prop, environment, vehicle, or humanoid.`);
78
+ }
79
+ const isolated = importMeshyIsolated({
80
+ input: downloadDir,
81
+ into: isolatedInto,
82
+ prefix,
83
+ name: roleName,
84
+ rightsEvidence: readOption("--rights-evidence"),
85
+ file: readOption("--file"),
86
+ thumbnail: readOption("--thumbnail"),
87
+ quality: readAssetQuality(),
88
+ role: readAssetRole(),
89
+ profile: isolatedProfile,
90
+ overwrite: hasFlag("--overwrite"),
91
+ keepTemp: hasFlag("--keep-temp")
92
+ });
93
+ console.log(JSON.stringify(isolated, null, 2));
94
+ if (!isolated.ok)
95
+ process.exitCode = 1;
96
+ return;
97
+ }
65
98
  const input = args[2];
66
99
  const name = readOption("--name");
67
100
  const rightsEvidence = readOption("--rights-evidence");
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EACL,QAAQ,EACR,qBAAqB,EACrB,mBAAmB,EACnB,WAAW,EACX,2BAA2B,EAC3B,qBAAqB,EACrB,MAAM,EACN,cAAc,EACd,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,EACd,6BAA6B,EAC7B,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,YAAY,GACb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,wBAAwB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAErH,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACnC,MAAM,EACJ,OAAO,EACP,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,0BAA0B,EAC1B,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,eAAe,EACf,SAAS,EACT,sBAAsB,EACtB,iBAAiB,EACjB,sBAAsB,GACvB,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;AACjC,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;AAEzD,KAAK,UAAU,IAAI;IACjB,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACrB,IAAI,aAAa,EAAE,CAAC;gBAClB,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC;gBAC7B,OAAO;YACT,CAAC;YACD,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACrB,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;YACzF,yEAAyE;YACzE,sEAAsE;YACtE,sEAAsE;YACtE,kEAAkE;YAClE,MAAM,gBAAgB,GAAG,gBAAgB,EAAE,CAAC;YAC5C,IAAI,gBAAgB,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBACzE,MAAM,IAAI,KAAK,CAAC,+HAA+H,CAAC,CAAC;YACnJ,CAAC;YACD,IAAI,OAAO,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBACtC,OAAO,CAAC,IAAI,CAAC,uIAAuI,CAAC,CAAC;YACxJ,CAAC;YACD,KAAK,CAAC,QAAQ,CAAC;gBACb,IAAI;gBACJ,IAAI;gBACJ,IAAI,EAAE,aAAa,EAAE;gBACrB,UAAU,EAAE,UAAU,CAAC,eAAe,CAAC;gBACvC,SAAS,EAAE,UAAU,CAAC,UAAU,CAAC;gBACjC,UAAU,EAAE,UAAU,CAAC,eAAe,CAAC;gBACvC,WAAW,EAAE,UAAU,CAAC,gBAAgB,CAAC;gBACzC,SAAS,EAAE,UAAU,CAAC,cAAc,CAAC;gBACrC,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC;gBAChC,WAAW,EAAE,UAAU,CAAC,gBAAgB,CAAC;gBACzC,UAAU,EAAE,UAAU,CAAC,eAAe,CAAC;gBACvC,UAAU,EAAE,UAAU,CAAC,eAAe,CAAC;gBACvC,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC;gBAC9B,YAAY,EAAE,UAAU,CAAC,iBAAiB,CAAC;gBAC3C,WAAW,EAAE,UAAU,CAAC,eAAe,CAAC;gBACxC,kBAAkB,EAAE,sBAAsB,EAAE;gBAC5C,WAAW,EAAE,UAAU,CAAC,gBAAgB,CAAC;gBACzC,OAAO,EAAE,gBAAgB;gBACzB,IAAI,EAAE,aAAa,EAAE;gBACrB,iBAAiB,EAAE,UAAU,CAAC,eAAe,CAAC;gBAC9C,aAAa,EAAE,iBAAiB,EAAE;gBAClC,WAAW,EAAE,eAAe,EAAE;gBAC9B,YAAY,EAAE,UAAU,CAAC,iBAAiB,CAAC;gBAC3C,KAAK,EAAE,iBAAiB,EAAE;aAC3B,CAAC,CAAC,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;YACrC,4GAA4G;YAC5G,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;YAC1C,IAAI,YAAY,KAAK,SAAS,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC;gBACvG,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;gBACtC,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACtC,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAC1D,MAAM,IAAI,KAAK,CAAC,yFAAyF,wBAAwB,EAAE,sFAAsF,CAAC,CAAC;gBAC7N,CAAC;gBACD,MAAM,eAAe,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;gBAChD,IAAI,eAAe,IAAI,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;oBACjG,MAAM,IAAI,KAAK,CAAC,sCAAsC,eAAe,iDAAiD,CAAC,CAAC;gBAC1H,CAAC;gBACD,MAAM,QAAQ,GAAG,mBAAmB,CAAC;oBACnC,KAAK,EAAE,WAAW;oBAClB,IAAI,EAAE,YAAY;oBAClB,MAAM;oBACN,IAAI,EAAE,QAAQ;oBACd,cAAc,EAAE,UAAU,CAAC,mBAAmB,CAAC;oBAC/C,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;oBAC1B,SAAS,EAAE,UAAU,CAAC,aAAa,CAAC;oBACpC,OAAO,EAAE,gBAAgB,EAAE;oBAC3B,IAAI,EAAE,aAAa,EAAE;oBACrB,OAAO,EAAE,eAA8E;oBACvF,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC;oBACjC,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC;iBACjC,CAAC,CAAC;gBACH,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC/C,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACvC,OAAO;YACT,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;YAClC,MAAM,cAAc,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;YACvD,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,oQAAoQ,CAAC,CAAC;YACxR,CAAC;YACD,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;YAC7C,IAAI,YAAY,IAAI,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC3F,MAAM,IAAI,KAAK,CAAC,sCAAsC,YAAY,iDAAiD,CAAC,CAAC;YACvH,CAAC;YACD,KAAK,CAAC,gBAAgB,CAAC;gBACrB,KAAK;gBACL,IAAI;gBACJ,cAAc;gBACd,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;gBAC1B,SAAS,EAAE,UAAU,CAAC,aAAa,CAAC;gBACpC,WAAW,EAAE,UAAU,CAAC,gBAAgB,CAAC;gBACzC,WAAW,EAAE,UAAU,CAAC,gBAAgB,CAAC;gBACzC,OAAO,EAAE,gBAAgB,EAAE;gBAC3B,IAAI,EAAE,aAAa,EAAE;gBACrB,OAAO,EAAE,YAA2E;aACrF,CAAC,CAAC,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YAC7B,KAAK,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC;QACxD,CAAC;aAAM,IAAI,MAAM,KAAK,0BAA0B,EAAE,CAAC;YACjD,MAAM,QAAQ,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;YAC1C,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3F,MAAM,sBAAsB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;YAC1D,MAAM,cAAc,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;YACvD,MAAM,iBAAiB,GAAG,UAAU,CAAC,sBAAsB,CAAC,CAAC;YAC7D,MAAM,YAAY,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,YAAY,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ,IAAI,CAAC,sBAAsB,IAAI,CAAC,cAAc,IAAI,CAAC,iBAAiB,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvK,MAAM,IAAI,KAAK,CAAC,6MAA6M,CAAC,CAAC;YACjO,CAAC;YACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,sBAAsB,EAAE,cAAc,EAAE,iBAAiB,EAAE,YAAY,EAAE,CAAC,CAAC;YAC/I,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7C,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvC,CAAC;aAAM,IAAI,MAAM,KAAK,uBAAuB,EAAE,CAAC;YAC9C,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3F,MAAM,QAAQ,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;YAC1C,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;gBACvD,MAAM,IAAI,KAAK,CAAC,yGAAyG,CAAC,CAAC;YAC7H,CAAC;YACD,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;YACnF,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC;gBACvC,QAAQ;gBACR,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;aAC1C,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7C,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvC,CAAC;aAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;YAClG,KAAK,CAAC,YAAY,CAAC;gBACjB,IAAI;gBACJ,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC;gBACjC,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC;gBAC/B,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC;gBAC/B,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC;gBAC3B,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC;aAC9B,CAAC,CAAC,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;YACjC,mEAAmE;YACnE,4DAA4D;YAC5D,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;YACpC,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;gBAC1E,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC;oBACvC,UAAU,EAAE,OAAO,CAAC,GAAG,EAAE;oBACzB,KAAK;oBACL,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC;iBAC9B,CAAC,CAAC;gBACH,KAAK,CAAC,MAAM,CAAC,CAAC;gBACd,IAAI,CAAC,MAAM,CAAC,EAAE;oBAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,cAAc,CAAC,0BAA0B,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;YACtC,KAAK,CAAC,kBAAkB,CAAC;gBACvB,MAAM,EAAE,kBAAkB,EAAE;gBAC5B,GAAG,0BAA0B,EAAE;gBAC/B,GAAG,CAAC,OAAO,KAAK,oBAAoB,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtE,CAAC,CAAC,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,2BAA2B,EAAE,CAAC;YAClD,KAAK,CAAC,6BAA6B,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAAE,GAAG,0BAA0B,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1G,CAAC;aAAM,IAAI,MAAM,KAAK,oBAAoB,EAAE,CAAC;YAC3C,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;YACxC,MAAM,OAAO,GAAG,qBAAqB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3D,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;YAC5C,MAAM,cAAc,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACtH,MAAM,MAAM,GAAG,uBAAuB,CAAC;gBACrC,cAAc;gBACd,OAAO;gBACP,eAAe,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;gBACtG,UAAU,EAAE,OAAO,CAAC,eAAe,CAAC;aACrC,CAAC,CAAC;YACH,KAAK,CAAC,MAAM,CAAC,CAAC;QAChB,CAAC;aAAM,IAAI,MAAM,KAAK,oBAAoB,EAAE,CAAC;YAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,0HAA0H,CAAC,CAAC;YAChK,KAAK,CAAC,2BAA2B,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;QACjH,CAAC;aAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACrD,CAAC;aAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;YACpC,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC;gBACvD,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;oBAC5E,MAAM,IAAI,KAAK,CAAC,qFAAqF,CAAC,CAAC;gBACzG,CAAC;gBACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,aAAa,CAAC,MAAM,aAAa,MAAM,CAAC,YAAY,UAAU,CAAC,CAAC;gBAC5G,OAAO,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC3C,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,UAAU;oBAAE,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,2CAA2C,CAAC,CAAC;gBACrH,IAAI,CAAC,MAAM,CAAC,EAAE;oBAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBAC/E,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC;QACjC,CAAC;aAAM,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,SAAS,QAAQ,CAAC,SAAS,OAAO,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;QAC1E,CAAC;aAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,YAAY,EAAE,8DAA8D,CAAC,CAAC;YACtL,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,sBAAsB,EAAE,EAAE,CAAC,CAAC;YACjF,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACtB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,iEAAiE,YAAY,EAAE,qFAAqF,CAAC,CAAC;YACrO,6FAA6F;YAC7F,2FAA2F;YAC3F,wCAAwC;YACxC,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;YACvC,MAAM,cAAc,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC7E,IAAI,cAAc,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;gBACtE,MAAM,IAAI,KAAK,CAAC,2DAA2D,QAAQ,KAAK,CAAC,CAAC;YAC5F,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;gBAC9B,KAAK;gBACL,IAAI;gBACJ,WAAW,EAAE,sBAAsB,EAAE;gBACrC,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC;gBAC3D,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,CAAC,gBAAgB,CAAE,EAAE,CAAC;aACtG,CAAC,CAAC;YACH,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACtB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ;oBAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC5D,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ;oBAAE,OAAO,CAAC,KAAK,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;YAC9E,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvC,CAAC;aAAM,CAAC;YACN,0DAA0D;YAC1D,yEAAyE;YACzE,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC/D,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBACjE,IAAI,UAAU,EAAE,CAAC;oBACf,OAAO,CAAC,QAAQ,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;wBACzD,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;wBAClB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;wBACnC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;qBACtC,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;YACH,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,2BAA2B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,kEAAkE;YAClE,qEAAqE;YACrE,4BAA4B;YAC5B,MAAM,IAAI,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;YACxC,kEAAkE;YAClE,6CAA6C;YAC7C,IAAI,CAAC,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,kFAAkF,CAAC,CAAC;YAC/G,OAAO,CAAC,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAC/B,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,QAAQ,CAAC,EAC/C;gBACE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;gBAClB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;gBACnC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;aACtC,CACF,CAAC;YACF,OAAO;QACT,CAAC;QACD,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAClB,CAAC;SAAM,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QACnC,MAAM,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;SAAM,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;QACtC,KAAK,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,GAAG,0BAA0B,EAAE,EAAE,CAAC,CAAC,CAAC;IACzF,CAAC;SAAM,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC;QACjD,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;QAC9H,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC;QAChD,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,MAAM,2BAA2B,CAAC,CAAC;QAChI,MAAM,KAAK,GAAG,cAAc,CAAC,EAAE,KAAK,EAAE,KAA4D,EAAE,MAAM,EAAE,MAAiC,EAAE,QAAQ,EAAE,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACrL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC;SAAM,CAAC;QACN,mFAAmF;QACnF,uDAAuD;QACvD,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;YAC9D,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YACjE,IAAI,UAAU,EAAE,CAAC;gBACf,OAAO,CAAC,QAAQ,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;oBACzD,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;oBAClB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;oBACnC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;iBACtC,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,GAAG,sBAAsB,EAAE,CAAC,CAAC;IACnE,CAAC;AACH,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,MAA0B;IAC3D,MAAM,cAAc,GAA2B;QAC7C,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,iBAAiB;QAC1B,MAAM,EAAE,gBAAgB;QACxB,OAAO,EAAE,iBAAiB;QAC1B,MAAM,EAAE,gBAAgB;QACxB,MAAM,EAAE,gBAAgB;QACxB,sFAAsF;QACtF,uFAAuF;QACvF,KAAK,EAAE,OAAO;KACf,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,mEAAmE;QACnE,2EAA2E;QAC3E,sCAAsC;QACtC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,MAAM,EAAE,CAAC,CAAC;YACxD,IAAI,UAAU,EAAE,CAAC;gBACf,OAAO,CAAC,QAAQ,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBACrD,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;oBAClB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;oBACnC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;iBACtC,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;QACH,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,qFAAqF,CAAC,CAAC;IACzG,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC;QACnF,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,KAAK,CAAC;IACV,0FAA0F;IAC1F,wFAAwF;IACxF,mCAAmC;IACnC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC;IACjE,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrI,MAAM,MAAM,GAAG;QACb,EAAE,EAAE,IAAI;QACR,OAAO,EAAE,WAAW;QACpB,MAAM;QACN,eAAe,EAAE,MAAM;QACvB,aAAa,EAAE,SAAS;QACxB,MAAM,EAAE,OAAO;QACf,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC;KAC7B,CAAC;IACF,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7C,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,WAAW,EAAE;QAC7C,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO;KACpC,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,KAAK;QAAE,MAAM,MAAM,CAAC,KAAK,CAAC;IACrC,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,sBAAsB;IAC7B,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IAChC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,qBAAqB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,IAAI,MAAM,aAAa,CAAC,IAAI,CAAC,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAC3H,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,SAAS,KAAK,CAAC,KAAmJ;IAChK,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5C,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACtC,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Lazy loader for the glTF-Transform stack used by `assets optimize` (file mode) and `assets merge-clips`.
3
+ *
4
+ * The CLI keeps zero hard dependencies on these packages: they resolve from the project (or from the CLI's own install)
5
+ * the first time a command needs them, and a missing one produces an actionable error instead of a stack trace.
6
+ */
7
+ export type Loose = any;
8
+ export interface GltfToolkit {
9
+ readonly NodeIO: Loose;
10
+ readonly Document: Loose;
11
+ readonly ALL_EXTENSIONS: Loose;
12
+ readonly functions: Loose;
13
+ readonly MeshoptEncoder: Loose;
14
+ readonly MeshoptDecoder: Loose;
15
+ readonly MeshoptSimplifier: Loose;
16
+ readonly sharp: Loose;
17
+ }
18
+ export declare const GLTF_TOOLKIT_PACKAGES: readonly ["@gltf-transform/core", "@gltf-transform/extensions", "@gltf-transform/functions", "meshoptimizer", "sharp"];
19
+ export declare class GltfToolkitMissingError extends Error {
20
+ readonly missing: readonly string[];
21
+ constructor(missing: readonly string[]);
22
+ }
23
+ export declare function loadGltfToolkit(projectDir?: string): GltfToolkit;
24
+ export declare function createGltfIo(toolkit: GltfToolkit): Promise<Loose>;
25
+ //# sourceMappingURL=gltfToolkit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gltfToolkit.d.ts","sourceRoot":"","sources":["../../../../../../packages/aura3d-cli/src/commands/assets/gltfToolkit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,MAAM,MAAM,KAAK,GAAG,GAAG,CAAC;AAExB,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,KAAK,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,KAAK,CAAC;IAC/B,QAAQ,CAAC,cAAc,EAAE,KAAK,CAAC;IAC/B,QAAQ,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;CACvB;AAED,eAAO,MAAM,qBAAqB,wHAAyH,CAAC;AAE5J,qBAAa,uBAAwB,SAAQ,KAAK;IACpC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE;gBAA1B,OAAO,EAAE,SAAS,MAAM,EAAE;CAIhD;AAED,wBAAgB,eAAe,CAAC,UAAU,GAAE,MAAsB,GAAG,WAAW,CA8B/E;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAOvE"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Lazy loader for the glTF-Transform stack used by `assets optimize` (file mode) and `assets merge-clips`.
3
+ *
4
+ * The CLI keeps zero hard dependencies on these packages: they resolve from the project (or from the CLI's own install)
5
+ * the first time a command needs them, and a missing one produces an actionable error instead of a stack trace.
6
+ */
7
+ import { createRequire } from "node:module";
8
+ import { resolve } from "node:path";
9
+ export const GLTF_TOOLKIT_PACKAGES = ["@gltf-transform/core", "@gltf-transform/extensions", "@gltf-transform/functions", "meshoptimizer", "sharp"];
10
+ export class GltfToolkitMissingError extends Error {
11
+ missing;
12
+ constructor(missing) {
13
+ super(`This command needs ${missing.join(", ")}. Install them in your project: npm install --save-dev ${GLTF_TOOLKIT_PACKAGES.join(" ")}`);
14
+ this.missing = missing;
15
+ this.name = "GltfToolkitMissingError";
16
+ }
17
+ }
18
+ export function loadGltfToolkit(projectDir = process.cwd()) {
19
+ const requirers = [createRequire(resolve(projectDir, "package.json")), createRequire(import.meta.url)];
20
+ const missing = [];
21
+ const load = (id) => {
22
+ for (const req of requirers) {
23
+ try {
24
+ return req(id);
25
+ }
26
+ catch {
27
+ // try the next resolution root
28
+ }
29
+ }
30
+ missing.push(id);
31
+ return undefined;
32
+ };
33
+ const core = load("@gltf-transform/core");
34
+ const extensions = load("@gltf-transform/extensions");
35
+ const functions = load("@gltf-transform/functions");
36
+ const meshopt = load("meshoptimizer");
37
+ const sharp = load("sharp");
38
+ if (missing.length > 0)
39
+ throw new GltfToolkitMissingError(missing);
40
+ return {
41
+ NodeIO: core.NodeIO,
42
+ Document: core.Document,
43
+ ALL_EXTENSIONS: extensions.ALL_EXTENSIONS,
44
+ functions,
45
+ MeshoptEncoder: meshopt.MeshoptEncoder,
46
+ MeshoptDecoder: meshopt.MeshoptDecoder,
47
+ MeshoptSimplifier: meshopt.MeshoptSimplifier,
48
+ sharp: sharp.default ?? sharp
49
+ };
50
+ }
51
+ export async function createGltfIo(toolkit) {
52
+ await toolkit.MeshoptEncoder.ready;
53
+ await toolkit.MeshoptDecoder.ready;
54
+ await toolkit.MeshoptSimplifier.ready;
55
+ return new toolkit.NodeIO()
56
+ .registerExtensions(toolkit.ALL_EXTENSIONS)
57
+ .registerDependencies({ "meshopt.encoder": toolkit.MeshoptEncoder, "meshopt.decoder": toolkit.MeshoptDecoder });
58
+ }
59
+ //# sourceMappingURL=gltfToolkit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gltfToolkit.js","sourceRoot":"","sources":["../../../../../../packages/aura3d-cli/src/commands/assets/gltfToolkit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBpC,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,sBAAsB,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,eAAe,EAAE,OAAO,CAAU,CAAC;AAE5J,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAC3B;IAArB,YAAqB,OAA0B;QAC7C,KAAK,CAAC,sBAAsB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,0DAA0D,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QADxH,YAAO,GAAP,OAAO,CAAmB;QAE7C,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AAED,MAAM,UAAU,eAAe,CAAC,aAAqB,OAAO,CAAC,GAAG,EAAE;IAChE,MAAM,SAAS,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACvG,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,CAAC,EAAU,EAAS,EAAE;QACjC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACH,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC;YACjB,CAAC;YAAC,MAAM,CAAC;gBACP,+BAA+B;YACjC,CAAC;QACH,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IACF,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,4BAA4B,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACnE,OAAO;QACL,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,cAAc,EAAE,UAAU,CAAC,cAAc;QACzC,SAAS;QACT,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,KAAK,EAAE,KAAK,CAAC,OAAO,IAAI,KAAK;KAC9B,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAAoB;IACrD,MAAM,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC;IACnC,MAAM,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC;IACnC,MAAM,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC;IACtC,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE;SACxB,kBAAkB,CAAC,OAAO,CAAC,cAAc,CAAC;SAC1C,oBAAoB,CAAC,EAAE,iBAAiB,EAAE,OAAO,CAAC,cAAc,EAAE,iBAAiB,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;AACpH,CAAC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Isolated `aura3d assets import-meshy --into <dir> --prefix <game>`.
3
+ *
4
+ * Importing from a monorepo root rewrites shared files (aura.assets.json, src/aura-assets.ts through typegen,
5
+ * public/aura-assets/*, aura-evidence/meshy/*), so many games importing at once race and pollute one commit. The
6
+ * isolated mode runs the same admission in a throw-away project, validates there, and copies only the hashed GLB plus
7
+ * its rights and metadata evidence into the game's own folder. Nothing in the invoking project is touched.
8
+ */
9
+ import type { AuraAssetQuality, AuraCliAssetRole } from "../../asset-core-types.js";
10
+ import type { MeshyAssetProfile } from "../../meshy/admission.js";
11
+ export interface IsolatedImportOptions {
12
+ /** Meshy download directory (model.glb, meta.json, ...). */
13
+ readonly input: string;
14
+ /** The game's own asset folder; receives models/<key>.glb and provenance/<key>.{rights,meta}.json. */
15
+ readonly into: string;
16
+ /** Game/project tag; becomes the typed-key prefix so two games can never share a name. */
17
+ readonly prefix: string;
18
+ /** Role name inside the game: "lamp", "hero". */
19
+ readonly name: string;
20
+ readonly rightsEvidence?: string;
21
+ readonly file?: string;
22
+ readonly thumbnail?: string;
23
+ readonly quality?: AuraAssetQuality;
24
+ readonly role?: AuraCliAssetRole;
25
+ readonly profile?: MeshyAssetProfile;
26
+ readonly cwd?: string;
27
+ /** Replace an existing different model of the same key. */
28
+ readonly overwrite?: boolean;
29
+ readonly keepTemp?: boolean;
30
+ }
31
+ export interface IsolatedImportResult {
32
+ readonly ok: boolean;
33
+ readonly typedKey: string;
34
+ readonly model?: string;
35
+ readonly sha256?: string;
36
+ readonly bytes?: number;
37
+ readonly rights?: string;
38
+ readonly meta?: string;
39
+ readonly tempProject?: string;
40
+ readonly failures: readonly string[];
41
+ readonly warnings: readonly string[];
42
+ readonly messages: readonly string[];
43
+ }
44
+ /** `last-train` + `lamp` -> `last_train_lamp` (a safe TypeScript key); a name that already carries the prefix is kept. */
45
+ export declare function isolatedTypedKey(prefix: string, name: string): string;
46
+ /** True for the Aura3D monorepo root, where a plain import would rewrite shared manifests. */
47
+ export declare function isAuraMonorepoRoot(dir: string): boolean;
48
+ export declare function importMeshyIsolated(options: IsolatedImportOptions): IsolatedImportResult;
49
+ export declare function importMeshyIsolatedUsage(): string;
50
+ //# sourceMappingURL=importMeshy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"importMeshy.d.ts","sourceRoot":"","sources":["../../../../../../packages/aura3d-cli/src/commands/assets/importMeshy.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAIlE,MAAM,WAAW,qBAAqB;IACpC,4DAA4D;IAC5D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,sGAAsG;IACtG,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,0FAA0F;IAC1F,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,iDAAiD;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAED,0HAA0H;AAC1H,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAQrE;AAED,8FAA8F;AAC9F,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEvD;AAMD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,GAAG,oBAAoB,CAuExF;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * Isolated `aura3d assets import-meshy --into <dir> --prefix <game>`.
3
+ *
4
+ * Importing from a monorepo root rewrites shared files (aura.assets.json, src/aura-assets.ts through typegen,
5
+ * public/aura-assets/*, aura-evidence/meshy/*), so many games importing at once race and pollute one commit. The
6
+ * isolated mode runs the same admission in a throw-away project, validates there, and copies only the hashed GLB plus
7
+ * its rights and metadata evidence into the game's own folder. Nothing in the invoking project is touched.
8
+ */
9
+ import { createHash } from "node:crypto";
10
+ import { copyFileSync, cpSync, existsSync, mkdirSync, mkdtempSync, readdirSync, readFileSync, rmSync, writeFileSync } from "node:fs";
11
+ import { tmpdir } from "node:os";
12
+ import { basename, isAbsolute, join, resolve } from "node:path";
13
+ import { importMeshyAsset } from "../../meshy/import.js";
14
+ import { validateAssets } from "../../index.js";
15
+ import { assertGameTag } from "../meshyLedger.js";
16
+ /** `last-train` + `lamp` -> `last_train_lamp` (a safe TypeScript key); a name that already carries the prefix is kept. */
17
+ export function isolatedTypedKey(prefix, name) {
18
+ assertGameTag(prefix);
19
+ const clean = (value) => value.replace(/[^A-Za-z0-9]+/g, "_").replace(/^_+|_+$/g, "");
20
+ const tag = clean(prefix);
21
+ const role = clean(name);
22
+ if (!role)
23
+ throw new Error(`Asset name "${name}" has no usable characters.`);
24
+ const key = role === tag || role.startsWith(`${tag}_`) ? role : `${tag}_${role}`;
25
+ return /^[A-Za-z_$]/.test(key) ? key : `_${key}`;
26
+ }
27
+ /** True for the Aura3D monorepo root, where a plain import would rewrite shared manifests. */
28
+ export function isAuraMonorepoRoot(dir) {
29
+ return existsSync(join(dir, "pnpm-workspace.yaml")) && existsSync(join(dir, "packages", "aura3d-cli", "package.json"));
30
+ }
31
+ function sha256(file) {
32
+ return createHash("sha256").update(readFileSync(file)).digest("hex");
33
+ }
34
+ export function importMeshyIsolated(options) {
35
+ const cwd = resolve(options.cwd ?? process.cwd());
36
+ const key = isolatedTypedKey(options.prefix, options.name);
37
+ const input = isAbsolute(options.input) ? options.input : resolve(cwd, options.input);
38
+ if (!existsSync(input))
39
+ throw new Error(`Meshy download directory not found: ${options.input}`);
40
+ const rightsSource = options.rightsEvidence ? (isAbsolute(options.rightsEvidence) ? options.rightsEvidence : resolve(cwd, options.rightsEvidence)) : join(input, "rights.json");
41
+ if (!existsSync(rightsSource))
42
+ throw new Error(`Rights evidence not found: ${rightsSource} (pass --rights-evidence <rights.json>).`);
43
+ const into = isAbsolute(options.into) ? options.into : resolve(cwd, options.into);
44
+ const modelOut = join(into, "models", `${key}.glb`);
45
+ const rightsOut = join(into, "provenance", `${key}.rights.json`);
46
+ const metaOut = join(into, "provenance", `${key}.meta.json`);
47
+ const temp = mkdtempSync(join(tmpdir(), "aura3d-meshy-admit-"));
48
+ try {
49
+ mkdirSync(join(temp, "artifacts", "meshy"), { recursive: true });
50
+ writeFileSync(join(temp, "package.json"), JSON.stringify({ name: "aura3d-meshy-admit", private: true, type: "module" }));
51
+ const staged = join(temp, "artifacts", "meshy", key);
52
+ // Sidecar texture PNGs and raw models are redundant with the embedded GLB textures and trip the single-GLB selection.
53
+ cpSync(input, staged, {
54
+ recursive: true,
55
+ filter: (source) => !/^texture_.*\.png$/i.test(basename(source)) && !/\.raw\.glb$/i.test(basename(source))
56
+ });
57
+ copyFileSync(rightsSource, join(staged, "rights.json"));
58
+ const imported = importMeshyAsset({
59
+ projectDir: temp,
60
+ input: `artifacts/meshy/${key}`,
61
+ name: key,
62
+ rightsEvidence: `artifacts/meshy/${key}/rights.json`,
63
+ ...(options.file ? { file: options.file } : {}),
64
+ ...(options.thumbnail ? { thumbnail: options.thumbnail } : {}),
65
+ ...(options.quality ? { quality: options.quality } : {}),
66
+ ...(options.role ? { role: options.role } : {}),
67
+ ...(options.profile ? { profile: options.profile } : {})
68
+ });
69
+ const validation = validateAssets({ projectDir: temp, assetIds: [key], requireLicense: true });
70
+ const failures = [...validation.failures];
71
+ const warnings = [...validation.warnings];
72
+ if (failures.length > 0) {
73
+ return { ok: false, typedKey: key, failures, warnings, messages: [`${key}: validation failed in the isolated project; nothing was copied.`, ...imported.messages], ...(options.keepTemp ? { tempProject: temp } : {}) };
74
+ }
75
+ const publicDir = join(temp, "public", "aura-assets");
76
+ const hashed = existsSync(publicDir) ? readdirSync(publicDir).find((entry) => entry.startsWith(`${key}.`) && entry.endsWith(".glb")) : undefined;
77
+ if (!hashed)
78
+ throw new Error(`Isolated import produced no ${key}.<hash>.glb under public/aura-assets.`);
79
+ const produced = join(publicDir, hashed);
80
+ const producedHash = sha256(produced);
81
+ if (existsSync(modelOut) && sha256(modelOut) !== producedHash && options.overwrite !== true) {
82
+ throw new Error(`${modelOut} already exists with different bytes: another game/asset may be using the name "${key}". Pick a different --name or pass --overwrite.`);
83
+ }
84
+ mkdirSync(join(into, "models"), { recursive: true });
85
+ mkdirSync(join(into, "provenance"), { recursive: true });
86
+ copyFileSync(produced, modelOut);
87
+ copyFileSync(rightsSource, rightsOut);
88
+ const metaSource = join(temp, imported.metadataFile);
89
+ copyFileSync(existsSync(metaSource) ? metaSource : join(staged, "meta.json"), metaOut);
90
+ return {
91
+ ok: true,
92
+ typedKey: key,
93
+ model: modelOut,
94
+ sha256: producedHash,
95
+ bytes: readFileSync(modelOut).byteLength,
96
+ rights: rightsOut,
97
+ meta: metaOut,
98
+ failures,
99
+ warnings,
100
+ messages: [`${key}: admitted in an isolated project and copied to ${modelOut}`, ...imported.messages],
101
+ ...(options.keepTemp ? { tempProject: temp } : {})
102
+ };
103
+ }
104
+ finally {
105
+ if (options.keepTemp !== true)
106
+ rmSync(temp, { recursive: true, force: true });
107
+ }
108
+ }
109
+ export function importMeshyIsolatedUsage() {
110
+ return "aura3d assets import-meshy <download-dir> --into <game-assets-dir> --prefix <game> --name <role> [--rights-evidence rights.json] [--profile prop|environment|vehicle|humanoid] [--role prop] [--overwrite] [--keep-temp]";
111
+ }
112
+ //# sourceMappingURL=importMeshy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"importMeshy.js","sourceRoot":"","sources":["../../../../../../packages/aura3d-cli/src/commands/assets/importMeshy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Asset tooling commands: `assets merge-clips`, `meshy ledger`. (`assets optimize --file` extends the prd05 verb and
3
+ * `assets import-meshy --into` extends the built-in import in cli.ts; both reuse the modules in this folder.)
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/aura3d-cli/src/commands/assets/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAoDH,OAAO,EAAE,CAAC"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Asset tooling commands: `assets merge-clips`, `meshy ledger`. (`assets optimize --file` extends the prd05 verb and
3
+ * `assets import-meshy --into` extends the built-in import in cli.ts; both reuse the modules in this folder.)
4
+ */
5
+ import { registerCliCommand } from "../../contracts/commands.js";
6
+ import { meshyLedgerCommand } from "../meshyLedger.js";
7
+ import { mergeClipsUsage, mergeGlbClips, parseClipSpec } from "./mergeClips.js";
8
+ function flag(argv, name) {
9
+ const index = argv.indexOf(name);
10
+ const value = index >= 0 ? argv[index + 1] : undefined;
11
+ return value && !value.startsWith("--") ? value : undefined;
12
+ }
13
+ registerCliCommand({
14
+ name: "assets merge-clips",
15
+ owner: "assets-tooling",
16
+ summary: "Merge Meshy animate-task clips into one rigged GLB, by node name.",
17
+ usage: mergeClipsUsage(),
18
+ run: async (argv, io) => {
19
+ const base = flag(argv, "--base");
20
+ const out = flag(argv, "--out");
21
+ const valueFlags = new Set(["--base", "--out", "--tex"]);
22
+ const specs = argv.filter((arg, index) => !arg.startsWith("--") && !valueFlags.has(argv[index - 1] ?? ""));
23
+ if (!base || !out || specs.length === 0) {
24
+ io.stderr(`Usage: ${mergeClipsUsage()}`);
25
+ return 2;
26
+ }
27
+ const tex = flag(argv, "--tex");
28
+ const result = await mergeGlbClips({
29
+ projectDir: io.cwd,
30
+ base,
31
+ output: out,
32
+ clips: specs.map(parseClipSpec),
33
+ keepBaseAnimations: argv.includes("--keep-base-animations"),
34
+ ...(tex ? { tex: Number(tex) } : {})
35
+ });
36
+ if (argv.includes("--json"))
37
+ io.stdout(JSON.stringify(result, null, 2));
38
+ else {
39
+ for (const clip of result.clips)
40
+ io.stdout(`${clip.name}: ${clip.channels}/${clip.sourceChannels} channels (${clip.missingNodes} unmatched), ${clip.duration.toFixed(2)}s`);
41
+ io.stdout(`wrote ${result.output} (${result.bytes} bytes), animations: ${result.animations.join(", ")}`);
42
+ }
43
+ return 0;
44
+ }
45
+ });
46
+ registerCliCommand({
47
+ name: "meshy ledger",
48
+ owner: "assets-tooling",
49
+ summary: "Credit ledger for paid Meshy generation: per-game caps, a global cap, safe settlement.",
50
+ usage: "aura3d meshy ledger status|reserve|settle|reconcile|list [--ledger path] [--global-cap N] [--game tag] [--op op] [--cap N] [--est N] [--rid id] [--status s] [--exit-code N] [--task-id id] [--task-status s] [--actual N] [--note text]",
51
+ run: (argv, io) => meshyLedgerCommand(argv, io)
52
+ });
53
+ export {};
54
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/aura3d-cli/src/commands/assets/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * `aura3d assets merge-clips --base rigged.glb --out hero.glb run=animation_run.glb idle=animation_idle.glb ...`
3
+ *
4
+ * Meshy rigging returns one rigged GLB, and every `animate` task returns a separate GLB that carries one clip on the
5
+ * same skeleton. This copies each source clip onto the base rig by node name and writes ONE GLB with every named clip,
6
+ * ready for AnimationController / cloneSkinned. Source clips that match no node of the base rig are rejected loudly
7
+ * instead of producing a silent T-pose.
8
+ */
9
+ import { type GltfToolkit } from "./gltfToolkit.js";
10
+ export interface MergeClipInput {
11
+ /** Clip name written to the output GLB (and used by the game: run, idle, jump...). */
12
+ readonly name: string;
13
+ /** A GLB file, or a Meshy download directory containing animation_glb.glb. */
14
+ readonly file: string;
15
+ }
16
+ export interface MergeClipsOptions {
17
+ /** Rigged GLB, or a Meshy rig download directory containing rigged_character_glb.glb. */
18
+ readonly base: string;
19
+ readonly output: string;
20
+ readonly clips: readonly MergeClipInput[];
21
+ readonly projectDir?: string;
22
+ /** Keep the rest-pose clips the rig task shipped with (default drops them unless a clip reuses the name). */
23
+ readonly keepBaseAnimations?: boolean;
24
+ /** Texture size cap for the written file (default 1024). */
25
+ readonly tex?: number;
26
+ readonly toolkit?: GltfToolkit;
27
+ }
28
+ export interface MergedClipReport {
29
+ readonly name: string;
30
+ readonly channels: number;
31
+ readonly sourceChannels: number;
32
+ readonly missingNodes: number;
33
+ readonly duration: number;
34
+ }
35
+ export interface MergeClipsResult {
36
+ readonly output: string;
37
+ readonly bytes: number;
38
+ readonly clips: readonly MergedClipReport[];
39
+ readonly animations: readonly string[];
40
+ }
41
+ export declare function parseClipSpec(spec: string): MergeClipInput;
42
+ export declare function mergeGlbClips(options: MergeClipsOptions): Promise<MergeClipsResult>;
43
+ export declare function mergeClipsUsage(): string;
44
+ //# sourceMappingURL=mergeClips.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeClips.d.ts","sourceRoot":"","sources":["../../../../../../packages/aura3d-cli/src/commands/assets/mergeClips.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAiC,KAAK,WAAW,EAAc,MAAM,kBAAkB,CAAC;AAE/F,MAAM,WAAW,cAAc;IAC7B,sFAAsF;IACtF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,8EAA8E;IAC9E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,yFAAyF;IACzF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,SAAS,cAAc,EAAE,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,6GAA6G;IAC7G,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IACtC,4DAA4D;IAC5D,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC;CAChC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC5C,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAM1D;AAaD,wBAAsB,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAoEzF;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC"}