@lovelace_lol/embody 0.0.3 → 0.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.
@@ -275,11 +275,23 @@ export function passes_marker_camera_angle_gate(marker_angle?: number | null, cu
275
275
  */
276
276
  export function resolve_auto_closeup_angle(horizontal_offset: number, focus_size: Float32Array, model_size: Float32Array): number | undefined;
277
277
 
278
+ /**
279
+ * Merge an embedded preset with sparse overrides, then return the resolved
280
+ * routing/metadata view for host adapters.
281
+ */
282
+ export function resolve_embedded_profile_view(preset_id: string, override_json: string): string;
283
+
278
284
  /**
279
285
  * Direction the camera should approach from when focusing a region.
280
286
  */
281
287
  export function resolve_focus_camera_direction(model_quat: Float32Array, effective_angle: number, has_explicit_angle: boolean, world_angle_space: boolean): Float32Array;
282
288
 
289
+ /**
290
+ * Resolve profile routing/metadata answers that hosts need without making
291
+ * hosts duplicate profile semantics in JavaScript.
292
+ */
293
+ export function resolve_profile_view(profile_json: string): string;
294
+
283
295
  /**
284
296
  * Clip a marker leader line (clip-space start/end, `[x, y, z, w]` each) to a
285
297
  * safe viewport rectangle. Returns `[visible, lineScale]` where `lineScale`
@@ -402,6 +414,18 @@ export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembl
402
414
 
403
415
  export interface InitOutput {
404
416
  readonly memory: WebAssembly.Memory;
417
+ readonly build_hair_gravity_curves: (a: number, b: number) => [number, number, number, number];
418
+ readonly build_hair_idle_curves: (a: number, b: number, c: number) => [number, number, number, number];
419
+ readonly build_hair_impulse_curves: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
420
+ readonly compile_clip: (a: number, b: number) => [number, number, number, number];
421
+ readonly compile_clip_curves: (a: number, b: number) => [number, number, number, number];
422
+ readonly get_preset_json: (a: number, b: number) => [number, number, number, number];
423
+ readonly has_preset: (a: number, b: number) => number;
424
+ readonly list_presets: () => [number, number];
425
+ readonly merge_embedded_preset: (a: number, b: number, c: number, d: number) => [number, number, number, number];
426
+ readonly merge_preset_profile: (a: number, b: number, c: number, d: number) => [number, number, number, number];
427
+ readonly resolve_embedded_profile_view: (a: number, b: number, c: number, d: number) => [number, number, number, number];
428
+ readonly resolve_profile_view: (a: number, b: number) => [number, number, number, number];
405
429
  readonly __wbg_runtimecore_free: (a: number, b: number) => void;
406
430
  readonly runtimecore_active_transition_count: (a: number) => number;
407
431
  readonly runtimecore_au_morph_binding_stride: () => number;
@@ -489,16 +513,6 @@ export interface InitOutput {
489
513
  readonly template_skeleton_fit_solution_stride: () => number;
490
514
  readonly validate_generated_template_fit_metadata: (a: number, b: number, c: number, d: number, e: number, f: number) => number;
491
515
  readonly marker_visibility_factors_stride: () => number;
492
- readonly build_hair_gravity_curves: (a: number, b: number) => [number, number, number, number];
493
- readonly build_hair_idle_curves: (a: number, b: number, c: number) => [number, number, number, number];
494
- readonly build_hair_impulse_curves: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
495
- readonly compile_clip: (a: number, b: number) => [number, number, number, number];
496
- readonly compile_clip_curves: (a: number, b: number) => [number, number, number, number];
497
- readonly get_preset_json: (a: number, b: number) => [number, number, number, number];
498
- readonly has_preset: (a: number, b: number) => number;
499
- readonly list_presets: () => [number, number];
500
- readonly merge_embedded_preset: (a: number, b: number, c: number, d: number) => [number, number, number, number];
501
- readonly merge_preset_profile: (a: number, b: number, c: number, d: number) => [number, number, number, number];
502
516
  readonly __wbindgen_externrefs: WebAssembly.Table;
503
517
  readonly __wbindgen_malloc: (a: number, b: number) => number;
504
518
  readonly __wbindgen_free: (a: number, b: number, c: number) => void;
@@ -999,6 +999,36 @@ export function resolve_auto_closeup_angle(horizontal_offset, focus_size, model_
999
999
  return ret === Number.MAX_SAFE_INTEGER ? undefined : ret;
1000
1000
  }
1001
1001
 
1002
+ /**
1003
+ * Merge an embedded preset with sparse overrides, then return the resolved
1004
+ * routing/metadata view for host adapters.
1005
+ * @param {string} preset_id
1006
+ * @param {string} override_json
1007
+ * @returns {string}
1008
+ */
1009
+ export function resolve_embedded_profile_view(preset_id, override_json) {
1010
+ let deferred4_0;
1011
+ let deferred4_1;
1012
+ try {
1013
+ const ptr0 = passStringToWasm0(preset_id, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1014
+ const len0 = WASM_VECTOR_LEN;
1015
+ const ptr1 = passStringToWasm0(override_json, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1016
+ const len1 = WASM_VECTOR_LEN;
1017
+ const ret = wasm.resolve_embedded_profile_view(ptr0, len0, ptr1, len1);
1018
+ var ptr3 = ret[0];
1019
+ var len3 = ret[1];
1020
+ if (ret[3]) {
1021
+ ptr3 = 0; len3 = 0;
1022
+ throw takeFromExternrefTable0(ret[2]);
1023
+ }
1024
+ deferred4_0 = ptr3;
1025
+ deferred4_1 = len3;
1026
+ return getStringFromWasm0(ptr3, len3);
1027
+ } finally {
1028
+ wasm.__wbindgen_free(deferred4_0, deferred4_1, 1);
1029
+ }
1030
+ }
1031
+
1002
1032
  /**
1003
1033
  * Direction the camera should approach from when focusing a region.
1004
1034
  * @param {Float32Array} model_quat
@@ -1016,6 +1046,33 @@ export function resolve_focus_camera_direction(model_quat, effective_angle, has_
1016
1046
  return v2;
1017
1047
  }
1018
1048
 
1049
+ /**
1050
+ * Resolve profile routing/metadata answers that hosts need without making
1051
+ * hosts duplicate profile semantics in JavaScript.
1052
+ * @param {string} profile_json
1053
+ * @returns {string}
1054
+ */
1055
+ export function resolve_profile_view(profile_json) {
1056
+ let deferred3_0;
1057
+ let deferred3_1;
1058
+ try {
1059
+ const ptr0 = passStringToWasm0(profile_json, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1060
+ const len0 = WASM_VECTOR_LEN;
1061
+ const ret = wasm.resolve_profile_view(ptr0, len0);
1062
+ var ptr2 = ret[0];
1063
+ var len2 = ret[1];
1064
+ if (ret[3]) {
1065
+ ptr2 = 0; len2 = 0;
1066
+ throw takeFromExternrefTable0(ret[2]);
1067
+ }
1068
+ deferred3_0 = ptr2;
1069
+ deferred3_1 = len2;
1070
+ return getStringFromWasm0(ptr2, len2);
1071
+ } finally {
1072
+ wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
1073
+ }
1074
+ }
1075
+
1019
1076
  /**
1020
1077
  * Clip a marker leader line (clip-space start/end, `[x, y, z, w]` each) to a
1021
1078
  * safe viewport rectangle. Returns `[visible, lineScale]` where `lineScale`
Binary file
@@ -1,6 +1,18 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
3
  export const memory: WebAssembly.Memory;
4
+ export const build_hair_gravity_curves: (a: number, b: number) => [number, number, number, number];
5
+ export const build_hair_idle_curves: (a: number, b: number, c: number) => [number, number, number, number];
6
+ export const build_hair_impulse_curves: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
7
+ export const compile_clip: (a: number, b: number) => [number, number, number, number];
8
+ export const compile_clip_curves: (a: number, b: number) => [number, number, number, number];
9
+ export const get_preset_json: (a: number, b: number) => [number, number, number, number];
10
+ export const has_preset: (a: number, b: number) => number;
11
+ export const list_presets: () => [number, number];
12
+ export const merge_embedded_preset: (a: number, b: number, c: number, d: number) => [number, number, number, number];
13
+ export const merge_preset_profile: (a: number, b: number, c: number, d: number) => [number, number, number, number];
14
+ export const resolve_embedded_profile_view: (a: number, b: number, c: number, d: number) => [number, number, number, number];
15
+ export const resolve_profile_view: (a: number, b: number) => [number, number, number, number];
4
16
  export const __wbg_runtimecore_free: (a: number, b: number) => void;
5
17
  export const runtimecore_active_transition_count: (a: number) => number;
6
18
  export const runtimecore_au_morph_binding_stride: () => number;
@@ -88,16 +100,6 @@ export const solve_template_skeleton_fit: (a: number, b: number, c: number, d: n
88
100
  export const template_skeleton_fit_solution_stride: () => number;
89
101
  export const validate_generated_template_fit_metadata: (a: number, b: number, c: number, d: number, e: number, f: number) => number;
90
102
  export const marker_visibility_factors_stride: () => number;
91
- export const build_hair_gravity_curves: (a: number, b: number) => [number, number, number, number];
92
- export const build_hair_idle_curves: (a: number, b: number, c: number) => [number, number, number, number];
93
- export const build_hair_impulse_curves: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
94
- export const compile_clip: (a: number, b: number) => [number, number, number, number];
95
- export const compile_clip_curves: (a: number, b: number) => [number, number, number, number];
96
- export const get_preset_json: (a: number, b: number) => [number, number, number, number];
97
- export const has_preset: (a: number, b: number) => number;
98
- export const list_presets: () => [number, number];
99
- export const merge_embedded_preset: (a: number, b: number, c: number, d: number) => [number, number, number, number];
100
- export const merge_preset_profile: (a: number, b: number, c: number, d: number) => [number, number, number, number];
101
103
  export const __wbindgen_externrefs: WebAssembly.Table;
102
104
  export const __wbindgen_malloc: (a: number, b: number) => number;
103
105
  export const __wbindgen_free: (a: number, b: number, c: number) => void;
@@ -86,6 +86,8 @@ export interface EmbodyCoreWasmModule {
86
86
  compose_template_skeleton_fit_transform(fitScale: number, fitTranslation: Float32Array, manualScale: number, manualTranslation: Float32Array): Float32Array;
87
87
  default_hair_physics_config_values(): Float32Array;
88
88
  merge_preset_profile(baseJson: string, extensionJson: string): string;
89
+ resolve_profile_view(profileJson: string): string;
90
+ resolve_embedded_profile_view(presetId: string, overrideJson: string): string;
89
91
  list_presets(): string[];
90
92
  has_preset(presetId: string): boolean;
91
93
  get_preset_json(presetId: string): string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lovelace_lol/embody",
3
- "version": "0.0.3",
3
+ "version": "0.0.5",
4
4
  "description": "Renderer-agnostic character animation runtime for facial AUs, visemes, and bone-driven motion",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",