Files
ladybird/Libraries/LibWeb/Animations/AnimationEffect.idl
Shannon Booth cc6e048bd6 LibWeb+LibIDL: Remove support for #import directives during parsing
These no longer serve any purpose now that we run the IDLGenerator
on all of these files at once.
2026-04-24 20:08:29 +02:00

51 lines
1.8 KiB
Plaintext

// https://drafts.csswg.org/web-animations-1/#the-effecttiming-dictionaries
// https://drafts.csswg.org/web-animations-2/#the-effecttiming-dictionaries
dictionary EffectTiming {
double delay = 0;
double endDelay = 0;
FillMode fill = "auto";
double iterationStart = 0.0;
unrestricted double iterations = 1.0;
// FIXME: Support playbackRate
(unrestricted double or CSSNumericValue or DOMString) duration = "auto";
PlaybackDirection direction = "normal";
DOMString easing = "linear";
};
// https://drafts.csswg.org/web-animations-1/#dictdef-optionaleffecttiming
// https://drafts.csswg.org/web-animations-2/#ref-for-dictdef-optionaleffecttiming
dictionary OptionalEffectTiming {
double delay;
double endDelay;
FillMode fill;
double iterationStart;
unrestricted double iterations;
// FIXME: Support playbackRate
(unrestricted double or DOMString) duration;
PlaybackDirection direction;
DOMString easing;
};
// https://drafts.csswg.org/web-animations-1/#the-fillmode-enumeration
enum FillMode { "none", "forwards", "backwards", "both", "auto" };
// https://drafts.csswg.org/web-animations-1/#the-playbackdirection-enumeration
enum PlaybackDirection { "normal", "reverse", "alternate", "alternate-reverse" };
// https://drafts.csswg.org/web-animations-1/#the-computedeffecttiming-dictionary
dictionary ComputedEffectTiming : EffectTiming {
[GenerateAsRequired] CSSNumberish endTime;
[GenerateAsRequired] CSSNumberish activeDuration;
CSSNumberish? localTime;
double? progress;
unrestricted double? currentIteration;
};
// https://drafts.csswg.org/web-animations-1/#the-animationeffect-interface
[Exposed=Window]
interface AnimationEffect {
EffectTiming getTiming();
ComputedEffectTiming getComputedTiming();
undefined updateTiming(optional OptionalEffectTiming timing = {});
};