mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-09-03 04:38:33 +00:00
refactor(core): swap studio-api read path from recast to acorn parser (T6e) (#1392)
* refactor(core): swap studio-api read path from recast to acorn parser (T6e)
* fix(core,sdk): code-review findings — 5 correctness bugs + 2 cleanup
- gsapParserAcorn: top-level variable targets now resolved via program-scope
null-key fallback in lookupBindingFromAncestors (const el = querySelector...)
- gsapParserAcorn: fromTo guard requires args.length >= 3, preventing undefined
args[2]/args[3] access when fewer args supplied
- gsapWriterAcorn: remove fuzzing fallback in removeAnimationFromScript that
silently deleted the wrong animation (from→to ID conversion)
- gsapWriterAcorn: valueToCode guards NaN → "0" to avoid broken tween props;
safeKey regex aligned to ASCII-only (matching gsapSerialize)
- mutate: handleSetGsapTween now includes stagger in extras (was in addGsapTween
but missing from setGsapTween)
- apply-patches: script case now mirrors stylesheet — op=remove calls
setGsapScript("") instead of silently ignoring the patch
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* docs(core): add trust-model header to T6d parity suite
Documents the recast-baseline trust relationship and clarifies that
motionPath parity tests live in the Phase 3b commit (PR #1379) since
the acorn motionPath parser is also added there.
Addresses #1370 R1-N1 (Rames).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
6dcbb5530e
commit
b8fa4b5dd2
@@ -207,7 +207,9 @@ function applyOne(parsed: ParsedDocument, patch: JsonPatchOp, p: ParsedPath): vo
|
||||
}
|
||||
|
||||
case "script": {
|
||||
if (patch.op !== "remove") {
|
||||
if (patch.op === "remove") {
|
||||
setGsapScript(parsed.document, "");
|
||||
} else {
|
||||
setGsapScript(parsed.document, String(patch.value ?? ""));
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -546,6 +546,7 @@ function handleSetGsapTween(
|
||||
const extras: Record<string, unknown> = {};
|
||||
if (properties.repeat !== undefined) extras.repeat = properties.repeat;
|
||||
if (properties.yoyo !== undefined) extras.yoyo = properties.yoyo;
|
||||
if (properties.stagger !== undefined) extras.stagger = properties.stagger;
|
||||
if (Object.keys(extras).length > 0) updates.extras = extras;
|
||||
|
||||
const newScript = updateAnimationInScript(script, animationId, updates);
|
||||
|
||||
Reference in New Issue
Block a user