get-final.mjs 454 B

123456789101112
  1. const isNotNull = (value) => value !== null;
  2. function getFinalKeyframe(keyframes, { repeat, repeatType = "loop" }, finalKeyframe) {
  3. const resolvedKeyframes = keyframes.filter(isNotNull);
  4. const index = repeat && repeatType !== "loop" && repeat % 2 === 1
  5. ? 0
  6. : resolvedKeyframes.length - 1;
  7. return !index || finalKeyframe === undefined
  8. ? resolvedKeyframes[index]
  9. : finalKeyframe;
  10. }
  11. export { getFinalKeyframe };