summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/interfaces/web-animations-2.idl
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
commit26a029d407be480d791972afb5975cf62c9360a6 (patch)
treef435a8308119effd964b339f76abb83a57c29483 /testing/web-platform/tests/interfaces/web-animations-2.idl
parentInitial commit. (diff)
downloadfirefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz
firefox-26a029d407be480d791972afb5975cf62c9360a6.zip
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/interfaces/web-animations-2.idl')
-rw-r--r--testing/web-platform/tests/interfaces/web-animations-2.idl112
1 files changed, 112 insertions, 0 deletions
diff --git a/testing/web-platform/tests/interfaces/web-animations-2.idl b/testing/web-platform/tests/interfaces/web-animations-2.idl
new file mode 100644
index 0000000000..f9f68a0d49
--- /dev/null
+++ b/testing/web-platform/tests/interfaces/web-animations-2.idl
@@ -0,0 +1,112 @@
+// GENERATED CONTENT - DO NOT EDIT
+// Content was automatically extracted by Reffy into webref
+// (https://github.com/w3c/webref)
+// Source: Web Animations Level 2 (https://drafts.csswg.org/web-animations-2/)
+
+[Exposed=Window]
+partial interface AnimationTimeline {
+ readonly attribute CSSNumberish? currentTime;
+ readonly attribute CSSNumberish? duration;
+ Animation play (optional AnimationEffect? effect = null);
+};
+
+[Exposed=Window]
+partial interface Animation {
+ attribute CSSNumberish? startTime;
+ attribute CSSNumberish? currentTime;
+};
+
+[Exposed=Window]
+partial interface AnimationEffect {
+ // Timing hierarchy
+ readonly attribute GroupEffect? parent;
+ readonly attribute AnimationEffect? previousSibling;
+ readonly attribute AnimationEffect? nextSibling;
+
+ undefined before (AnimationEffect... effects);
+ undefined after (AnimationEffect... effects);
+ undefined replace (AnimationEffect... effects);
+ undefined remove ();
+};
+
+partial dictionary EffectTiming {
+ double delay;
+ double endDelay;
+ double playbackRate = 1.0;
+ (unrestricted double or CSSNumericValue or DOMString) duration = "auto";
+};
+
+partial dictionary OptionalEffectTiming {
+ double playbackRate;
+};
+
+partial dictionary ComputedEffectTiming {
+ CSSNumberish startTime;
+ CSSNumberish endTime;
+ CSSNumberish activeDuration;
+ CSSNumberish? localTime;
+};
+
+[Exposed=Window]
+interface GroupEffect {
+ constructor(sequence<AnimationEffect>? children,
+ optional (unrestricted double or EffectTiming) timing = {});
+
+ readonly attribute AnimationNodeList children;
+ readonly attribute AnimationEffect? firstChild;
+ readonly attribute AnimationEffect? lastChild;
+ GroupEffect clone ();
+
+ undefined prepend (AnimationEffect... effects);
+ undefined append (AnimationEffect... effects);
+};
+
+[Exposed=Window]
+interface AnimationNodeList {
+ readonly attribute unsigned long length;
+ getter AnimationEffect? item (unsigned long index);
+};
+
+[Exposed=Window]
+interface SequenceEffect : GroupEffect {
+ constructor(sequence<AnimationEffect>? children,
+ optional (unrestricted double or EffectTiming) timing = {});
+
+ SequenceEffect clone ();
+};
+
+partial interface KeyframeEffect {
+ attribute IterationCompositeOperation iterationComposite;
+};
+
+partial dictionary KeyframeEffectOptions {
+ IterationCompositeOperation iterationComposite = "replace";
+};
+
+enum IterationCompositeOperation { "replace", "accumulate" };
+
+callback EffectCallback = undefined (double? progress,
+ (Element or CSSPseudoElement) currentTarget,
+ Animation animation);
+
+dictionary TimelineRangeOffset {
+ CSSOMString? rangeName;
+ CSSNumericValue offset;
+};
+
+partial dictionary KeyframeAnimationOptions {
+ (TimelineRangeOffset or CSSNumericValue or CSSKeywordValue or DOMString) rangeStart = "normal";
+ (TimelineRangeOffset or CSSNumericValue or CSSKeywordValue or DOMString) rangeEnd = "normal";
+};
+
+[Exposed=Window]
+interface AnimationPlaybackEvent : Event {
+ constructor(DOMString type, optional AnimationPlaybackEventInit
+ eventInitDict = {});
+ readonly attribute CSSNumberish? currentTime;
+ readonly attribute CSSNumberish? timelineTime;
+};
+dictionary AnimationPlaybackEventInit : EventInit {
+ CSSNumberish? currentTime = null;
+ CSSNumberish? timelineTime = null;
+};