@hyperframes/core 0.6.106 → 0.6.108

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 (34) hide show
  1. package/dist/colorGrading.d.ts +45 -0
  2. package/dist/colorGrading.d.ts.map +1 -0
  3. package/dist/colorGrading.js +249 -0
  4. package/dist/colorGrading.js.map +1 -0
  5. package/dist/colorLuts.d.ts +23 -0
  6. package/dist/colorLuts.d.ts.map +1 -0
  7. package/dist/colorLuts.js +172 -0
  8. package/dist/colorLuts.js.map +1 -0
  9. package/dist/compiler/htmlBundler.d.ts.map +1 -1
  10. package/dist/compiler/htmlBundler.js +40 -0
  11. package/dist/compiler/htmlBundler.js.map +1 -1
  12. package/dist/generated/runtime-inline.js +1 -1
  13. package/dist/generated/runtime-inline.js.map +1 -1
  14. package/dist/hyperframe.manifest.json +1 -1
  15. package/dist/hyperframe.runtime.iife.js +25 -23
  16. package/dist/hyperframe.runtime.mjs +25 -23
  17. package/dist/index.d.ts +1 -0
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +1 -0
  20. package/dist/index.js.map +1 -1
  21. package/dist/inline-scripts/runtimeContract.d.ts +1 -1
  22. package/dist/inline-scripts/runtimeContract.d.ts.map +1 -1
  23. package/dist/inline-scripts/runtimeContract.js +2 -0
  24. package/dist/inline-scripts/runtimeContract.js.map +1 -1
  25. package/dist/parsers/gsapWriterAcorn.d.ts +2 -2
  26. package/dist/parsers/gsapWriterAcorn.d.ts.map +1 -1
  27. package/dist/parsers/gsapWriterAcorn.js +345 -34
  28. package/dist/parsers/gsapWriterAcorn.js.map +1 -1
  29. package/dist/studio-api/helpers/mime.d.ts.map +1 -1
  30. package/dist/studio-api/helpers/mime.js +1 -0
  31. package/dist/studio-api/helpers/mime.js.map +1 -1
  32. package/dist/studio-api/routes/preview.js +1 -1
  33. package/dist/studio-api/routes/preview.js.map +1 -1
  34. package/package.json +9 -1
package/dist/index.d.ts CHANGED
@@ -16,6 +16,7 @@ export { rewriteAssetPaths, rewriteAssetPath, rewriteCssAssetUrls, } from "./com
16
16
  export { CSS_URL_RE, isNonRelativeUrl, isPathInside } from "./compiler/assetPaths";
17
17
  export { decodeUrlPathVariants } from "./utils/urlPath";
18
18
  export { parseAnimatedGifMetadata, type AnimatedGifMetadata } from "./media/gif";
19
+ export { HF_COLOR_GRADING_ATTR, HF_COLOR_GRADING_ADJUST_KEYS, HF_COLOR_GRADING_COLOR_SPACE, HF_COLOR_GRADING_PRESETS, isHfColorGradingActive, normalizeHfColorGrading, normalizeHfColorGradingWithVariables, resolveHfColorGradingVariables, serializeHfColorGrading, type HfColorGrading, type HfColorGradingAdjust, type HfColorGradingAdjustKey, type HfColorGradingLutRef, type HfColorGradingPreset, type HfColorGradingPresetId, type HfColorGradingTarget, type HfColorGradingVariableMap, type NormalizedHfColorGrading, } from "./colorGrading";
19
20
  export { HYPERFRAME_RUNTIME_ARTIFACTS, HYPERFRAME_RUNTIME_CONTRACT, loadHyperframeRuntimeSource, type HyperframeRuntimeContract, } from "./inline-scripts/hyperframe";
20
21
  export { HYPERFRAME_RUNTIME_GLOBALS, HYPERFRAME_BRIDGE_SOURCES, HYPERFRAME_CONTROL_ACTIONS, type HyperframeControlAction, } from "./inline-scripts/runtimeContract";
21
22
  export { getHyperframeRuntimeScript } from "./generated/runtime-inline";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,aAAa,EACb,WAAW,EACX,KAAK,EACL,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,0BAA0B,EAC1B,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,GAAG,EACH,QAAQ,EACR,cAAc,EACd,SAAS,EACT,cAAc,EACd,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,QAAQ,EACR,kBAAkB,EAClB,gBAAgB,EAChB,SAAS,EACT,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,aAAa,EACb,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,YAAY,GACb,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,uBAAuB,EACvB,QAAQ,EACR,mBAAmB,EACnB,KAAK,EACL,WAAW,EACX,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,0BAA0B,EAC1B,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EACL,QAAQ,EACR,WAAW,EACX,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAM/B,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErF,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AAEjC,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE5E,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAG9B,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAGlC,YAAY,EACV,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,wBAAwB,GACzB,MAAM,2BAA2B,CAAC;AAGnC,YAAY,EACV,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGjF,OAAO,EACL,4BAA4B,EAC5B,2BAA2B,EAC3B,2BAA2B,EAC3B,KAAK,yBAAyB,GAC/B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC1B,KAAK,uBAAuB,GAC7B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EACL,6BAA6B,EAC7B,KAAK,8BAA8B,GACpC,MAAM,4CAA4C,CAAC;AACpD,OAAO,EACL,6BAA6B,EAC7B,qBAAqB,EACrB,mBAAmB,EACnB,KAAK,wBAAwB,GAC9B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAC9D,YAAY,EACV,mBAAmB,EACnB,2BAA2B,EAC3B,2BAA2B,GAC5B,MAAM,4BAA4B,CAAC;AAGpC,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,YAAY,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAGzD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,OAAO,EACL,iBAAiB,EACjB,6BAA6B,EAC7B,KAAK,uBAAuB,GAC7B,MAAM,gCAAgC,CAAC;AAGxC,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,sBAAsB,EACtB,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,SAAS,EACT,aAAa,EACb,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,UAAU,EACV,UAAU,EACV,cAAc,EACd,aAAa,EACb,WAAW,EACX,eAAe,GAChB,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -11,6 +11,7 @@ export { rewriteAssetPaths, rewriteAssetPath, rewriteCssAssetUrls, } from "./com
11
11
  export { CSS_URL_RE, isNonRelativeUrl, isPathInside } from "./compiler/assetPaths";
12
12
  export { decodeUrlPathVariants } from "./utils/urlPath";
13
13
  export { parseAnimatedGifMetadata } from "./media/gif";
14
+ export { HF_COLOR_GRADING_ATTR, HF_COLOR_GRADING_ADJUST_KEYS, HF_COLOR_GRADING_COLOR_SPACE, HF_COLOR_GRADING_PRESETS, isHfColorGradingActive, normalizeHfColorGrading, normalizeHfColorGradingWithVariables, resolveHfColorGradingVariables, serializeHfColorGrading, } from "./colorGrading";
14
15
  // Inline scripts
15
16
  export { HYPERFRAME_RUNTIME_ARTIFACTS, HYPERFRAME_RUNTIME_CONTRACT, loadHyperframeRuntimeSource, } from "./inline-scripts/hyperframe";
16
17
  export { HYPERFRAME_RUNTIME_GLOBALS, HYPERFRAME_BRIDGE_SOURCES, HYPERFRAME_CONTROL_ACTIONS, } from "./inline-scripts/runtimeContract";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAuCA,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,uBAAuB,EACvB,QAAQ,EACR,mBAAmB,EACnB,KAAK,EACL,WAAW,EACX,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,0BAA0B,EAC1B,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,cAAc,CAAC;AAEtB,YAAY;AACZ,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EACL,QAAQ,EACR,WAAW,EACX,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAQ/B,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAK9B,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAUlC,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,wBAAwB,GACzB,MAAM,2BAA2B,CAAC;AASnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAA4B,MAAM,aAAa,CAAC;AAEjF,iBAAiB;AACjB,OAAO,EACL,4BAA4B,EAC5B,2BAA2B,EAC3B,2BAA2B,GAE5B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,GAE3B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EACL,6BAA6B,GAE9B,MAAM,4CAA4C,CAAC;AACpD,OAAO,EACL,6BAA6B,EAC7B,qBAAqB,EACrB,mBAAmB,GAEpB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAU9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,mBAAmB;AACnB,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGlD,qCAAqC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,2CAA2C;AAC3C,OAAO,EACL,iBAAiB,EACjB,6BAA6B,GAE9B,MAAM,gCAAgC,CAAC;AAiBxC,OAAO,EACL,UAAU,EACV,UAAU,EACV,cAAc,EACd,aAAa,EACb,WAAW,EACX,eAAe,GAChB,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAuCA,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,uBAAuB,EACvB,QAAQ,EACR,mBAAmB,EACnB,KAAK,EACL,WAAW,EACX,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,0BAA0B,EAC1B,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,cAAc,CAAC;AAEtB,YAAY;AACZ,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EACL,QAAQ,EACR,WAAW,EACX,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAQ/B,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAK9B,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAUlC,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,wBAAwB,GACzB,MAAM,2BAA2B,CAAC;AASnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAA4B,MAAM,aAAa,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,4BAA4B,EAC5B,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,oCAAoC,EACpC,8BAA8B,EAC9B,uBAAuB,GAUxB,MAAM,gBAAgB,CAAC;AAExB,iBAAiB;AACjB,OAAO,EACL,4BAA4B,EAC5B,2BAA2B,EAC3B,2BAA2B,GAE5B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,GAE3B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EACL,6BAA6B,GAE9B,MAAM,4CAA4C,CAAC;AACpD,OAAO,EACL,6BAA6B,EAC7B,qBAAqB,EACrB,mBAAmB,GAEpB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAU9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,mBAAmB;AACnB,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGlD,qCAAqC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,2CAA2C;AAC3C,OAAO,EACL,iBAAiB,EACjB,6BAA6B,GAE9B,MAAM,gCAAgC,CAAC;AAiBxC,OAAO,EACL,UAAU,EACV,UAAU,EACV,cAAc,EACd,aAAa,EACb,WAAW,EACX,eAAe,GAChB,MAAM,qBAAqB,CAAC"}
@@ -9,6 +9,6 @@ export declare const HYPERFRAME_BRIDGE_SOURCES: {
9
9
  readonly parent: "hf-parent";
10
10
  readonly preview: "hf-preview";
11
11
  };
12
- export declare const HYPERFRAME_CONTROL_ACTIONS: readonly ["play", "pause", "seek", "set-muted", "set-playback-rate", "enable-pick-mode", "disable-pick-mode"];
12
+ export declare const HYPERFRAME_CONTROL_ACTIONS: readonly ["play", "pause", "seek", "set-muted", "set-playback-rate", "set-color-grading", "set-color-grading-compare", "enable-pick-mode", "disable-pick-mode"];
13
13
  export type HyperframeControlAction = (typeof HYPERFRAME_CONTROL_ACTIONS)[number];
14
14
  //# sourceMappingURL=runtimeContract.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtimeContract.d.ts","sourceRoot":"","sources":["../../src/inline-scripts/runtimeContract.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B;;;;;;CAM7B,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;CAG5B,CAAC;AAEX,eAAO,MAAM,0BAA0B,+GAQ7B,CAAC;AAEX,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"runtimeContract.d.ts","sourceRoot":"","sources":["../../src/inline-scripts/runtimeContract.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B;;;;;;CAM7B,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;CAG5B,CAAC;AAEX,eAAO,MAAM,0BAA0B,iKAU7B,CAAC;AAEX,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -15,6 +15,8 @@ export const HYPERFRAME_CONTROL_ACTIONS = [
15
15
  "seek",
16
16
  "set-muted",
17
17
  "set-playback-rate",
18
+ "set-color-grading",
19
+ "set-color-grading-compare",
18
20
  "enable-pick-mode",
19
21
  "disable-pick-mode",
20
22
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"runtimeContract.js","sourceRoot":"","sources":["../../src/inline-scripts/runtimeContract.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,MAAM,EAAE,UAAU;IAClB,WAAW,EAAE,eAAe;IAC5B,WAAW,EAAE,eAAe;IAC5B,SAAS,EAAE,aAAa;IACxB,YAAY,EAAE,gBAAgB;CACtB,CAAC;AAEX,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,MAAM,EAAE,WAAW;IACnB,OAAO,EAAE,YAAY;CACb,CAAC;AAEX,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,MAAM;IACN,OAAO;IACP,MAAM;IACN,WAAW;IACX,mBAAmB;IACnB,kBAAkB;IAClB,mBAAmB;CACX,CAAC"}
1
+ {"version":3,"file":"runtimeContract.js","sourceRoot":"","sources":["../../src/inline-scripts/runtimeContract.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,MAAM,EAAE,UAAU;IAClB,WAAW,EAAE,eAAe;IAC5B,WAAW,EAAE,eAAe;IAC5B,SAAS,EAAE,aAAa;IACxB,YAAY,EAAE,gBAAgB;CACtB,CAAC;AAEX,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,MAAM,EAAE,WAAW;IACnB,OAAO,EAAE,YAAY;CACb,CAAC;AAEX,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,MAAM;IACN,OAAO;IACP,MAAM;IACN,WAAW;IACX,mBAAmB;IACnB,mBAAmB;IACnB,2BAA2B;IAC3B,kBAAkB;IAClB,mBAAmB;CACX,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { GsapAnimation } from "./gsapSerialize.js";
1
+ import { type GsapAnimation } from "./gsapSerialize.js";
2
2
  export declare function updateAnimationInScript(script: string, animationId: string, updates: Partial<GsapAnimation>): string;
3
3
  export declare function addAnimationToScript(script: string, animation: Omit<GsapAnimation, "id">): {
4
4
  script: string;
@@ -6,7 +6,7 @@ export declare function addAnimationToScript(script: string, animation: Omit<Gsa
6
6
  };
7
7
  export declare function removeAnimationFromScript(script: string, animationId: string): string;
8
8
  export declare function updateKeyframeInScript(script: string, animationId: string, percentage: number, properties: Record<string, number | string>, ease?: string): string;
9
- export declare function addKeyframeToScript(script: string, animationId: string, percentage: number, properties: Record<string, number | string>, ease?: string): string;
9
+ export declare function addKeyframeToScript(script: string, animationId: string, percentage: number, properties: Record<string, number | string>, ease?: string, backfillDefaults?: Record<string, number | string>): string;
10
10
  export declare function removeKeyframeFromScript(script: string, animationId: string, percentage: number): string;
11
11
  export declare function addLabelToScript(script: string, name: string, position: number): string;
12
12
  export declare function removeLabelFromScript(script: string, name: string): string;
@@ -1 +1 @@
1
- {"version":3,"file":"gsapWriterAcorn.d.ts","sourceRoot":"","sources":["../../src/parsers/gsapWriterAcorn.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AA+JxD,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,GAC9B,MAAM,CA+CR;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,GACnC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAehC;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAuBrF;AAiCD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EAC3C,IAAI,CAAC,EAAE,MAAM,GACZ,MAAM,CAmBR;AAGD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EAC3C,IAAI,CAAC,EAAE,MAAM,GACZ,MAAM,CAsCR;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,GACjB,MAAM,CAiBR;AAID,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAWvF;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CA+B1E"}
1
+ {"version":3,"file":"gsapWriterAcorn.d.ts","sourceRoot":"","sources":["../../src/parsers/gsapWriterAcorn.ts"],"names":[],"mappings":"AASA,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAmKnF,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,GAC9B,MAAM,CA+CR;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,GACnC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAehC;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAuBrF;AA0PD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EAC3C,IAAI,CAAC,EAAE,MAAM,GACZ,MAAM,CAiBR;AA8GD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EAC3C,IAAI,CAAC,EAAE,MAAM,EACb,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GACjD,MAAM,CAgCR;AA2BD,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,GACjB,MAAM,CAiBR;AAID,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAWvF;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CA+B1E"}
@@ -7,9 +7,14 @@
7
7
  * pretty-printer churn. Consumes ParsedGsapAcornForWrite from gsapParserAcorn.ts.
8
8
  */
9
9
  import MagicString from "magic-string";
10
+ import { serializeValue, safeJsKey } from "./gsapSerialize.js";
10
11
  import { parseGsapScriptAcornForWrite, } from "./gsapParserAcorn.js";
11
12
  import * as acornWalk from "acorn-walk";
12
13
  // ── Code generation helpers ──────────────────────────────────────────────────
14
+ // Local serializer for the tween-statement path, which may carry boolean/object
15
+ // extras (stagger config). serializeValue stringifies objects to "[object
16
+ // Object]", so keep this richer JSON fallback for that path. Keyframe values are
17
+ // always number|string and use the shared serializeValue (recast parity).
13
18
  function valueToCode(value) {
14
19
  if (typeof value === "string" && value.startsWith("__raw:"))
15
20
  return value.slice(6);
@@ -238,18 +243,218 @@ export function removeAnimationFromScript(script, animationId) {
238
243
  }
239
244
  return ms.toString();
240
245
  }
246
+ // ── Flat-tween → keyframes conversion ──────────────────────────────────────────
247
+ //
248
+ // Mirror recast's convertToKeyframesInScript: when the first keyframe op lands
249
+ // on a flat to()/from()/fromTo() tween, rewrite its vars object to
250
+ // `{ keyframes: { "0%": {from}, "100%": {to} }, <preserved non-editable keys>,
251
+ // ease: "none"? }` and convert from()/fromTo() to to(). We rebuild the whole
252
+ // vars ObjectExpression in one ms.overwrite (single-edit-per-node), so the next
253
+ // keyframe-add re-parses cleanly.
254
+ // Identity value for an editable transform/style prop (recast's CSS_IDENTITY).
255
+ const CSS_IDENTITY = {
256
+ opacity: 1,
257
+ autoAlpha: 1,
258
+ scale: 1,
259
+ scaleX: 1,
260
+ scaleY: 1,
261
+ };
262
+ function cssIdentityValue(prop) {
263
+ return CSS_IDENTITY[prop] ?? 0;
264
+ }
265
+ // Keys NOT in the editable set — preserved verbatim on the converted vars object
266
+ // (matches the parser's classification: builtin/dropped/extras keys).
267
+ const NON_EDITABLE_VAR_KEYS = new Set([
268
+ "duration",
269
+ "delay",
270
+ "onComplete",
271
+ "onStart",
272
+ "onUpdate",
273
+ "onRepeat",
274
+ "stagger",
275
+ "yoyo",
276
+ "repeat",
277
+ "repeatDelay",
278
+ "snap",
279
+ "overwrite",
280
+ "immediateRender",
281
+ ]);
282
+ /** The CSS-identity counterpart of a props record (numbers → identity value). */
283
+ function identityProps(properties) {
284
+ const identity = {};
285
+ for (const [k, v] of Object.entries(properties)) {
286
+ if (v != null)
287
+ identity[k] = typeof v === "number" ? cssIdentityValue(k) : v;
288
+ }
289
+ return identity;
290
+ }
291
+ /** Resolve the 0%/100% endpoint records for a tween being converted. */
292
+ function conversionEndpoints(animation) {
293
+ if (animation.method === "from") {
294
+ return { fromProps: { ...animation.properties }, toProps: identityProps(animation.properties) };
295
+ }
296
+ if (animation.method === "fromTo") {
297
+ return {
298
+ fromProps: { ...(animation.fromProperties ?? {}) },
299
+ toProps: { ...animation.properties },
300
+ };
301
+ }
302
+ // to(): 0% is the CSS identity state, 100% is the authored props.
303
+ return { fromProps: identityProps(animation.properties), toProps: { ...animation.properties } };
304
+ }
305
+ /** Collect preserved (non-editable) `key: value` entries from the original vars node. */
306
+ function preservedVarsEntries(varsNode, source) {
307
+ const entries = [];
308
+ if (varsNode?.type !== "ObjectExpression")
309
+ return entries;
310
+ for (const prop of varsNode.properties ?? []) {
311
+ if (!isObjectProperty(prop))
312
+ continue;
313
+ const key = propKeyName(prop);
314
+ if (typeof key !== "string" || !NON_EDITABLE_VAR_KEYS.has(key))
315
+ continue;
316
+ entries.push(`${safeKey(key)}: ${source.slice(prop.value.start, prop.value.end)}`);
317
+ }
318
+ return entries;
319
+ }
320
+ /** Build the rebuilt vars-object code for a converted flat tween. */
321
+ function buildConvertedVarsCode(animation, varsNode, source) {
322
+ const { fromProps, toProps } = conversionEndpoints(animation);
323
+ const easeEach = animation.ease;
324
+ const easeEachEntry = easeEach ? `, easeEach: ${JSON.stringify(easeEach)}` : "";
325
+ const kfCode = `{ "0%": ${recordToCode(fromProps)}, "100%": ${recordToCode(toProps)}${easeEachEntry} }`;
326
+ const entries = [`keyframes: ${kfCode}`, ...preservedVarsEntries(varsNode, source)];
327
+ if (easeEach)
328
+ entries.push(`ease: "none"`);
329
+ return `{ ${entries.join(", ")} }`;
330
+ }
331
+ /** Rename a from()/fromTo() call to to(), dropping fromTo's leading from-vars arg. */
332
+ function convertMethodToTo(ms, animation, call, varsNode) {
333
+ if (animation.method !== "from" && animation.method !== "fromTo")
334
+ return;
335
+ const calleeProp = call.node.callee?.property;
336
+ if (calleeProp)
337
+ ms.overwrite(calleeProp.start, calleeProp.end, "to");
338
+ // Remove the from-vars arg and its trailing separator up to the to-vars arg.
339
+ if (animation.method === "fromTo" && call.fromArg)
340
+ ms.remove(call.fromArg.start, varsNode.start);
341
+ }
342
+ function convertFlatTweenToKeyframes(script, target) {
343
+ const animation = target.animation;
344
+ if (animation.keyframes || animation.method === "set")
345
+ return script;
346
+ const call = target.call;
347
+ const varsNode = call.varsArg;
348
+ if (varsNode?.type !== "ObjectExpression")
349
+ return script;
350
+ const ms = new MagicString(script);
351
+ ms.overwrite(varsNode.start, varsNode.end, buildConvertedVarsCode(animation, varsNode, script));
352
+ convertMethodToTo(ms, animation, call, varsNode);
353
+ return ms.toString();
354
+ }
241
355
  // ── Keyframe write ops ────────────────────────────────────────────────────────
356
+ //
357
+ // Design: mirror the recast writer's rebuild-the-node model. The recast writer
358
+ // mutates AST nodes in place and re-prints, so it never has an offset-overlap
359
+ // problem. Here we instead compute the FINAL property record for every keyframe
360
+ // value node that must change (the target merge, `_auto` endpoint sync, and
361
+ // backfilled siblings) against the ORIGINAL parsed AST, then emit exactly ONE
362
+ // `ms.overwrite(valueNode.start, valueNode.end, code)` per changed node (and a
363
+ // single insert for a brand-new key). No node is ever both overwritten and
364
+ // appended into, so the splices can never overlap.
242
365
  const PERCENTAGE_KEY_RE = /^(\d+(?:\.\d+)?)%$/;
366
+ // Matches recast's PCT_TOLERANCE: percentages within 2 of an existing key are
367
+ // treated as the same keyframe (merge), not a new insert.
368
+ const PCT_TOLERANCE = 2;
243
369
  function percentageFromKey(key) {
244
370
  const m = PERCENTAGE_KEY_RE.exec(key);
245
371
  return m ? Number.parseFloat(m[1] ?? "0") : Number.NaN;
246
372
  }
247
- function buildKeyframeValueCode(properties, ease) {
248
- const entries = Object.entries(properties).map(([k, v]) => `${safeKey(k)}: ${valueToCode(v)}`);
249
- if (ease)
250
- entries.push(`ease: ${JSON.stringify(ease)}`);
373
+ /** Serialize a final keyframe property record (number|string values) to code. */
374
+ function recordToCode(record) {
375
+ const entries = Object.entries(record).map(([k, v]) => `${safeJsKey(k)}: ${serializeValue(v)}`);
251
376
  return `{ ${entries.join(", ")} }`;
252
377
  }
378
+ /** Percentage-keyed property nodes of a keyframes ObjectExpression, in source order. */
379
+ function percentagePropsOf(kfNode) {
380
+ return (kfNode.properties ?? []).filter((p) => {
381
+ if (!isObjectProperty(p))
382
+ return false;
383
+ const key = propKeyName(p);
384
+ return typeof key === "string" && PERCENTAGE_KEY_RE.test(key);
385
+ });
386
+ }
387
+ const LITERAL_NODE_TYPES = new Set(["Literal", "NumericLiteral", "StringLiteral"]);
388
+ /** Read one value node: a number/string literal, a negative number, or raw source. */
389
+ // fallow-ignore-next-line complexity
390
+ function readValueNode(v, source) {
391
+ if (LITERAL_NODE_TYPES.has(v?.type) &&
392
+ (typeof v.value === "number" || typeof v.value === "string")) {
393
+ return v.value;
394
+ }
395
+ if (v?.type === "UnaryExpression" &&
396
+ v.operator === "-" &&
397
+ typeof v.argument?.value === "number") {
398
+ return -v.argument.value;
399
+ }
400
+ return `__raw:${source.slice(v.start, v.end)}`;
401
+ }
402
+ /**
403
+ * Read a keyframe value ObjectExpression into a record, mirroring the parser's
404
+ * `objectExpressionToRecord`: literals resolve to their value; anything else is
405
+ * preserved as `__raw:<source>` so serializeValue round-trips it verbatim.
406
+ * Keyframe values are literals in practice, so the raw fallback is rarely hit.
407
+ */
408
+ function valueNodeToRecord(valueNode, source) {
409
+ const record = {};
410
+ if (valueNode?.type !== "ObjectExpression")
411
+ return record;
412
+ for (const prop of valueNode.properties ?? []) {
413
+ if (!isObjectProperty(prop))
414
+ continue;
415
+ const key = propKeyName(prop);
416
+ if (typeof key !== "string")
417
+ continue;
418
+ record[key] = readValueNode(prop.value, source);
419
+ }
420
+ return record;
421
+ }
422
+ /** True when a keyframe value record carries the synthetic `_auto` marker. */
423
+ function recordHasAuto(record) {
424
+ return "_auto" in record;
425
+ }
426
+ /**
427
+ * Compute `_auto` endpoint overwrites: when the new keyframe is the immediate
428
+ * neighbor of an `_auto` 0% or 100% endpoint, that endpoint is rewritten to
429
+ * `{ ...newProps, _auto: 1 }`. Only fires for interior keyframes. Returns the
430
+ * percentage→overwrite map so the caller can fold these into the per-node final
431
+ * records (never a separate splice).
432
+ */
433
+ function autoEndpointOverwrites(kfNode, source, percentage, properties) {
434
+ const result = new Map();
435
+ if (percentage <= 0 || percentage >= 100)
436
+ return result;
437
+ const pctProps = percentagePropsOf(kfNode);
438
+ const allPcts = pctProps
439
+ .map((p) => percentageFromKey(propKeyName(p) ?? ""))
440
+ .filter((n) => !Number.isNaN(n) && n !== percentage)
441
+ .sort((a, b) => a - b);
442
+ const leftNeighbor = allPcts.filter((p) => p < percentage).pop();
443
+ const rightNeighbor = allPcts.find((p) => p > percentage);
444
+ for (const endPct of [0, 100]) {
445
+ const isNeighbor = endPct === 0 ? leftNeighbor === 0 : rightNeighbor === 100;
446
+ if (!isNeighbor)
447
+ continue;
448
+ const endProp = pctProps.find((p) => percentageFromKey(propKeyName(p) ?? "") === endPct);
449
+ if (!endProp)
450
+ continue;
451
+ const rec = valueNodeToRecord(endProp.value, source);
452
+ if (!recordHasAuto(rec))
453
+ continue;
454
+ result.set(endProp, { ...properties, _auto: 1 });
455
+ }
456
+ return result;
457
+ }
253
458
  function findKfPropByPct(kfNode, percentage) {
254
459
  const props = kfNode.properties ?? [];
255
460
  for (let i = 0; i < props.length; i++) {
@@ -257,7 +462,7 @@ function findKfPropByPct(kfNode, percentage) {
257
462
  if (!isObjectProperty(prop))
258
463
  continue;
259
464
  const key = propKeyName(prop);
260
- if (typeof key === "string" && Math.abs(percentageFromKey(key) - percentage) < 0.001) {
465
+ if (typeof key === "string" && Math.abs(percentageFromKey(key) - percentage) <= PCT_TOLERANCE) {
261
466
  return { prop, idx: i };
262
467
  }
263
468
  }
@@ -276,51 +481,157 @@ export function updateKeyframeInScript(script, animationId, percentage, properti
276
481
  const match = findKfPropByPct(kfPropNode.value, percentage);
277
482
  if (!match)
278
483
  return script;
484
+ const record = { ...properties };
485
+ if (ease)
486
+ record.ease = ease;
279
487
  const ms = new MagicString(script);
280
- ms.overwrite(match.prop.value.start, match.prop.value.end, buildKeyframeValueCode(properties, ease));
488
+ ms.overwrite(match.prop.value.start, match.prop.value.end, recordToCode(record));
281
489
  return ms.toString();
282
490
  }
283
- // fallow-ignore-next-line complexity
284
- export function addKeyframeToScript(script, animationId, percentage, properties, ease) {
491
+ /**
492
+ * Build the final property record for the keyframe at `percentage`. If a
493
+ * keyframe already exists there, MERGE the new props over the existing record
494
+ * (preserve untouched props, preserve `_auto`, preserve the existing per-keyframe
495
+ * ease when the op omits one); otherwise it's just the new props.
496
+ */
497
+ function buildTargetRecord(existing, source, properties, ease) {
498
+ if (!existing || existing.prop.value?.type !== "ObjectExpression") {
499
+ const record = { ...properties };
500
+ if (ease)
501
+ record.ease = ease;
502
+ return record;
503
+ }
504
+ const existingRecord = valueNodeToRecord(existing.prop.value, source);
505
+ const existingEase = typeof existingRecord.ease === "string" ? existingRecord.ease : undefined;
506
+ const merged = { ...existingRecord };
507
+ for (const [k, v] of Object.entries(properties))
508
+ merged[k] = v;
509
+ const finalEase = ease ?? existingEase;
510
+ if (finalEase)
511
+ merged.ease = finalEase;
512
+ else
513
+ delete merged.ease;
514
+ return merged;
515
+ }
516
+ /**
517
+ * Compute the backfilled final record for one sibling keyframe: append any of
518
+ * `newPropKeys` it's missing, using the backfill default. Returns null when
519
+ * nothing changes (so the caller emits no overwrite for it).
520
+ */
521
+ function backfilledSiblingRecord(valueNode, source, newPropKeys, backfillDefaults) {
522
+ if (valueNode?.type !== "ObjectExpression")
523
+ return null;
524
+ const record = valueNodeToRecord(valueNode, source);
525
+ let changed = false;
526
+ for (const pk of newPropKeys) {
527
+ const defaultVal = backfillDefaults[pk];
528
+ if (pk in record || defaultVal == null)
529
+ continue;
530
+ record[pk] = defaultVal;
531
+ changed = true;
532
+ }
533
+ return changed ? record : null;
534
+ }
535
+ /** A located tween whose varsArg has a static keyframes ObjectExpression, or null. */
536
+ function locateWithKeyframes(script, animationId) {
285
537
  const parsed = parseGsapScriptAcornForWrite(script);
286
538
  if (!parsed)
287
- return script;
288
- const target = parsed.located.find((l) => l.id === animationId);
539
+ return null;
540
+ // Converting from()/fromTo() to to() rewrites the content-derived id; match
541
+ // recast's locateAnimationWithFallback by remapping the method segment.
542
+ const convertedId = animationId.replace(/-from-|-fromTo-/, "-to-");
543
+ const target = parsed.located.find((l) => l.id === animationId) ??
544
+ parsed.located.find((l) => l.id === convertedId);
289
545
  if (!target)
290
- return script;
546
+ return null;
291
547
  const kfPropNode = findPropertyNode(target.call.varsArg, "keyframes");
292
548
  if (!kfPropNode || kfPropNode.value?.type !== "ObjectExpression")
549
+ return null;
550
+ return { script, parsed, target, kfNode: kfPropNode.value };
551
+ }
552
+ /** Locate a tween's keyframes object, converting a flat tween first if absent. */
553
+ function ensureKeyframesNode(script, animationId) {
554
+ const direct = locateWithKeyframes(script, animationId);
555
+ if (direct)
556
+ return direct;
557
+ // No static keyframes object — convert the flat tween, then re-locate.
558
+ const parsed = parseGsapScriptAcornForWrite(script);
559
+ const target = parsed?.located.find((l) => l.id === animationId);
560
+ if (!target)
561
+ return null;
562
+ const converted = convertFlatTweenToKeyframes(script, target);
563
+ if (converted === script)
564
+ return null;
565
+ return locateWithKeyframes(converted, animationId);
566
+ }
567
+ /**
568
+ * Compute the sibling keyframe nodes that need a backfilled prop, excluding the
569
+ * target keyframe and any node already being overwritten as an `_auto` endpoint.
570
+ */
571
+ function collectBackfillOverwrites(kfNode, src, properties, backfillDefaults, skip) {
572
+ const result = new Map();
573
+ if (!backfillDefaults)
574
+ return result;
575
+ const newPropKeys = Object.keys(properties);
576
+ for (const prop of percentagePropsOf(kfNode)) {
577
+ if (prop === skip.existingProp || skip.endpoints.has(prop))
578
+ continue;
579
+ const rec = backfilledSiblingRecord(prop.value, src, newPropKeys, backfillDefaults);
580
+ if (rec)
581
+ result.set(prop, rec);
582
+ }
583
+ return result;
584
+ }
585
+ export function addKeyframeToScript(script, animationId, percentage, properties, ease, backfillDefaults) {
586
+ const located = ensureKeyframesNode(script, animationId);
587
+ if (!located)
293
588
  return script;
294
- const kfNode = kfPropNode.value;
295
- const ms = new MagicString(script);
296
- const pctKey = `${percentage}%`;
297
- const valueCode = buildKeyframeValueCode(properties, ease);
589
+ const { script: src, kfNode } = located;
298
590
  const existing = findKfPropByPct(kfNode, percentage);
591
+ // Final record for the target keyframe (merge if it already exists).
592
+ const targetRecord = buildTargetRecord(existing, src, properties, ease);
593
+ // `_auto` endpoint syncs fire only on new inserts; a merge landing ON an
594
+ // endpoint already preserves `_auto` via buildTargetRecord.
595
+ const endpointOverwrites = existing
596
+ ? new Map()
597
+ : autoEndpointOverwrites(kfNode, src, percentage, properties);
598
+ // Backfilled siblings (each node changes at most once).
599
+ const backfillOverwrites = collectBackfillOverwrites(kfNode, src, properties, backfillDefaults, {
600
+ existingProp: existing?.prop,
601
+ endpoints: endpointOverwrites,
602
+ });
603
+ // Emit exactly one overwrite per changed node, plus one insert for a new key.
604
+ const ms = new MagicString(src);
299
605
  if (existing) {
300
- ms.overwrite(existing.prop.value.start, existing.prop.value.end, valueCode);
606
+ ms.overwrite(existing.prop.value.start, existing.prop.value.end, recordToCode(targetRecord));
301
607
  }
302
608
  else {
303
- const allProps = (kfNode.properties ?? []).filter((p) => isObjectProperty(p));
304
- let insertBeforeProp = null;
305
- for (const prop of allProps) {
306
- const key = propKeyName(prop);
307
- if (typeof key === "string" && percentageFromKey(key) > percentage) {
308
- insertBeforeProp = prop;
309
- break;
310
- }
311
- }
312
- if (insertBeforeProp) {
313
- // Insert `"pct%": {...}, ` before the next higher-percentage prop
314
- ms.appendLeft(insertBeforeProp.start, `${JSON.stringify(pctKey)}: ${valueCode}, `);
315
- }
316
- else {
317
- // Append at end of kfNode properties
318
- const sep = allProps.length > 0 ? ", " : "";
319
- ms.appendLeft(kfNode.end - 1, `${sep}${JSON.stringify(pctKey)}: ${valueCode}`);
320
- }
609
+ insertNewKeyframe(ms, kfNode, percentage, `${percentage}%`, recordToCode(targetRecord));
610
+ }
611
+ for (const [prop, rec] of [...endpointOverwrites, ...backfillOverwrites]) {
612
+ ms.overwrite(prop.value.start, prop.value.end, recordToCode(rec));
321
613
  }
322
614
  return ms.toString();
323
615
  }
616
+ /** Insert a brand-new `"pct%": {...}` property in sorted order. */
617
+ function insertNewKeyframe(ms, kfNode, percentage, pctKey, valueCode) {
618
+ const allProps = (kfNode.properties ?? []).filter((p) => isObjectProperty(p));
619
+ let insertBeforeProp = null;
620
+ for (const prop of allProps) {
621
+ const key = propKeyName(prop);
622
+ if (typeof key === "string" && percentageFromKey(key) > percentage) {
623
+ insertBeforeProp = prop;
624
+ break;
625
+ }
626
+ }
627
+ if (insertBeforeProp) {
628
+ ms.appendLeft(insertBeforeProp.start, `${JSON.stringify(pctKey)}: ${valueCode}, `);
629
+ }
630
+ else {
631
+ const sep = allProps.length > 0 ? ", " : "";
632
+ ms.appendLeft(kfNode.end - 1, `${sep}${JSON.stringify(pctKey)}: ${valueCode}`);
633
+ }
634
+ }
324
635
  export function removeKeyframeFromScript(script, animationId, percentage) {
325
636
  const parsed = parseGsapScriptAcornForWrite(script);
326
637
  if (!parsed)
@@ -1 +1 @@
1
- {"version":3,"file":"gsapWriterAcorn.js","sourceRoot":"","sources":["../../src/parsers/gsapWriterAcorn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gsapWriterAcorn.js","sourceRoot":"","sources":["../../src/parsers/gsapWriterAcorn.ts"],"names":[],"mappings":"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"}