diff --git a/features/a.yml b/features/a.yml index 44837fad122..163891d1be1 100644 --- a/features/a.yml +++ b/features/a.yml @@ -2,36 +2,37 @@ name: description: The `` element creates a hyperlink to any resource that's accessible via a URL, such as web pages, files, email addresses, or locations within the same page. spec: https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-a-element group: html-elements -status: - compute_from: html.elements.a compat_features: - - api.HTMLAnchorElement - - api.HTMLAnchorElement.hash - - api.HTMLAnchorElement.host - - api.HTMLAnchorElement.hostname - - api.HTMLAnchorElement.href - - api.HTMLAnchorElement.hreflang - - api.HTMLAnchorElement.origin - - api.HTMLAnchorElement.password - - api.HTMLAnchorElement.pathname - - api.HTMLAnchorElement.port - - api.HTMLAnchorElement.protocol - - api.HTMLAnchorElement.rel - - api.HTMLAnchorElement.relList - - api.HTMLAnchorElement.search - - api.HTMLAnchorElement.target - - api.HTMLAnchorElement.text - - api.HTMLAnchorElement.toString - - api.HTMLAnchorElement.type - - api.HTMLAnchorElement.username - - html.elements.a - - html.elements.a.href - - html.elements.a.href.href_sms - - html.elements.a.href.href_top - - html.elements.a.hreflang - - html.elements.a.implicit_noopener - - html.elements.a.rel - - html.elements.a.rel.noopener - - html.elements.a.rel.noreferrer - - html.elements.a.target - - html.elements.a.type + core: + - api.HTMLAnchorElement + - api.HTMLAnchorElement.hash + - api.HTMLAnchorElement.host + - api.HTMLAnchorElement.hostname + - api.HTMLAnchorElement.href + - api.HTMLAnchorElement.hreflang + - api.HTMLAnchorElement.pathname + - api.HTMLAnchorElement.port + - api.HTMLAnchorElement.protocol + - api.HTMLAnchorElement.rel + - api.HTMLAnchorElement.search + - api.HTMLAnchorElement.target + - api.HTMLAnchorElement.text + - api.HTMLAnchorElement.type + - html.elements.a # former compute_from + - html.elements.a.href + - html.elements.a.hreflang + - html.elements.a.rel + - html.elements.a.target + - html.elements.a.type + modifier: + - api.HTMLAnchorElement.origin + - api.HTMLAnchorElement.password + - api.HTMLAnchorElement.relList + - api.HTMLAnchorElement.toString + - api.HTMLAnchorElement.username + - html.elements.a.href.href_top + - html.elements.a.implicit_noopener + - html.elements.a.rel.noopener + - html.elements.a.rel.noreferrer + spare: + - html.elements.a.href.href_sms diff --git a/features/aborting.yml b/features/aborting.yml index c506be53dc7..19e635cee68 100644 --- a/features/aborting.yml +++ b/features/aborting.yml @@ -2,18 +2,18 @@ name: AbortController and AbortSignal description: The `AbortController` and `AbortSignal` APIs allow you to cancel an ongoing operation, such as a `fetch()` request. spec: https://dom.spec.whatwg.org/#aborting-ongoing-activities caniuse: abortcontroller -status: - compute_from: api.AbortController compat_features: - - api.AbortController - - api.AbortController.AbortController - - api.AbortController.abort - - api.AbortController.abort.reason_parameter - - api.AbortController.signal - - api.AbortSignal - - api.AbortSignal.abort_event - - api.AbortSignal.abort_static - - api.AbortSignal.abort_static.reason_parameter - - api.AbortSignal.aborted - - api.AbortSignal.reason - - api.AbortSignal.throwIfAborted + core: + - api.AbortController # former compute_from + - api.AbortController.AbortController + - api.AbortController.abort + - api.AbortController.signal + - api.AbortSignal + - api.AbortSignal.abort_event + - api.AbortSignal.aborted + modifier: + - api.AbortController.abort.reason_parameter + - api.AbortSignal.abort_static + - api.AbortSignal.abort_static.reason_parameter + - api.AbortSignal.reason + - api.AbortSignal.throwIfAborted diff --git a/features/accesskey.yml b/features/accesskey.yml index 8e7aff58de9..7ff8a3d5a52 100644 --- a/features/accesskey.yml +++ b/features/accesskey.yml @@ -1,9 +1,9 @@ name: accesskey description: The `accesskey` global HTML attribute gives a hint for generating a keyboard shortcut for the current element. The attribute value must consist of a single printable character. spec: https://html.spec.whatwg.org/multipage/interaction.html#the-accesskey-attribute -status: - compute_from: api.HTMLElement.accessKey compat_features: - - api.HTMLElement.accessKey - - api.HTMLElement.accessKeyLabel - - html.global_attributes.accesskey + core: + - api.HTMLElement.accessKey # former compute_from + - html.global_attributes.accesskey + spare: + - api.HTMLElement.accessKeyLabel diff --git a/features/animations-css.yml b/features/animations-css.yml index 0d39c82d90a..0fcea530309 100644 --- a/features/animations-css.yml +++ b/features/animations-css.yml @@ -5,74 +5,75 @@ caniuse: css-animation group: - animation - css -status: - compute_from: css.properties.animation compat_features: - - api.AnimationEvent - - api.AnimationEvent.AnimationEvent - - api.AnimationEvent.animationName - - api.AnimationEvent.elapsedTime - - api.AnimationEvent.pseudoElement - - api.CSSAnimation - - api.CSSAnimation.animationName - - api.CSSKeyframeRule - - api.CSSKeyframeRule.keyText - - api.CSSKeyframeRule.style - - api.CSSKeyframesRule - - api.CSSKeyframesRule.appendRule - - api.CSSKeyframesRule.cssRules - - api.CSSKeyframesRule.deleteRule - - api.CSSKeyframesRule.findRule - - api.CSSKeyframesRule.length - - api.CSSKeyframesRule.name - - css.at-rules.keyframes - - css.at-rules.keyframes.named_range_keyframes - - css.at-rules.keyframes.ignore_important_declarations - - css.properties.animation - - css.properties.animation.alternate - - css.properties.animation.alternate-reverse - - css.properties.animation.auto - - css.properties.animation.backwards - - css.properties.animation.both - - css.properties.animation.ease - - css.properties.animation.ease-in - - css.properties.animation.ease-in-out - - css.properties.animation.ease-out - - css.properties.animation.forwards - - css.properties.animation.infinite - - css.properties.animation.linear - - css.properties.animation.none - - css.properties.animation.normal - - css.properties.animation.reverse - - css.properties.animation.step-end - - css.properties.animation.step-start - - css.properties.animation-delay - - css.properties.animation-direction - - css.properties.animation-direction.alternate - - css.properties.animation-direction.alternate-reverse - - css.properties.animation-direction.normal - - css.properties.animation-direction.reverse - - css.properties.animation-duration - - css.properties.animation-duration.auto - - css.properties.animation-fill-mode - - css.properties.animation-fill-mode.backwards - - css.properties.animation-fill-mode.both - - css.properties.animation-fill-mode.forwards - - css.properties.animation-fill-mode.none - - css.properties.animation-iteration-count - - css.properties.animation-iteration-count.infinite - - css.properties.animation-name - - css.properties.animation-name.none - - css.properties.animation-play-state - - css.properties.animation-play-state.paused - - css.properties.animation-play-state.running - - css.properties.animation-timing-function - - css.properties.animation-timing-function.ease - - css.properties.animation-timing-function.ease-in - - css.properties.animation-timing-function.ease-in-out - - css.properties.animation-timing-function.ease-out - - css.properties.animation-timing-function.jump - - css.properties.animation-timing-function.linear - - css.properties.animation-timing-function.step-end - - css.properties.animation-timing-function.step-start - - css.types.time + core: + - api.AnimationEvent + - api.AnimationEvent.animationName + - api.AnimationEvent.elapsedTime + - css.at-rules.keyframes + - css.properties.animation # former compute_from + - css.properties.animation-delay + - css.properties.animation-direction + - css.properties.animation-direction.alternate + - css.properties.animation-direction.alternate-reverse + - css.properties.animation-direction.normal + - css.properties.animation-direction.reverse + - css.properties.animation-duration + - css.properties.animation-fill-mode + - css.properties.animation-fill-mode.backwards + - css.properties.animation-fill-mode.both + - css.properties.animation-fill-mode.forwards + - css.properties.animation-fill-mode.none + - css.properties.animation-iteration-count + - css.properties.animation-iteration-count.infinite + - css.properties.animation-name + - css.properties.animation-name.none + - css.properties.animation-play-state + - css.properties.animation-play-state.paused + - css.properties.animation-play-state.running + - css.properties.animation-timing-function + - css.properties.animation-timing-function.ease + - css.properties.animation-timing-function.ease-in + - css.properties.animation-timing-function.ease-in-out + - css.properties.animation-timing-function.ease-out + - css.properties.animation-timing-function.linear + - css.properties.animation-timing-function.step-end + - css.properties.animation-timing-function.step-start + - css.properties.animation.alternate + - css.properties.animation.alternate-reverse + - css.properties.animation.auto + - css.properties.animation.backwards + - css.properties.animation.both + - css.properties.animation.ease + - css.properties.animation.ease-in + - css.properties.animation.ease-in-out + - css.properties.animation.ease-out + - css.properties.animation.forwards + - css.properties.animation.infinite + - css.properties.animation.linear + - css.properties.animation.none + - css.properties.animation.normal + - css.properties.animation.reverse + - css.properties.animation.step-end + - css.properties.animation.step-start + - css.types.time + modifier: + - api.AnimationEvent.AnimationEvent + - api.AnimationEvent.pseudoElement + - api.CSSAnimation + - api.CSSAnimation.animationName + - api.CSSKeyframeRule + - api.CSSKeyframeRule.keyText + - api.CSSKeyframeRule.style + - api.CSSKeyframesRule + - api.CSSKeyframesRule.appendRule + - api.CSSKeyframesRule.cssRules + - api.CSSKeyframesRule.deleteRule + - api.CSSKeyframesRule.findRule + - api.CSSKeyframesRule.name + - css.at-rules.keyframes.ignore_important_declarations + - css.properties.animation-timing-function.jump + spare: + - api.CSSKeyframesRule.length + - css.at-rules.keyframes.named_range_keyframes + - css.properties.animation-duration.auto diff --git a/features/aria-attribute-reflection.yml b/features/aria-attribute-reflection.yml index 071912fa44b..7e0a447c8d1 100644 --- a/features/aria-attribute-reflection.yml +++ b/features/aria-attribute-reflection.yml @@ -1,111 +1,109 @@ name: ARIA attribute reflection description: WAI-ARIA attributes have corresponding properties on `Element` and `ElementInternals` objects. spec: https://w3c.github.io/aria/#accessibilityroleandproperties-correspondence -status: - compute_from: - - api.Element.role - - api.ElementInternals.role compat_features: - - api.Element.ariaActiveDescendantElement - - api.Element.ariaAtomic - - api.Element.ariaAutoComplete - - api.Element.ariaBrailleLabel - - api.Element.ariaBrailleRoleDescription - - api.Element.ariaBusy - - api.Element.ariaChecked - - api.Element.ariaColCount - - api.Element.ariaColIndex - - api.Element.ariaColIndexText - - api.Element.ariaColSpan - - api.Element.ariaControlsElements - - api.Element.ariaCurrent - - api.Element.ariaDescribedByElements - - api.Element.ariaDescription - - api.Element.ariaDetailsElements - - api.Element.ariaDisabled - - api.Element.ariaErrorMessageElements - - api.Element.ariaExpanded - - api.Element.ariaFlowToElements - - api.Element.ariaHasPopup - - api.Element.ariaHidden - - api.Element.ariaInvalid - - api.Element.ariaKeyShortcuts - - api.Element.ariaLabel - - api.Element.ariaLabelledByElements - - api.Element.ariaLevel - - api.Element.ariaLive - - api.Element.ariaModal - - api.Element.ariaMultiLine - - api.Element.ariaMultiSelectable - - api.Element.ariaOrientation - - api.Element.ariaOwnsElements - - api.Element.ariaPlaceholder - - api.Element.ariaPosInSet - - api.Element.ariaPressed - - api.Element.ariaReadOnly - - api.Element.ariaRelevant - - api.Element.ariaRequired - - api.Element.ariaRoleDescription - - api.Element.ariaRowCount - - api.Element.ariaRowIndex - - api.Element.ariaRowIndexText - - api.Element.ariaRowSpan - - api.Element.ariaSelected - - api.Element.ariaSetSize - - api.Element.ariaSort - - api.Element.ariaValueMax - - api.Element.ariaValueMin - - api.Element.ariaValueNow - - api.Element.ariaValueText - - api.Element.role - - api.ElementInternals.ariaActiveDescendantElement - - api.ElementInternals.ariaAtomic - - api.ElementInternals.ariaAutoComplete - - api.ElementInternals.ariaBrailleLabel - - api.ElementInternals.ariaBrailleRoleDescription - - api.ElementInternals.ariaBusy - - api.ElementInternals.ariaChecked - - api.ElementInternals.ariaColCount - - api.ElementInternals.ariaColIndex - - api.ElementInternals.ariaColIndexText - - api.ElementInternals.ariaColSpan - - api.ElementInternals.ariaControlsElements - - api.ElementInternals.ariaCurrent - - api.ElementInternals.ariaDescribedByElements - - api.ElementInternals.ariaDescription - - api.ElementInternals.ariaDetailsElements - - api.ElementInternals.ariaDisabled - - api.ElementInternals.ariaErrorMessageElements - - api.ElementInternals.ariaExpanded - - api.ElementInternals.ariaFlowToElements - - api.ElementInternals.ariaHasPopup - - api.ElementInternals.ariaHidden - - api.ElementInternals.ariaInvalid - - api.ElementInternals.ariaKeyShortcuts - - api.ElementInternals.ariaLabel - - api.ElementInternals.ariaLabelledByElements - - api.ElementInternals.ariaLevel - - api.ElementInternals.ariaLive - - api.ElementInternals.ariaModal - - api.ElementInternals.ariaMultiLine - - api.ElementInternals.ariaMultiSelectable - - api.ElementInternals.ariaOrientation - - api.ElementInternals.ariaOwnsElements - - api.ElementInternals.ariaPlaceholder - - api.ElementInternals.ariaPosInSet - - api.ElementInternals.ariaPressed - - api.ElementInternals.ariaReadOnly - - api.ElementInternals.ariaRequired - - api.ElementInternals.ariaRoleDescription - - api.ElementInternals.ariaRowCount - - api.ElementInternals.ariaRowIndex - - api.ElementInternals.ariaRowIndexText - - api.ElementInternals.ariaRowSpan - - api.ElementInternals.ariaSelected - - api.ElementInternals.ariaSetSize - - api.ElementInternals.ariaSort - - api.ElementInternals.ariaValueMax - - api.ElementInternals.ariaValueMin - - api.ElementInternals.ariaValueNow - - api.ElementInternals.ariaValueText - - api.ElementInternals.role + core: + - api.Element.ariaAtomic + - api.Element.ariaAutoComplete + - api.Element.ariaBusy + - api.Element.ariaChecked + - api.Element.ariaColCount + - api.Element.ariaColIndex + - api.Element.ariaColSpan + - api.Element.ariaCurrent + - api.Element.ariaDisabled + - api.Element.ariaExpanded + - api.Element.ariaHasPopup + - api.Element.ariaHidden + - api.Element.ariaInvalid + - api.Element.ariaKeyShortcuts + - api.Element.ariaLabel + - api.Element.ariaLevel + - api.Element.ariaLive + - api.Element.ariaModal + - api.Element.ariaMultiLine + - api.Element.ariaMultiSelectable + - api.Element.ariaOrientation + - api.Element.ariaPlaceholder + - api.Element.ariaPosInSet + - api.Element.ariaPressed + - api.Element.ariaReadOnly + - api.Element.ariaRelevant + - api.Element.ariaRequired + - api.Element.ariaRoleDescription + - api.Element.ariaRowCount + - api.Element.ariaRowIndex + - api.Element.ariaRowSpan + - api.Element.ariaSelected + - api.Element.ariaSetSize + - api.Element.ariaSort + - api.Element.ariaValueMax + - api.Element.ariaValueMin + - api.Element.ariaValueNow + - api.Element.ariaValueText + - api.Element.role # former compute_from + - api.ElementInternals.ariaAtomic + - api.ElementInternals.ariaAutoComplete + - api.ElementInternals.ariaBusy + - api.ElementInternals.ariaChecked + - api.ElementInternals.ariaColCount + - api.ElementInternals.ariaColIndex + - api.ElementInternals.ariaColSpan + - api.ElementInternals.ariaCurrent + - api.ElementInternals.ariaDisabled + - api.ElementInternals.ariaExpanded + - api.ElementInternals.ariaHasPopup + - api.ElementInternals.ariaHidden + - api.ElementInternals.ariaInvalid + - api.ElementInternals.ariaKeyShortcuts + - api.ElementInternals.ariaLabel + - api.ElementInternals.ariaLevel + - api.ElementInternals.ariaLive + - api.ElementInternals.ariaModal + - api.ElementInternals.ariaMultiLine + - api.ElementInternals.ariaMultiSelectable + - api.ElementInternals.ariaOrientation + - api.ElementInternals.ariaPlaceholder + - api.ElementInternals.ariaPosInSet + - api.ElementInternals.ariaPressed + - api.ElementInternals.ariaReadOnly + - api.ElementInternals.ariaRequired + - api.ElementInternals.ariaRoleDescription + - api.ElementInternals.ariaRowCount + - api.ElementInternals.ariaRowIndex + - api.ElementInternals.ariaRowSpan + - api.ElementInternals.ariaSelected + - api.ElementInternals.ariaSetSize + - api.ElementInternals.ariaSort + - api.ElementInternals.ariaValueMax + - api.ElementInternals.ariaValueMin + - api.ElementInternals.ariaValueNow + - api.ElementInternals.ariaValueText + - api.ElementInternals.role # former compute_from + spare: + - api.Element.ariaActiveDescendantElement + - api.Element.ariaBrailleLabel + - api.Element.ariaBrailleRoleDescription + - api.Element.ariaColIndexText + - api.Element.ariaControlsElements + - api.Element.ariaDescribedByElements + - api.Element.ariaDescription + - api.Element.ariaDetailsElements + - api.Element.ariaErrorMessageElements + - api.Element.ariaFlowToElements + - api.Element.ariaLabelledByElements + - api.Element.ariaOwnsElements + - api.Element.ariaRowIndexText + - api.ElementInternals.ariaActiveDescendantElement + - api.ElementInternals.ariaBrailleLabel + - api.ElementInternals.ariaBrailleRoleDescription + - api.ElementInternals.ariaColIndexText + - api.ElementInternals.ariaControlsElements + - api.ElementInternals.ariaDescribedByElements + - api.ElementInternals.ariaDescription + - api.ElementInternals.ariaDetailsElements + - api.ElementInternals.ariaErrorMessageElements + - api.ElementInternals.ariaFlowToElements + - api.ElementInternals.ariaLabelledByElements + - api.ElementInternals.ariaOwnsElements + - api.ElementInternals.ariaRowIndexText diff --git a/features/audio-worklet.yml b/features/audio-worklet.yml index 19f8d26848c..96a1e7afeb2 100644 --- a/features/audio-worklet.yml +++ b/features/audio-worklet.yml @@ -4,9 +4,25 @@ spec: https://webaudio.github.io/web-audio-api/#AudioWorklet group: - web-audio - worklets -status: - compute_from: - - api.AudioWorklet - - api.AudioWorkletNode.AudioWorkletNode - - api.AudioWorkletProcessor - - api.BaseAudioContext.audioWorklet +compat_features: + core: + - api.AudioWorklet # former compute_from + - api.AudioWorkletGlobalScope + - api.AudioWorkletGlobalScope.currentFrame + - api.AudioWorkletGlobalScope.currentTime + - api.AudioWorkletGlobalScope.registerProcessor + - api.AudioWorkletGlobalScope.sampleRate + - api.AudioWorkletNode + - api.AudioWorkletNode.AudioWorkletNode # former compute_from + - api.AudioWorkletNode.parameters + - api.AudioWorkletNode.port + - api.AudioWorkletNode.processorerror_event + - api.AudioWorkletProcessor # former compute_from + - api.AudioWorkletProcessor.AudioWorkletProcessor + - api.AudioWorkletProcessor.port + - api.BaseAudioContext.audioWorklet # former compute_from + - api.Worklet + - api.Worklet.addModule + - api.WorkletGlobalScope + spare: + - api.AudioWorkletGlobalScope.port diff --git a/features/audio.yml b/features/audio.yml index 9591bdd3579..57647d464cb 100644 --- a/features/audio.yml +++ b/features/audio.yml @@ -5,7 +5,19 @@ group: - media-elements - html-elements caniuse: audio -status: - compute_from: html.elements.audio +compat_features: + core: + - api.HTMLAudioElement + - html.elements.audio # former compute_from + - html.elements.audio.controls + - html.elements.audio.src + modifier: + - api.HTMLAudioElement.Audio + - html.elements.audio.autoplay + - html.elements.audio.crossorigin + - html.elements.audio.loop + - html.elements.audio.muted + - html.elements.audio.preload + # TODO: Tag relevant parts of HTMLMediaElement when possible: # https://github.com/web-platform-dx/web-features/issues/1173 diff --git a/features/background-position.yml b/features/background-position.yml index 11be5dfec34..d5de1e4e5cd 100644 --- a/features/background-position.yml +++ b/features/background-position.yml @@ -5,18 +5,19 @@ group: background caniuse: - css-background-offsets - background-position-x-y -status: - compute_from: css.properties.background-position.side-relative_values compat_features: - - css.properties.background-position - - css.properties.background-position-x - - css.properties.background-position-x.side-relative_values - - css.properties.background-position-y - - css.properties.background-position-y.side-relative_values - - css.properties.background-position.bottom - - css.properties.background-position.center - - css.properties.background-position.left - - css.properties.background-position.multiple_backgrounds - - css.properties.background-position.right - - css.properties.background-position.side-relative_values - - css.properties.background-position.top + core: + - css.properties.background-position + - css.properties.background-position.multiple_backgrounds + - css.properties.background-position.side-relative_values # former compute_from + modifier: + - css.properties.background-position-x + - css.properties.background-position-y + - css.properties.background-position.bottom + - css.properties.background-position.center + - css.properties.background-position.left + - css.properties.background-position.right + - css.properties.background-position.top + spare: + - css.properties.background-position-x.side-relative_values + - css.properties.background-position-y.side-relative_values diff --git a/features/barprop.yml b/features/barprop.yml index b07492fed12..7c3882bcbae 100644 --- a/features/barprop.yml +++ b/features/barprop.yml @@ -1,15 +1,15 @@ name: BarProp description: The `visible` property of the `window.locationbar`, `window.menubar`, `window.personalbar`, `window.scrollbars`, `window.statusbar`, and `window.toolbar` APIs historically represented the visibility of a browser user interface. For privacy reasons, it now represents whether the window is a pop-up. spec: https://html.spec.whatwg.org/multipage/nav-history-apis.html#browser-interface-elements -status: - compute_from: api.BarProp.visible compat_features: - - api.BarProp - - api.BarProp.visible - - api.BarProp.visible.returns_popup - - api.Window.locationbar - - api.Window.menubar - - api.Window.personalbar - - api.Window.scrollbars - - api.Window.statusbar - - api.Window.toolbar + core: + - api.BarProp + - api.BarProp.visible # former compute_from + - api.Window.locationbar + - api.Window.menubar + - api.Window.personalbar + - api.Window.scrollbars + - api.Window.statusbar + - api.Window.toolbar + spare: + - api.BarProp.visible.returns_popup diff --git a/features/base.yml b/features/base.yml index 014de45c933..abd9d6321d5 100644 --- a/features/base.yml +++ b/features/base.yml @@ -2,14 +2,15 @@ name: description: The `` element sets the base URL (the URL that relative URLs are relative to) for all relative URLs in the document. spec: https://html.spec.whatwg.org/multipage/semantics.html#the-base-element group: html-elements -status: - compute_from: html.elements.base compat_features: - - api.HTMLBaseElement - - api.HTMLBaseElement.href - - api.HTMLBaseElement.target - - html.elements.base - - html.elements.base.href - - html.elements.base.href.forbid_data_javascript_urls - - html.elements.base.href.relative_url - - html.elements.base.target + core: + - api.HTMLBaseElement + - api.HTMLBaseElement.href + - api.HTMLBaseElement.target + - html.elements.base # former compute_from + - html.elements.base.href + - html.elements.base.target + modifier: + - html.elements.base.href.relative_url + spare: + - html.elements.base.href.forbid_data_javascript_urls diff --git a/features/battery.yml b/features/battery.yml index a27014e8d1b..0741aaf651e 100644 --- a/features/battery.yml +++ b/features/battery.yml @@ -2,18 +2,18 @@ name: Battery status description: The `navigator.getBattery()` API obtains information about the device's battery, including charge level and status. Also known as the Battery API. spec: https://w3c.github.io/battery/ caniuse: battery-status -status: - compute_from: api.Navigator.getBattery compat_features: - - api.BatteryManager - - api.BatteryManager.charging - - api.BatteryManager.chargingTime - - api.BatteryManager.chargingchange_event - - api.BatteryManager.chargingtimechange_event - - api.BatteryManager.dischargingTime - - api.BatteryManager.dischargingtimechange_event - - api.BatteryManager.level - - api.BatteryManager.levelchange_event - - api.BatteryManager.secure_context_required - - api.Navigator.getBattery - - api.Navigator.getBattery.secure_context_required + core: + - api.BatteryManager + - api.BatteryManager.charging + - api.BatteryManager.chargingchange_event + - api.BatteryManager.chargingtimechange_event + - api.BatteryManager.dischargingtimechange_event + - api.BatteryManager.level + - api.BatteryManager.levelchange_event + - api.Navigator.getBattery # former compute_from + modifier: + - api.BatteryManager.chargingTime + - api.BatteryManager.dischargingTime + - api.BatteryManager.secure_context_required + - api.Navigator.getBattery.secure_context_required diff --git a/features/before-after.yml b/features/before-after.yml index e7af46e4a00..ce826a7bd52 100644 --- a/features/before-after.yml +++ b/features/before-after.yml @@ -2,12 +2,10 @@ name: ::before and ::after description: The `::before` and `::after` CSS pseudo-elements select inline boxes preceding and following an element. They are often used with the `content` property to generate cosmetic content. spec: https://drafts.csswg.org/css-pseudo-4/#generated-content caniuse: css-gencontent -status: - compute_from: - - css.selectors.before - - css.selectors.after compat_features: - - css.selectors.before - - css.selectors.before.animation_and_transition_support - - css.selectors.after - - css.selectors.after.animation_and_transition_support + core: + - css.selectors.after # former compute_from + - css.selectors.before # former compute_from + modifier: + - css.selectors.after.animation_and_transition_support + - css.selectors.before.animation_and_transition_support diff --git a/features/broadcast-channel.yml b/features/broadcast-channel.yml index 5d693b235a5..539402e7ee1 100644 --- a/features/broadcast-channel.yml +++ b/features/broadcast-channel.yml @@ -3,5 +3,13 @@ description: The `BroadcastChannel` API allows you to send messages between same spec: https://html.spec.whatwg.org/multipage/web-messaging.html#broadcasting-to-other-browsing-contexts caniuse: broadcastchannel group: messaging -status: - compute_from: api.BroadcastChannel.BroadcastChannel +compat_features: + core: + - api.BroadcastChannel + - api.BroadcastChannel.BroadcastChannel # former compute_from + - api.BroadcastChannel.close + - api.BroadcastChannel.message_event + - api.BroadcastChannel.name + - api.BroadcastChannel.postMessage + modifier: + - api.BroadcastChannel.messageerror_event diff --git a/features/button.yml b/features/button.yml index abbfbb7ebc3..a6cdefa8022 100644 --- a/features/button.yml +++ b/features/button.yml @@ -4,29 +4,29 @@ spec: https://html.spec.whatwg.org/multipage/form-elements.html#the-button-eleme group: - forms - html-elements -status: - compute_from: html.elements.button compat_features: - - api.HTMLButtonElement - - api.HTMLButtonElement.disabled - - api.HTMLButtonElement.form - - api.HTMLButtonElement.formAction - - api.HTMLButtonElement.formEnctype - - api.HTMLButtonElement.formMethod - - api.HTMLButtonElement.formNoValidate - - api.HTMLButtonElement.formTarget - - api.HTMLButtonElement.labels - - api.HTMLButtonElement.name - - api.HTMLButtonElement.type - - api.HTMLButtonElement.value - - html.elements.button - - html.elements.button.disabled - - html.elements.button.form - - html.elements.button.formaction - - html.elements.button.formenctype - - html.elements.button.formmethod - - html.elements.button.formnovalidate - - html.elements.button.formtarget - - html.elements.button.name - - html.elements.button.type - - html.elements.button.value + core: + - html.elements.button # former compute_from + modifier: + - api.HTMLButtonElement + - api.HTMLButtonElement.disabled + - api.HTMLButtonElement.form + - api.HTMLButtonElement.formAction + - api.HTMLButtonElement.formEnctype + - api.HTMLButtonElement.formMethod + - api.HTMLButtonElement.formNoValidate + - api.HTMLButtonElement.formTarget + - api.HTMLButtonElement.labels + - api.HTMLButtonElement.name + - api.HTMLButtonElement.type + - api.HTMLButtonElement.value + - html.elements.button.disabled + - html.elements.button.form + - html.elements.button.formaction + - html.elements.button.formenctype + - html.elements.button.formmethod + - html.elements.button.formnovalidate + - html.elements.button.formtarget + - html.elements.button.name + - html.elements.button.type + - html.elements.button.value diff --git a/features/calc.yml b/features/calc.yml index 9a32137ab6f..d0f3b038949 100644 --- a/features/calc.yml +++ b/features/calc.yml @@ -3,10 +3,10 @@ description: The `calc()` CSS function computes mathematical expressions such a spec: https://drafts.csswg.org/css-values-3/#calc-notation group: css caniuse: calc -status: - compute_from: css.types.calc compat_features: - - css.types.calc - - css.types.calc.gradient_color_stops - - css.types.calc.nested - - css.types.calc.number_values + core: + - css.types.calc # former compute_from + modifier: + - css.types.calc.gradient_color_stops + - css.types.calc.nested + - css.types.calc.number_values diff --git a/features/canvas-2d.yml b/features/canvas-2d.yml index 351b913ceec..2dba38af18c 100644 --- a/features/canvas-2d.yml +++ b/features/canvas-2d.yml @@ -2,5 +2,124 @@ name: 2D canvas description: The `CanvasRenderingContext2D` API is the "2d" rendering context for the `` element. It represents a flat, two-dimensional space for drawing graphics and animations. spec: https://html.spec.whatwg.org/multipage/canvas.html#2dcontext group: canvas -status: - compute_from: api.CanvasRenderingContext2D +compat_features: + core: + - api.CanvasGradient + - api.CanvasGradient.addColorStop + - api.CanvasPattern + - api.CanvasRenderingContext2D # former compute_from + - api.CanvasRenderingContext2D.arcTo + - api.CanvasRenderingContext2D.beginPath + - api.CanvasRenderingContext2D.bezierCurveTo + - api.CanvasRenderingContext2D.clearRect + - api.CanvasRenderingContext2D.clip + - api.CanvasRenderingContext2D.closePath + - api.CanvasRenderingContext2D.createLinearGradient + - api.CanvasRenderingContext2D.createPattern + - api.CanvasRenderingContext2D.createRadialGradient + - api.CanvasRenderingContext2D.drawImage + - api.CanvasRenderingContext2D.fill + - api.CanvasRenderingContext2D.fillRect + - api.CanvasRenderingContext2D.fillStyle + - api.CanvasRenderingContext2D.globalAlpha + - api.CanvasRenderingContext2D.globalCompositeOperation + - api.CanvasRenderingContext2D.lineCap + - api.CanvasRenderingContext2D.lineJoin + - api.CanvasRenderingContext2D.lineTo + - api.CanvasRenderingContext2D.lineWidth + - api.CanvasRenderingContext2D.miterLimit + - api.CanvasRenderingContext2D.moveTo + - api.CanvasRenderingContext2D.rect + - api.CanvasRenderingContext2D.restore + - api.CanvasRenderingContext2D.rotate + - api.CanvasRenderingContext2D.save + - api.CanvasRenderingContext2D.scale + - api.CanvasRenderingContext2D.shadowBlur + - api.CanvasRenderingContext2D.shadowColor + - api.CanvasRenderingContext2D.shadowOffsetX + - api.CanvasRenderingContext2D.shadowOffsetY + - api.CanvasRenderingContext2D.stroke + - api.CanvasRenderingContext2D.strokeRect + - api.CanvasRenderingContext2D.strokeStyle + - api.CanvasRenderingContext2D.translate + - api.HTMLCanvasElement.getContext.2d_context + modifier: + - api.CanvasPattern.setTransform + - api.CanvasPattern.setTransform.dommatrix + - api.CanvasRenderingContext2D.arc + - api.CanvasRenderingContext2D.canvas + - api.CanvasRenderingContext2D.clip.path_parameter + - api.CanvasRenderingContext2D.createImageData + - api.CanvasRenderingContext2D.direction + - api.CanvasRenderingContext2D.drawFocusIfNeeded + - api.CanvasRenderingContext2D.drawImage.ImageBitmap_source_image + - api.CanvasRenderingContext2D.ellipse + - api.CanvasRenderingContext2D.fill.path_parameter + - api.CanvasRenderingContext2D.fillText + - api.CanvasRenderingContext2D.getContextAttributes + - api.CanvasRenderingContext2D.getImageData + - api.CanvasRenderingContext2D.getLineDash + - api.CanvasRenderingContext2D.getTransform + - api.CanvasRenderingContext2D.imageSmoothingEnabled + - api.CanvasRenderingContext2D.isPointInPath + - api.CanvasRenderingContext2D.isPointInPath.path_parameter + - api.CanvasRenderingContext2D.isPointInStroke + - api.CanvasRenderingContext2D.isPointInStroke.path_parameter + - api.CanvasRenderingContext2D.lineDashOffset + - api.CanvasRenderingContext2D.measureText + - api.CanvasRenderingContext2D.putImageData + - api.CanvasRenderingContext2D.quadraticCurveTo + - api.CanvasRenderingContext2D.resetTransform + - api.CanvasRenderingContext2D.setLineDash + - api.CanvasRenderingContext2D.setTransform + - api.CanvasRenderingContext2D.setTransform.matrix_parameter + - api.CanvasRenderingContext2D.stroke.path_parameter + - api.CanvasRenderingContext2D.strokeText + - api.CanvasRenderingContext2D.textAlign + - api.CanvasRenderingContext2D.textBaseline + - api.CanvasRenderingContext2D.transform + - api.ImageData + - api.ImageData.ImageData + - api.ImageData.data + - api.ImageData.height + - api.ImageData.width + - api.ImageData.worker_support + - api.Path2D + - api.Path2D.Path2D + - api.Path2D.addPath + - api.Path2D.arc + - api.Path2D.arcTo + - api.Path2D.bezierCurveTo + - api.Path2D.closePath + - api.Path2D.ellipse + - api.Path2D.lineTo + - api.Path2D.moveTo + - api.Path2D.quadraticCurveTo + - api.Path2D.rect + - api.Path2D.roundRect + - api.TextMetrics + - api.TextMetrics.actualBoundingBoxAscent + - api.TextMetrics.actualBoundingBoxDescent + - api.TextMetrics.actualBoundingBoxLeft + - api.TextMetrics.actualBoundingBoxRight + - api.TextMetrics.alphabeticBaseline + - api.TextMetrics.fontBoundingBoxAscent + - api.TextMetrics.fontBoundingBoxDescent + - api.TextMetrics.hangingBaseline + - api.TextMetrics.ideographicBaseline + - api.TextMetrics.width + spare: + - api.CanvasRenderingContext2D.drawFocusIfNeeded.path_parameter + - api.CanvasRenderingContext2D.filter + - api.CanvasRenderingContext2D.font + - api.CanvasRenderingContext2D.fontKerning + - api.CanvasRenderingContext2D.fontStretch + - api.CanvasRenderingContext2D.fontVariantCaps + - api.CanvasRenderingContext2D.imageSmoothingQuality + - api.CanvasRenderingContext2D.lang + - api.CanvasRenderingContext2D.letterSpacing + - api.CanvasRenderingContext2D.textRendering + - api.CanvasRenderingContext2D.wordSpacing + - api.ImageData.colorSpace + - api.TextMetrics.emHeightAscent + - api.TextMetrics.emHeightDescent diff --git a/features/check-visibility.yml b/features/check-visibility.yml index 440333f1745..e36ac85b49b 100644 --- a/features/check-visibility.yml +++ b/features/check-visibility.yml @@ -1,12 +1,12 @@ name: checkVisibility() description: "The `checkVisibility()` method checks if an element is potentially visible, with optional parameters for the kinds of visibility to check. For example, it checks whether the element has the style `display: none`, but can also check for `visibility: hidden`." spec: https://drafts.csswg.org/cssom-view-1/#dom-element-checkvisibility -status: - compute_from: api.Element.checkVisibility compat_features: - - api.Element.checkVisibility - - api.Element.checkVisibility.options_checkOpacity_parameter - - api.Element.checkVisibility.options_checkVisibilityCSS_parameter - - api.Element.checkVisibility.options_contentVisibilityAuto_parameter - - api.Element.checkVisibility.options_opacityProperty_parameter - - api.Element.checkVisibility.options_visibilityProperty_parameter + core: + - api.Element.checkVisibility # former compute_from + - api.Element.checkVisibility.options_checkOpacity_parameter + - api.Element.checkVisibility.options_checkVisibilityCSS_parameter + modifier: + - api.Element.checkVisibility.options_contentVisibilityAuto_parameter + - api.Element.checkVisibility.options_opacityProperty_parameter + - api.Element.checkVisibility.options_visibilityProperty_parameter diff --git a/features/class-syntax.yml b/features/class-syntax.yml index 96a0bd733e4..30609d110b0 100644 --- a/features/class-syntax.yml +++ b/features/class-syntax.yml @@ -4,20 +4,20 @@ caniuse: es6-class spec: https://tc39.es/ecma262/multipage/ecmascript-language-functions-and-classes.html#sec-class-definitions group: javascript snapshot: ecmascript-2015 -status: - compute_from: javascript.classes compat_features: - - javascript.operators.super - - javascript.classes - - javascript.classes.constructor - - javascript.classes.extends - - javascript.classes.static - - javascript.statements.class - - javascript.classes.private_class_fields - - javascript.classes.private_class_fields_in - - javascript.classes.private_class_methods - - javascript.classes.public_class_fields - - javascript.classes.static.class_fields - - javascript.classes.static.initialization_blocks - - javascript.operators.class - - javascript.operators.new_target + core: + - javascript.classes # former compute_from + - javascript.classes.constructor + - javascript.classes.extends + - javascript.classes.static + - javascript.operators.class + - javascript.operators.super + modifier: + - javascript.classes.private_class_fields + - javascript.classes.private_class_fields_in + - javascript.classes.private_class_methods + - javascript.classes.public_class_fields + - javascript.classes.static.class_fields + - javascript.classes.static.initialization_blocks + - javascript.operators.new_target + - javascript.statements.class diff --git a/features/clipboard-events.yml b/features/clipboard-events.yml index 1f2de916147..f1ae08677e3 100644 --- a/features/clipboard-events.yml +++ b/features/clipboard-events.yml @@ -2,12 +2,12 @@ name: Clipboard events description: The `"copy"`, `"cut"`, and `"paste"` events fire on elements when the user starts an action with the clipboard. spec: https://w3c.github.io/clipboard-apis/#clipboard-event-interfaces group: clipboard -status: - compute_from: api.ClipboardEvent compat_features: - - api.ClipboardEvent - - api.ClipboardEvent.ClipboardEvent - - api.ClipboardEvent.clipboardData - - api.Element.copy_event - - api.Element.cut_event - - api.Element.paste_event + core: + - api.ClipboardEvent # former compute_from + - api.ClipboardEvent.clipboardData + - api.Element.copy_event + - api.Element.cut_event + - api.Element.paste_event + modifier: + - api.ClipboardEvent.ClipboardEvent diff --git a/features/compression-streams.yml b/features/compression-streams.yml index 93e53d9b672..12cef5b1d31 100644 --- a/features/compression-streams.yml +++ b/features/compression-streams.yml @@ -1,7 +1,23 @@ name: Compression streams description: The `CompressionStream` and `DecompressionStream` APIs compress and decompress data using the gzip or deflate formats. spec: https://compression.spec.whatwg.org/ -status: - compute_from: - - api.CompressionStream.CompressionStream - - api.DecompressionStream.DecompressionStream +compat_features: + core: + - api.CompressionStream + - api.CompressionStream.CompressionStream # former compute_from + - api.CompressionStream.CompressionStream.deflate + - api.CompressionStream.CompressionStream.gzip + - api.CompressionStream.readable + - api.CompressionStream.writable + - api.DecompressionStream + - api.DecompressionStream.DecompressionStream # former compute_from + - api.DecompressionStream.DecompressionStream.deflate + - api.DecompressionStream.DecompressionStream.gzip + - api.DecompressionStream.readable + - api.DecompressionStream.writable + modifier: + - api.CompressionStream.CompressionStream.deflate-raw + - api.DecompressionStream.DecompressionStream.deflate-raw + spare: + - api.CompressionStream.CompressionStream.brotli + - api.DecompressionStream.DecompressionStream.brotli diff --git a/features/conic-gradients.yml b/features/conic-gradients.yml index bbe65dfd98e..a0c0a7cfca3 100644 --- a/features/conic-gradients.yml +++ b/features/conic-gradients.yml @@ -3,10 +3,11 @@ description: The `conic-gradient()` and `repeating-conic-gradient()` CSS functio spec: https://drafts.csswg.org/css-images-4/#conic-gradients group: gradients caniuse: css-conic-gradients -status: - compute_from: css.types.gradient.conic-gradient compat_features: - - css.types.gradient.conic-gradient - - css.types.gradient.conic-gradient.doubleposition - - css.types.gradient.conic-gradient.single_color_stop - - css.types.gradient.repeating-conic-gradient + core: + - css.types.gradient.conic-gradient # former compute_from + - css.types.gradient.repeating-conic-gradient + modifier: + - css.types.gradient.conic-gradient.doubleposition + spare: + - css.types.gradient.conic-gradient.single_color_stop diff --git a/features/console.yml b/features/console.yml index 6167f808504..6c4b526ecdb 100644 --- a/features/console.yml +++ b/features/console.yml @@ -3,28 +3,28 @@ description: The `console` API logs debugging messages to the browser developmen spec: https://console.spec.whatwg.org/#console-namespace group: html-elements caniuse: console-basic -status: - compute_from: api.console compat_features: - - api.console - - api.console.assert_static - - api.console.clear_static - - api.console.countReset_static - - api.console.count_static - - api.console.debug_static - - api.console.dir_static - - api.console.dirxml_static - - api.console.error_static - - api.console.groupCollapsed_static - - api.console.groupEnd_static - - api.console.group_static - - api.console.info_static - - api.console.log_static - - api.console.substitution_strings - - api.console.table_static - - api.console.timeEnd_static - - api.console.timeLog_static - - api.console.time_static - - api.console.trace_static - - api.console.warn_static - - api.console.worker_support + core: + - api.console # former compute_from + - api.console.error_static + - api.console.info_static + - api.console.log_static + - api.console.warn_static + modifier: + - api.console.assert_static + - api.console.clear_static + - api.console.countReset_static + - api.console.count_static + - api.console.debug_static + - api.console.dir_static + - api.console.dirxml_static + - api.console.groupCollapsed_static + - api.console.groupEnd_static + - api.console.group_static + - api.console.substitution_strings + - api.console.table_static + - api.console.timeEnd_static + - api.console.timeLog_static + - api.console.time_static + - api.console.trace_static + - api.console.worker_support diff --git a/features/constructed-stylesheets.yml b/features/constructed-stylesheets.yml index 9b4e215c18b..847543a2899 100644 --- a/features/constructed-stylesheets.yml +++ b/features/constructed-stylesheets.yml @@ -3,12 +3,12 @@ description: The `CSSStyleSheet` constructor creates a new stylesheet which can spec: - https://drafts.csswg.org/cssom-1/#dom-cssstylesheet-cssstylesheet - https://drafts.csswg.org/cssom-1/#dom-documentorshadowroot-adoptedstylesheets -status: - compute_from: api.CSSStyleSheet.CSSStyleSheet compat_features: - - api.CSSStyleSheet.CSSStyleSheet - - api.CSSStyleSheet.replace - - api.CSSStyleSheet.replaceSync - - api.Document.adoptedStyleSheets - - api.ShadowRoot.adoptedStyleSheets - - api.CSSStyleSheet.CSSStyleSheet.options_baseURL_parameter + core: + - api.CSSStyleSheet.CSSStyleSheet # former compute_from + - api.CSSStyleSheet.replace + - api.CSSStyleSheet.replaceSync + - api.Document.adoptedStyleSheets + - api.ShadowRoot.adoptedStyleSheets + spare: + - api.CSSStyleSheet.CSSStyleSheet.options_baseURL_parameter diff --git a/features/contain-intrinsic-size.yml b/features/contain-intrinsic-size.yml index 479bd796831..89d75b3d65a 100644 --- a/features/contain-intrinsic-size.yml +++ b/features/contain-intrinsic-size.yml @@ -2,17 +2,17 @@ name: contain-intrinsic-size description: The `contain-intrinsic-size` CSS property sets the intrinsic size of an element. When using size containment, the browser will lay out the element as if it had a single child of this size. spec: https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override group: containment -status: - compute_from: css.properties.contain-intrinsic-size compat_features: - - css.properties.contain-intrinsic-size - - css.properties.contain-intrinsic-block-size - - css.properties.contain-intrinsic-height - - css.properties.contain-intrinsic-inline-size - - css.properties.contain-intrinsic-width - - css.properties.contain-intrinsic-size.auto_none - - css.properties.contain-intrinsic-block-size.none - - css.properties.contain-intrinsic-height.none - - css.properties.contain-intrinsic-inline-size.none - - css.properties.contain-intrinsic-size.none - - css.properties.contain-intrinsic-width.none + core: + - css.properties.contain-intrinsic-size # former compute_from + modifier: + - css.properties.contain-intrinsic-block-size + - css.properties.contain-intrinsic-block-size.none + - css.properties.contain-intrinsic-height + - css.properties.contain-intrinsic-height.none + - css.properties.contain-intrinsic-inline-size + - css.properties.contain-intrinsic-inline-size.none + - css.properties.contain-intrinsic-size.auto_none + - css.properties.contain-intrinsic-size.none + - css.properties.contain-intrinsic-width + - css.properties.contain-intrinsic-width.none diff --git a/features/container-queries.yml b/features/container-queries.yml index d2fc0c829fc..c446762d71e 100644 --- a/features/container-queries.yml +++ b/features/container-queries.yml @@ -5,18 +5,18 @@ group: container-queries caniuse: - css-container-queries - css-container-query-units -status: - compute_from: css.at-rules.container compat_features: - - api.CSSContainerRule - - api.CSSContainerRule.containerName - - api.CSSContainerRule.containerQuery - - css.at-rules.container - - css.properties.container - - css.properties.container-name - - css.properties.container-name.none - - css.properties.container-type - - css.properties.container-type.inline-size - - css.properties.container-type.normal - - css.properties.container-type.size - - css.types.length.container_query_length_units + core: + - api.CSSContainerRule + - css.at-rules.container # former compute_from + - css.properties.container + - css.properties.container-name + - css.properties.container-name.none + - css.properties.container-type + - css.properties.container-type.inline-size + - css.properties.container-type.normal + - css.properties.container-type.size + - css.types.length.container_query_length_units + modifier: + - api.CSSContainerRule.containerName + - api.CSSContainerRule.containerQuery diff --git a/features/content.yml b/features/content.yml index 7af4a873796..0857e9abfa9 100644 --- a/features/content.yml +++ b/features/content.yml @@ -2,19 +2,20 @@ name: Content description: The `content` CSS property sets the content inside of an element or pseudo-element, replacing the current value. It's often used with the `::before` and `::after` pseudo-elements to generate cosmetic content. spec: https://drafts.csswg.org/css-content-3/#content-property group: css -status: - compute_from: css.properties.content compat_features: - - css.properties.content - - css.properties.content.close-quote - - css.properties.content.element_replacement - - css.properties.content.gradient - - css.properties.content.no-close-quote - - css.properties.content.no-open-quote - - css.properties.content.none - - css.properties.content.none_applies_to_elements - - css.properties.content.open-quote - - css.properties.content.normal - - css.properties.content.url - - css.types.string - - css.types.string.unicode_escaped_characters + core: + - css.properties.content # former compute_from + - css.properties.content.close-quote + - css.properties.content.no-close-quote + - css.properties.content.no-open-quote + - css.properties.content.none + - css.properties.content.normal + - css.properties.content.open-quote + - css.properties.content.url + - css.types.string + - css.types.string.unicode_escaped_characters + modifier: + - css.properties.content.element_replacement + spare: + - css.properties.content.gradient + - css.properties.content.none_applies_to_elements diff --git a/features/cookies.yml b/features/cookies.yml index 1dd85bfee01..dc4d04b4ded 100644 --- a/features/cookies.yml +++ b/features/cookies.yml @@ -2,20 +2,21 @@ name: Cookies description: The `Set-Cookie` HTTP header stores limited amounts of data that persist across request and response, creating shared state between the browser and server. spec: https://httpwg.org/specs/rfc6265.html group: cookies -status: - compute_from: http.headers.Cookie compat_features: - - api.Document.cookie - - http.headers.Cookie - - http.headers.Set-Cookie - - http.headers.Set-Cookie.HttpOnly - - http.headers.Set-Cookie.Max-Age - - http.headers.Set-Cookie.SameSite - - http.headers.Set-Cookie.SameSite.Lax - - http.headers.Set-Cookie.SameSite.Lax_default - - http.headers.Set-Cookie.SameSite.None - - http.headers.Set-Cookie.SameSite.Strict - - http.headers.Set-Cookie.SameSite.none_requires_secure - - http.headers.Set-Cookie.SameSite.schemeful - - http.headers.Set-Cookie.host_secure_prefixes - - http.headers.Set-Cookie.http_host-http_prefixes + core: + - http.headers.Cookie # former compute_from + - http.headers.Set-Cookie + - http.headers.Set-Cookie.Max-Age + modifier: + - api.Document.cookie + - http.headers.Set-Cookie.HttpOnly + - http.headers.Set-Cookie.SameSite + - http.headers.Set-Cookie.SameSite.Lax + - http.headers.Set-Cookie.SameSite.None + - http.headers.Set-Cookie.SameSite.Strict + - http.headers.Set-Cookie.host_secure_prefixes + spare: + - http.headers.Set-Cookie.SameSite.Lax_default + - http.headers.Set-Cookie.SameSite.none_requires_secure + - http.headers.Set-Cookie.SameSite.schemeful + - http.headers.Set-Cookie.http_host-http_prefixes diff --git a/features/cors.yml b/features/cors.yml index 06e8023fa41..74582878496 100644 --- a/features/cors.yml +++ b/features/cors.yml @@ -3,18 +3,19 @@ description: Cross-Origin Resource Sharing is an HTTP-header based mechanism tha spec: https://fetch.spec.whatwg.org/#http-cors-protocol group: security caniuse: cors -status: - compute_from: http.headers.Access-Control-Allow-Origin compat_features: - - http.headers.Access-Control-Allow-Credentials - - http.headers.Access-Control-Allow-Headers - - http.headers.Access-Control-Allow-Headers.authorization_not_covered_by_wildcard - - http.headers.Access-Control-Allow-Headers.wildcard - - http.headers.Access-Control-Allow-Methods - - http.headers.Access-Control-Allow-Methods.wildcard - - http.headers.Access-Control-Allow-Origin - - http.headers.Access-Control-Expose-Headers - - http.headers.Access-Control-Expose-Headers.wildcard - - http.headers.Access-Control-Max-Age - - http.headers.Access-Control-Request-Headers - - http.headers.Access-Control-Request-Method + core: + - http.headers.Access-Control-Allow-Credentials + - http.headers.Access-Control-Allow-Headers + - http.headers.Access-Control-Allow-Methods + - http.headers.Access-Control-Allow-Origin # former compute_from + - http.headers.Access-Control-Expose-Headers + - http.headers.Access-Control-Max-Age + - http.headers.Access-Control-Request-Headers + - http.headers.Access-Control-Request-Method + modifier: + - http.headers.Access-Control-Allow-Headers.wildcard + - http.headers.Access-Control-Allow-Methods.wildcard + - http.headers.Access-Control-Expose-Headers.wildcard + spare: + - http.headers.Access-Control-Allow-Headers.authorization_not_covered_by_wildcard diff --git a/features/counter-style.yml b/features/counter-style.yml index 1f22f0f5a58..77775ad5ab1 100644 --- a/features/counter-style.yml +++ b/features/counter-style.yml @@ -3,29 +3,29 @@ description: The `@counter-style` CSS at-rule sets custom counter styles for lis spec: https://drafts.csswg.org/css-counter-styles-3/ group: counters caniuse: css-at-counter-style -status: - compute_from: css.at-rules.counter-style compat_features: - - css.at-rules.counter-style - - css.at-rules.counter-style.additive-symbols - - css.at-rules.counter-style.fallback - - css.at-rules.counter-style.negative - - css.at-rules.counter-style.pad - - css.at-rules.counter-style.prefix - - css.at-rules.counter-style.range - - css.at-rules.counter-style.suffix - - css.at-rules.counter-style.system - - api.CSSCounterStyleRule - - api.CSSCounterStyleRule.additiveSymbols - - api.CSSCounterStyleRule.fallback - - api.CSSCounterStyleRule.name - - api.CSSCounterStyleRule.negative - - api.CSSCounterStyleRule.pad - - api.CSSCounterStyleRule.prefix - - api.CSSCounterStyleRule.range - - api.CSSCounterStyleRule.system - - api.CSSCounterStyleRule.suffix - - css.at-rules.counter-style.symbols - - api.CSSCounterStyleRule.symbols - - css.at-rules.counter-style.speak-as - - api.CSSCounterStyleRule.speakAs + core: + - api.CSSCounterStyleRule + - api.CSSCounterStyleRule.additiveSymbols + - api.CSSCounterStyleRule.fallback + - api.CSSCounterStyleRule.name + - api.CSSCounterStyleRule.negative + - api.CSSCounterStyleRule.pad + - api.CSSCounterStyleRule.prefix + - api.CSSCounterStyleRule.range + - api.CSSCounterStyleRule.speakAs + - api.CSSCounterStyleRule.suffix + - api.CSSCounterStyleRule.symbols + - api.CSSCounterStyleRule.system + - css.at-rules.counter-style # former compute_from + - css.at-rules.counter-style.additive-symbols + - css.at-rules.counter-style.fallback + - css.at-rules.counter-style.negative + - css.at-rules.counter-style.pad + - css.at-rules.counter-style.prefix + - css.at-rules.counter-style.range + - css.at-rules.counter-style.suffix + - css.at-rules.counter-style.system + spare: + - css.at-rules.counter-style.speak-as + - css.at-rules.counter-style.symbols diff --git a/features/counters.yml b/features/counters.yml index d6dffbbdf38..ff2c40f67f8 100644 --- a/features/counters.yml +++ b/features/counters.yml @@ -3,17 +3,16 @@ description: The `counter-reset` and `counter-increment` CSS properties and the spec: https://drafts.csswg.org/css-lists-3/#auto-numbering caniuse: css-counters group: counters -status: - compute_from: - - css.properties.counter-increment - - css.properties.counter-reset compat_features: - - css.properties.counter-increment - - css.properties.counter-increment.list-item - - css.properties.counter-increment.none - - css.properties.counter-reset - - css.properties.counter-reset.list-item - - css.properties.counter-reset.none - - css.properties.counter-reset.reset_does_not_affect_siblings - - css.types.counters - - css.types.counter + core: + - css.properties.counter-increment # former compute_from + - css.properties.counter-reset # former compute_from + - css.types.counter + modifier: + - css.properties.counter-increment.list-item + - css.properties.counter-increment.none + - css.properties.counter-reset.none + - css.types.counters + spare: + - css.properties.counter-reset.list-item + - css.properties.counter-reset.reset_does_not_affect_siblings diff --git a/features/createimagebitmap.yml b/features/createimagebitmap.yml index bd56d7cc6c2..fa49e5dd667 100644 --- a/features/createimagebitmap.yml +++ b/features/createimagebitmap.yml @@ -2,24 +2,20 @@ name: createImageBitmap description: The `createImageBitmap()` global method creates an `ImageBitmap` object from a source such as an image, SVG, blob, or canvas. An `ImageBitmap` object represents pixel data that can be drawn to a canvas with lower latency than other types, such as `ImageData`. spec: https://html.spec.whatwg.org/multipage/imagebitmap-and-animations.html#imagebitmap caniuse: createimagebitmap -status: - compute_from: - - api.createImageBitmap - - api.createImageBitmap.options_resizeWidth_parameter - - api.createImageBitmap.options_resizeHeight_parameter - - api.createImageBitmap.options_premultiplyAlpha_parameter - - api.createImageBitmap.svgimageelement_as_source_image compat_features: - - api.createImageBitmap - - api.createImageBitmap.options_colorSpaceConversion_parameter - - api.createImageBitmap.options_imageOrientation_parameter - - api.createImageBitmap.options_imageOrientation_parameter.from-image - - api.createImageBitmap.options_premultiplyAlpha_parameter - - api.createImageBitmap.options_resizeHeight_parameter - - api.createImageBitmap.options_resizeQuality_parameter - - api.createImageBitmap.options_resizeWidth_parameter - - api.createImageBitmap.svgimageelement_as_source_image - - api.ImageBitmap - - api.ImageBitmap.close - - api.ImageBitmap.height - - api.ImageBitmap.width + core: + - api.ImageBitmap + - api.ImageBitmap.close + - api.ImageBitmap.height + - api.ImageBitmap.width + - api.createImageBitmap # former compute_from + - api.createImageBitmap.options_colorSpaceConversion_parameter + - api.createImageBitmap.options_imageOrientation_parameter + - api.createImageBitmap.options_premultiplyAlpha_parameter # former compute_from + - api.createImageBitmap.options_resizeHeight_parameter # former compute_from + - api.createImageBitmap.options_resizeWidth_parameter # former compute_from + - api.createImageBitmap.svgimageelement_as_source_image # former compute_from + modifier: + - api.createImageBitmap.options_resizeQuality_parameter + spare: + - api.createImageBitmap.options_imageOrientation_parameter.from-image diff --git a/features/css-typed-om.yml b/features/css-typed-om.yml index ba1aec7def7..fabfaf1cd40 100644 --- a/features/css-typed-om.yml +++ b/features/css-typed-om.yml @@ -2,138 +2,138 @@ name: CSS typed object model description: The `CSSStyleValue` and its subclasses represent CSS values as distinct types instead of only strings. Also known as typed OM. spec: https://drafts.css-houdini.org/css-typed-om-1/ group: cssom -status: - compute_from: api.Element.computedStyleMap compat_features: - - api.CSSStyleValue - - api.CSSStyleValue.parse_static - - api.CSSStyleValue.parseAll_static - - api.CSSStyleValue.toString - - api.StylePropertyMapReadOnly - - api.StylePropertyMapReadOnly.entries - - api.StylePropertyMapReadOnly.forEach - - api.StylePropertyMapReadOnly.get - - api.StylePropertyMapReadOnly.getAll - - api.StylePropertyMapReadOnly.has - - api.StylePropertyMapReadOnly.keys - - api.StylePropertyMapReadOnly.size - - api.StylePropertyMapReadOnly.values - - api.StylePropertyMapReadOnly.@@iterator - - api.StylePropertyMap - - api.StylePropertyMap.append - - api.StylePropertyMap.clear - - api.StylePropertyMap.delete - - api.StylePropertyMap.set - - api.Element.computedStyleMap - - api.CSSStyleRule.styleMap - - api.HTMLElement.attributeStyleMap - - api.CSSUnparsedValue - - api.CSSUnparsedValue.CSSUnparsedValue - - api.CSSUnparsedValue.entries - - api.CSSUnparsedValue.forEach - - api.CSSUnparsedValue.keys - - api.CSSUnparsedValue.length - - api.CSSUnparsedValue.values - - api.CSSUnparsedValue.@@iterator - - api.CSSVariableReferenceValue - - api.CSSVariableReferenceValue.CSSVariableReferenceValue - - api.CSSVariableReferenceValue.fallback - - api.CSSVariableReferenceValue.variable - - api.CSSKeywordValue - - api.CSSKeywordValue.CSSKeywordValue - - api.CSSKeywordValue.value - - api.CSSNumericValue - - api.CSSNumericValue.add - - api.CSSNumericValue.div - - api.CSSNumericValue.equals - - api.CSSNumericValue.max - - api.CSSNumericValue.min - - api.CSSNumericValue.mul - - api.CSSNumericValue.parse_static - - api.CSSNumericValue.sub - - api.CSSNumericValue.to - - api.CSSNumericValue.toSum - - api.CSSNumericValue.type - - api.CSSUnitValue - - api.CSSUnitValue.CSSUnitValue - - api.CSSUnitValue.unit - - api.CSSUnitValue.value - - api.CSSMathValue - - api.CSSMathValue.operator - - api.CSSMathSum - - api.CSSMathSum.CSSMathSum - - api.CSSMathSum.values - - api.CSSMathProduct - - api.CSSMathProduct.CSSMathProduct - - api.CSSMathProduct.values - - api.CSSMathNegate - - api.CSSMathNegate.CSSMathNegate - - api.CSSMathNegate.value - - api.CSSMathInvert - - api.CSSMathInvert.CSSMathInvert - - api.CSSMathInvert.value - - api.CSSMathMin - - api.CSSMathMin.CSSMathMin - - api.CSSMathMin.values - - api.CSSMathMax - - api.CSSMathMax.CSSMathMax - - api.CSSMathMax.values - - api.CSSMathClamp - - api.CSSMathClamp.CSSMathClamp - - api.CSSMathClamp.lower - - api.CSSMathClamp.upper - - api.CSSMathClamp.value - - api.CSSNumericArray - - api.CSSNumericArray.entries - - api.CSSNumericArray.forEach - - api.CSSNumericArray.keys - - api.CSSNumericArray.length - - api.CSSNumericArray.values - - api.CSSNumericArray.@@iterator - - api.CSSTransformValue - - api.CSSTransformValue.CSSTransformValue - - api.CSSTransformValue.entries - - api.CSSTransformValue.forEach - - api.CSSTransformValue.is2D - - api.CSSTransformValue.keys - - api.CSSTransformValue.length - - api.CSSTransformValue.toMatrix - - api.CSSTransformValue.values - - api.CSSTransformValue.@@iterator - - api.CSSTransformComponent - - api.CSSTransformComponent.is2D - - api.CSSTransformComponent.toMatrix - - api.CSSTransformComponent.toString - - api.CSSTranslate - - api.CSSTranslate.CSSTranslate - - api.CSSTranslate.x - - api.CSSTranslate.y - - api.CSSTranslate.z - - api.CSSRotate - - api.CSSRotate.CSSRotate - - api.CSSRotate.angle - - api.CSSRotate.x - - api.CSSRotate.y - - api.CSSRotate.z - - api.CSSScale - - api.CSSScale.CSSScale - - api.CSSScale.x - - api.CSSScale.y - - api.CSSScale.z - - api.CSSSkew - - api.CSSSkew.CSSSkew - - api.CSSSkew.ax - - api.CSSSkew.ay - - api.CSSSkewX - - api.CSSSkewX.CSSSkewX - - api.CSSSkewX.ax - - api.CSSSkewY - - api.CSSSkewY.CSSSkewY - - api.CSSSkewY.ay - - api.CSSPerspective - - api.CSSPerspective.CSSPerspective - - api.CSSPerspective.length - - api.CSSMatrixComponent - - api.CSSMatrixComponent.CSSMatrixComponent - - api.CSSMatrixComponent.matrix - - api.CSSImageValue + core: + - api.CSSImageValue + - api.CSSKeywordValue + - api.CSSKeywordValue.CSSKeywordValue + - api.CSSKeywordValue.value + - api.CSSMathInvert + - api.CSSMathInvert.CSSMathInvert + - api.CSSMathInvert.value + - api.CSSMathMax + - api.CSSMathMax.values + - api.CSSMathMin + - api.CSSMathMin.values + - api.CSSMathNegate + - api.CSSMathNegate.CSSMathNegate + - api.CSSMathNegate.value + - api.CSSMathProduct + - api.CSSMathProduct.values + - api.CSSMathSum + - api.CSSMathSum.values + - api.CSSMathValue + - api.CSSMathValue.operator + - api.CSSMatrixComponent + - api.CSSMatrixComponent.CSSMatrixComponent + - api.CSSMatrixComponent.matrix + - api.CSSNumericArray + - api.CSSNumericArray.@@iterator + - api.CSSNumericArray.entries + - api.CSSNumericArray.forEach + - api.CSSNumericArray.keys + - api.CSSNumericArray.length + - api.CSSNumericArray.values + - api.CSSNumericValue + - api.CSSNumericValue.add + - api.CSSNumericValue.div + - api.CSSNumericValue.equals + - api.CSSNumericValue.max + - api.CSSNumericValue.min + - api.CSSNumericValue.mul + - api.CSSNumericValue.parse_static + - api.CSSNumericValue.sub + - api.CSSNumericValue.to + - api.CSSNumericValue.toSum + - api.CSSNumericValue.type + - api.CSSPerspective + - api.CSSPerspective.CSSPerspective + - api.CSSPerspective.length + - api.CSSRotate + - api.CSSRotate.CSSRotate + - api.CSSRotate.angle + - api.CSSRotate.x + - api.CSSRotate.y + - api.CSSRotate.z + - api.CSSScale + - api.CSSScale.CSSScale + - api.CSSScale.x + - api.CSSScale.y + - api.CSSScale.z + - api.CSSSkew + - api.CSSSkew.CSSSkew + - api.CSSSkew.ax + - api.CSSSkew.ay + - api.CSSSkewX + - api.CSSSkewX.CSSSkewX + - api.CSSSkewX.ax + - api.CSSSkewY + - api.CSSSkewY.CSSSkewY + - api.CSSSkewY.ay + - api.CSSStyleRule.styleMap + - api.CSSStyleValue + - api.CSSStyleValue.parseAll_static + - api.CSSStyleValue.parse_static + - api.CSSStyleValue.toString + - api.CSSTransformComponent + - api.CSSTransformComponent.is2D + - api.CSSTransformComponent.toMatrix + - api.CSSTransformComponent.toString + - api.CSSTransformValue + - api.CSSTransformValue.@@iterator + - api.CSSTransformValue.CSSTransformValue + - api.CSSTransformValue.entries + - api.CSSTransformValue.forEach + - api.CSSTransformValue.is2D + - api.CSSTransformValue.keys + - api.CSSTransformValue.length + - api.CSSTransformValue.toMatrix + - api.CSSTransformValue.values + - api.CSSTranslate + - api.CSSTranslate.CSSTranslate + - api.CSSTranslate.x + - api.CSSTranslate.y + - api.CSSTranslate.z + - api.CSSUnitValue + - api.CSSUnitValue.CSSUnitValue + - api.CSSUnitValue.unit + - api.CSSUnitValue.value + - api.CSSUnparsedValue + - api.CSSUnparsedValue.@@iterator + - api.CSSUnparsedValue.CSSUnparsedValue + - api.CSSUnparsedValue.entries + - api.CSSUnparsedValue.forEach + - api.CSSUnparsedValue.keys + - api.CSSUnparsedValue.length + - api.CSSUnparsedValue.values + - api.CSSVariableReferenceValue + - api.CSSVariableReferenceValue.CSSVariableReferenceValue + - api.CSSVariableReferenceValue.fallback + - api.CSSVariableReferenceValue.variable + - api.Element.computedStyleMap # former compute_from + - api.HTMLElement.attributeStyleMap + - api.StylePropertyMap + - api.StylePropertyMap.append + - api.StylePropertyMap.clear + - api.StylePropertyMap.delete + - api.StylePropertyMap.set + - api.StylePropertyMapReadOnly + - api.StylePropertyMapReadOnly.@@iterator + - api.StylePropertyMapReadOnly.entries + - api.StylePropertyMapReadOnly.forEach + - api.StylePropertyMapReadOnly.get + - api.StylePropertyMapReadOnly.getAll + - api.StylePropertyMapReadOnly.has + - api.StylePropertyMapReadOnly.keys + - api.StylePropertyMapReadOnly.size + - api.StylePropertyMapReadOnly.values + modifier: + - api.CSSMathClamp + - api.CSSMathClamp.CSSMathClamp + - api.CSSMathClamp.lower + - api.CSSMathClamp.upper + - api.CSSMathClamp.value + - api.CSSMathMax.CSSMathMax + - api.CSSMathMin.CSSMathMin + - api.CSSMathProduct.CSSMathProduct + - api.CSSMathSum.CSSMathSum diff --git a/features/data-urls.yml b/features/data-urls.yml index 9b7e8933664..a8054751c3e 100644 --- a/features/data-urls.yml +++ b/features/data-urls.yml @@ -1,11 +1,11 @@ name: Data URLs description: Data URLs are URLs that start with the `data:` scheme and which directly contain data rather than point to remote resources. spec: https://www.rfc-editor.org/rfc/rfc2397 -status: - compute_from: http.data-url compat_features: - - http.data-url - - http.data-url.css_files - - http.data-url.html_files - - http.data-url.js_files - - http.data-url.top_level_navigation_blocked + core: + - http.data-url # former compute_from + - http.data-url.css_files + - http.data-url.js_files + modifier: + - http.data-url.html_files + - http.data-url.top_level_navigation_blocked diff --git a/features/date.yml b/features/date.yml index dc69c51a1bb..4d45d016c4e 100644 --- a/features/date.yml +++ b/features/date.yml @@ -2,54 +2,54 @@ name: Date description: The `Date` object represents a single moment in time. spec: https://tc39.es/ecma262/multipage/numbers-and-dates.html#sec-date-objects group: primitive-types -status: - compute_from: javascript.builtins.Date compat_features: - - javascript.builtins.Date - - javascript.builtins.Date.Date - - javascript.builtins.Date.UTC - - javascript.builtins.Date.UTC.optional_monthIndex - - javascript.builtins.Date.getDate - - javascript.builtins.Date.getDay - - javascript.builtins.Date.getFullYear - - javascript.builtins.Date.getHours - - javascript.builtins.Date.getMilliseconds - - javascript.builtins.Date.getMinutes - - javascript.builtins.Date.getMonth - - javascript.builtins.Date.getSeconds - - javascript.builtins.Date.getTime - - javascript.builtins.Date.getTimezoneOffset - - javascript.builtins.Date.getUTCDate - - javascript.builtins.Date.getUTCDay - - javascript.builtins.Date.getUTCFullYear - - javascript.builtins.Date.getUTCHours - - javascript.builtins.Date.getUTCMilliseconds - - javascript.builtins.Date.getUTCMinutes - - javascript.builtins.Date.getUTCMonth - - javascript.builtins.Date.getUTCSeconds - - javascript.builtins.Date.now - - javascript.builtins.Date.parse - - javascript.builtins.Date.parse.iso_8601 - - javascript.builtins.Date.setDate - - javascript.builtins.Date.setFullYear - - javascript.builtins.Date.setHours - - javascript.builtins.Date.setMilliseconds - - javascript.builtins.Date.setMinutes - - javascript.builtins.Date.setMonth - - javascript.builtins.Date.setSeconds - - javascript.builtins.Date.setTime - - javascript.builtins.Date.setUTCDate - - javascript.builtins.Date.setUTCFullYear - - javascript.builtins.Date.setUTCHours - - javascript.builtins.Date.setUTCMilliseconds - - javascript.builtins.Date.setUTCMinutes - - javascript.builtins.Date.setUTCMonth - - javascript.builtins.Date.setUTCSeconds - - javascript.builtins.Date.toDateString - - javascript.builtins.Date.toISOString - - javascript.builtins.Date.toJSON - - javascript.builtins.Date.toString - - javascript.builtins.Date.toTimeString - - javascript.builtins.Date.toUTCString - - javascript.builtins.Date.valueOf - - javascript.builtins.Date.@@toPrimitive + core: + - javascript.builtins.Date # former compute_from + - javascript.builtins.Date.Date + - javascript.builtins.Date.UTC + - javascript.builtins.Date.getDate + - javascript.builtins.Date.getDay + - javascript.builtins.Date.getFullYear + - javascript.builtins.Date.getHours + - javascript.builtins.Date.getMilliseconds + - javascript.builtins.Date.getMinutes + - javascript.builtins.Date.getMonth + - javascript.builtins.Date.getSeconds + - javascript.builtins.Date.getTime + - javascript.builtins.Date.getTimezoneOffset + - javascript.builtins.Date.getUTCDate + - javascript.builtins.Date.getUTCDay + - javascript.builtins.Date.getUTCFullYear + - javascript.builtins.Date.getUTCHours + - javascript.builtins.Date.getUTCMilliseconds + - javascript.builtins.Date.getUTCMinutes + - javascript.builtins.Date.getUTCMonth + - javascript.builtins.Date.getUTCSeconds + - javascript.builtins.Date.parse + - javascript.builtins.Date.setDate + - javascript.builtins.Date.setFullYear + - javascript.builtins.Date.setHours + - javascript.builtins.Date.setMilliseconds + - javascript.builtins.Date.setMinutes + - javascript.builtins.Date.setMonth + - javascript.builtins.Date.setSeconds + - javascript.builtins.Date.setTime + - javascript.builtins.Date.setUTCDate + - javascript.builtins.Date.setUTCFullYear + - javascript.builtins.Date.setUTCHours + - javascript.builtins.Date.setUTCMilliseconds + - javascript.builtins.Date.setUTCMinutes + - javascript.builtins.Date.setUTCMonth + - javascript.builtins.Date.setUTCSeconds + - javascript.builtins.Date.toDateString + - javascript.builtins.Date.toString + - javascript.builtins.Date.toTimeString + - javascript.builtins.Date.toUTCString + - javascript.builtins.Date.valueOf + modifier: + - javascript.builtins.Date.@@toPrimitive + - javascript.builtins.Date.UTC.optional_monthIndex + - javascript.builtins.Date.now + - javascript.builtins.Date.parse.iso_8601 + - javascript.builtins.Date.toISOString + - javascript.builtins.Date.toJSON diff --git a/features/details.yml b/features/details.yml index fbff70d22eb..ed002e9d66c 100644 --- a/features/details.yml +++ b/features/details.yml @@ -3,14 +3,15 @@ description: The `
` element is a disclosure widget which can be expande spec: https://html.spec.whatwg.org/multipage/interactive-elements.html#the-details-element caniuse: details group: html-elements -status: - compute_from: html.elements.details compat_features: - - api.HTMLDetailsElement - - api.HTMLDetailsElement.open - - api.HTMLElement.toggle_event - - api.HTMLElement.toggle_event.details_elements - - html.elements.details - - html.elements.details.open - - html.elements.summary - - html.elements.summary.display_list_item + core: + - api.HTMLDetailsElement + - api.HTMLDetailsElement.open + - html.elements.details # former compute_from + - html.elements.details.open + - html.elements.summary + modifier: + - api.HTMLElement.toggle_event + - api.HTMLElement.toggle_event.details_elements + spare: + - html.elements.summary.display_list_item diff --git a/features/device-orientation-events.yml b/features/device-orientation-events.yml index 23b4811472c..612c2ee5846 100644 --- a/features/device-orientation-events.yml +++ b/features/device-orientation-events.yml @@ -3,31 +3,31 @@ description: The `DeviceMotion` and `DeviceOrientation` events report the moveme spec: https://w3c.github.io/deviceorientation/ caniuse: deviceorientation group: sensors -status: - compute_from: api.DeviceMotionEvent compat_features: - - api.DeviceMotionEvent - - api.DeviceMotionEvent.DeviceMotionEvent - - api.DeviceMotionEvent.acceleration - - api.DeviceMotionEvent.accelerationIncludingGravity - - api.DeviceMotionEvent.interval - - api.DeviceMotionEvent.requestPermission_static - - api.DeviceMotionEvent.rotationRate - - api.DeviceMotionEventAcceleration - - api.DeviceMotionEventAcceleration.x - - api.DeviceMotionEventAcceleration.y - - api.DeviceMotionEventAcceleration.z - - api.DeviceMotionEventRotationRate - - api.DeviceMotionEventRotationRate.alpha - - api.DeviceMotionEventRotationRate.beta - - api.DeviceMotionEventRotationRate.gamma - - api.DeviceOrientationEvent - - api.DeviceOrientationEvent.DeviceOrientationEvent - - api.DeviceOrientationEvent.absolute - - api.DeviceOrientationEvent.alpha - - api.DeviceOrientationEvent.beta - - api.DeviceOrientationEvent.gamma - - api.DeviceOrientationEvent.requestPermission_static - - api.Window.devicemotion_event - - api.Window.deviceorientation_event - - api.Window.deviceorientationabsolute_event + core: + - api.DeviceMotionEvent # former compute_from + - api.DeviceMotionEvent.acceleration + - api.DeviceMotionEvent.accelerationIncludingGravity + - api.DeviceMotionEvent.interval + - api.DeviceMotionEvent.rotationRate + - api.DeviceOrientationEvent + - api.DeviceOrientationEvent.alpha + - api.DeviceOrientationEvent.beta + - api.DeviceOrientationEvent.gamma + - api.Window.devicemotion_event + - api.Window.deviceorientation_event + spare: + - api.DeviceMotionEvent.DeviceMotionEvent + - api.DeviceMotionEvent.requestPermission_static + - api.DeviceMotionEventAcceleration + - api.DeviceMotionEventAcceleration.x + - api.DeviceMotionEventAcceleration.y + - api.DeviceMotionEventAcceleration.z + - api.DeviceMotionEventRotationRate + - api.DeviceMotionEventRotationRate.alpha + - api.DeviceMotionEventRotationRate.beta + - api.DeviceMotionEventRotationRate.gamma + - api.DeviceOrientationEvent.DeviceOrientationEvent + - api.DeviceOrientationEvent.absolute + - api.DeviceOrientationEvent.requestPermission_static + - api.Window.deviceorientationabsolute_event diff --git a/features/dialog.yml b/features/dialog.yml index 483b036f69c..9ebbb96496e 100644 --- a/features/dialog.yml +++ b/features/dialog.yml @@ -3,18 +3,18 @@ description: The `` HTML element represents a modal or non-modal dialog spec: https://html.spec.whatwg.org/multipage/interactive-elements.html#the-dialog-element group: html-elements caniuse: dialog -status: - compute_from: html.elements.dialog compat_features: - - api.HTMLDialogElement - - api.HTMLDialogElement.cancel_event - - api.HTMLDialogElement.close - - api.HTMLDialogElement.close_event - - api.HTMLDialogElement.open - - api.HTMLDialogElement.returnValue - - api.HTMLDialogElement.show - - api.HTMLDialogElement.showModal - - api.HTMLElement.beforetoggle_event.dialog_elements - - api.HTMLElement.toggle_event.dialog_elements - - html.elements.dialog - - html.elements.dialog.open + core: + - api.HTMLDialogElement + - api.HTMLDialogElement.cancel_event + - api.HTMLDialogElement.close + - api.HTMLDialogElement.close_event + - api.HTMLDialogElement.open + - api.HTMLDialogElement.returnValue + - api.HTMLDialogElement.show + - api.HTMLDialogElement.showModal + - html.elements.dialog # former compute_from + - html.elements.dialog.open + spare: + - api.HTMLElement.beforetoggle_event.dialog_elements + - api.HTMLElement.toggle_event.dialog_elements diff --git a/features/display-list-item.yml b/features/display-list-item.yml index e4eb631ece9..7bfdbb7d076 100644 --- a/features/display-list-item.yml +++ b/features/display-list-item.yml @@ -4,8 +4,8 @@ spec: https://drafts.csswg.org/css-display-3/#list-items group: - css - lists -status: - compute_from: css.properties.display.list-item compat_features: - - css.properties.display.list-item - - css.properties.display.list-item.legend-support + core: + - css.properties.display.list-item # former compute_from + spare: + - css.properties.display.list-item.legend-support diff --git a/features/display.yml b/features/display.yml index 884137b035a..d20c9c5f5ce 100644 --- a/features/display.yml +++ b/features/display.yml @@ -3,12 +3,12 @@ description: The `display` CSS property sets the display behavior of an element' spec: https://drafts.csswg.org/css-display-3/#the-display-properties group: css caniuse: inline-block -status: - compute_from: css.properties.display compat_features: - - css.properties.display - - css.properties.display.none - - css.properties.display.none.option_is_hidden - - css.properties.display.block - - css.properties.display.inline - - css.properties.display.inline-block + core: + - css.properties.display # former compute_from + - css.properties.display.block + - css.properties.display.inline + - css.properties.display.inline-block + - css.properties.display.none + spare: + - css.properties.display.none.option_is_hidden diff --git a/features/div.yml b/features/div.yml index f8f18a3d640..41e4b754a57 100644 --- a/features/div.yml +++ b/features/div.yml @@ -2,8 +2,8 @@ name:
description: The `
` HTML element is the generic container for content. spec: https://html.spec.whatwg.org/multipage/grouping-content.html#the-div-element group: html-elements -status: - compute_from: html.elements.div compat_features: - - api.HTMLDivElement - - html.elements.div + core: + - html.elements.div # former compute_from + modifier: + - api.HTMLDivElement diff --git a/features/document-caretpositionfrompoint.yml b/features/document-caretpositionfrompoint.yml index 66b314ebad4..ac665cac05f 100644 --- a/features/document-caretpositionfrompoint.yml +++ b/features/document-caretpositionfrompoint.yml @@ -1,12 +1,12 @@ name: document.caretPositionFromPoint() description: The `document.caretPositionFromPoint()` method finds an insertion point, represented by a DOM node and an offset within that node, for given coordinates in the viewport. spec: https://drafts.csswg.org/cssom-view-1/#dom-document-caretpositionfrompoint -status: - compute_from: api.Document.caretPositionFromPoint compat_features: - - api.CaretPosition - - api.CaretPosition.getClientRect - - api.CaretPosition.offset - - api.CaretPosition.offsetNode - - api.Document.caretPositionFromPoint - - api.Document.caretPositionFromPoint.options_parameter + core: + - api.CaretPosition + - api.CaretPosition.offset + - api.CaretPosition.offsetNode + - api.Document.caretPositionFromPoint # former compute_from + modifier: + - api.CaretPosition.getClientRect + - api.Document.caretPositionFromPoint.options_parameter diff --git a/features/dom-geometry.yml b/features/dom-geometry.yml index 7d96c189a3d..4cc1b8fad0a 100644 --- a/features/dom-geometry.yml +++ b/features/dom-geometry.yml @@ -1,146 +1,146 @@ name: DOM Geometry description: The `DOMMatrix`, `DOMPoint`, `DOMQuad` and `DOMRect` APIs represent points, rectangles, quadrilaterals and transformation matrices within JavaScript. They can be used in transformations in CSS, ``, and SVG. spec: https://drafts.csswg.org/geometry-1/ -status: - compute_from: api.DOMMatrix compat_features: - - api.DOMMatrix - - api.DOMMatrix.DOMMatrix - - api.DOMMatrix.worker_support - - api.DOMMatrix.a - - api.DOMMatrix.b - - api.DOMMatrix.c - - api.DOMMatrix.d - - api.DOMMatrix.e - - api.DOMMatrix.f - - api.DOMMatrix.fromFloat32Array_static - - api.DOMMatrix.fromFloat64Array_static - - api.DOMMatrix.fromMatrix_static - - api.DOMMatrix.invertSelf - - api.DOMMatrix.m11 - - api.DOMMatrix.m12 - - api.DOMMatrix.m13 - - api.DOMMatrix.m14 - - api.DOMMatrix.m21 - - api.DOMMatrix.m22 - - api.DOMMatrix.m23 - - api.DOMMatrix.m24 - - api.DOMMatrix.m31 - - api.DOMMatrix.m32 - - api.DOMMatrix.m33 - - api.DOMMatrix.m34 - - api.DOMMatrix.m41 - - api.DOMMatrix.m42 - - api.DOMMatrix.m43 - - api.DOMMatrix.m44 - - api.DOMMatrix.multiplySelf - - api.DOMMatrix.preMultiplySelf - - api.DOMMatrix.rotateAxisAngleSelf - - api.DOMMatrix.rotateFromVectorSelf - - api.DOMMatrix.rotateSelf - - api.DOMMatrix.scale3dSelf - - api.DOMMatrix.scaleSelf - - api.DOMMatrix.setMatrixValue - - api.DOMMatrix.skewXSelf - - api.DOMMatrix.skewYSelf - - api.DOMMatrix.translateSelf - - api.DOMMatrixReadOnly - - api.DOMMatrixReadOnly.DOMMatrixReadOnly - - api.DOMMatrixReadOnly.worker_support - - api.DOMMatrixReadOnly.a - - api.DOMMatrixReadOnly.b - - api.DOMMatrixReadOnly.c - - api.DOMMatrixReadOnly.d - - api.DOMMatrixReadOnly.e - - api.DOMMatrixReadOnly.f - - api.DOMMatrixReadOnly.flipX - - api.DOMMatrixReadOnly.flipY - - api.DOMMatrixReadOnly.fromFloat32Array_static - - api.DOMMatrixReadOnly.fromFloat64Array_static - - api.DOMMatrixReadOnly.fromMatrix_static - - api.DOMMatrixReadOnly.inverse - - api.DOMMatrixReadOnly.is2D - - api.DOMMatrixReadOnly.isIdentity - - api.DOMMatrixReadOnly.m11 - - api.DOMMatrixReadOnly.m12 - - api.DOMMatrixReadOnly.m13 - - api.DOMMatrixReadOnly.m14 - - api.DOMMatrixReadOnly.m21 - - api.DOMMatrixReadOnly.m22 - - api.DOMMatrixReadOnly.m23 - - api.DOMMatrixReadOnly.m24 - - api.DOMMatrixReadOnly.m31 - - api.DOMMatrixReadOnly.m32 - - api.DOMMatrixReadOnly.m33 - - api.DOMMatrixReadOnly.m34 - - api.DOMMatrixReadOnly.m41 - - api.DOMMatrixReadOnly.m42 - - api.DOMMatrixReadOnly.m43 - - api.DOMMatrixReadOnly.m44 - - api.DOMMatrixReadOnly.multiply - - api.DOMMatrixReadOnly.rotate - - api.DOMMatrixReadOnly.rotateAxisAngle - - api.DOMMatrixReadOnly.rotateFromVector - - api.DOMMatrixReadOnly.scale - - api.DOMMatrixReadOnly.scale3d - - api.DOMMatrixReadOnly.skewX - - api.DOMMatrixReadOnly.skewY - - api.DOMMatrixReadOnly.toFloat32Array - - api.DOMMatrixReadOnly.toFloat64Array - - api.DOMMatrixReadOnly.toJSON - - api.DOMMatrixReadOnly.toString - - api.DOMMatrixReadOnly.transformPoint - - api.DOMMatrixReadOnly.translate - - api.DOMPoint - - api.DOMPoint.DOMPoint - - api.DOMPoint.worker_support - - api.DOMPoint.fromPoint_static - - api.DOMPoint.w - - api.DOMPoint.x - - api.DOMPoint.y - - api.DOMPoint.z - - api.DOMPointReadOnly - - api.DOMPointReadOnly.DOMPointReadOnly - - api.DOMPointReadOnly.worker_support - - api.DOMPointReadOnly.fromPoint_static - - api.DOMPointReadOnly.matrixTransform - - api.DOMPointReadOnly.toJSON - - api.DOMPointReadOnly.w - - api.DOMPointReadOnly.x - - api.DOMPointReadOnly.y - - api.DOMPointReadOnly.z - - api.DOMQuad - - api.DOMQuad.DOMQuad - - api.DOMQuad.worker_support - - api.DOMQuad.fromQuad_static - - api.DOMQuad.fromRect_static - - api.DOMQuad.getBounds - - api.DOMQuad.p1 - - api.DOMQuad.p2 - - api.DOMQuad.p3 - - api.DOMQuad.p4 - - api.DOMQuad.toJSON - - api.DOMRect - - api.DOMRect.DOMRect - - api.DOMRect.worker_support - - api.DOMRect.fromRect_static - - api.DOMRect.height - - api.DOMRect.width - - api.DOMRect.x - - api.DOMRect.y - - api.DOMRectList - - api.DOMRectList.item - - api.DOMRectList.length - - api.DOMRectReadOnly - - api.DOMRectReadOnly.DOMRectReadOnly - - api.DOMRectReadOnly.worker_support - - api.DOMRectReadOnly.bottom - - api.DOMRectReadOnly.fromRect_static - - api.DOMRectReadOnly.height - - api.DOMRectReadOnly.left - - api.DOMRectReadOnly.right - - api.DOMRectReadOnly.toJSON - - api.DOMRectReadOnly.top - - api.DOMRectReadOnly.width - - api.DOMRectReadOnly.x - - api.DOMRectReadOnly.y + core: + - api.DOMMatrix # former compute_from + - api.DOMMatrix.DOMMatrix + - api.DOMMatrix.a + - api.DOMMatrix.b + - api.DOMMatrix.c + - api.DOMMatrix.d + - api.DOMMatrix.e + - api.DOMMatrix.f + - api.DOMMatrix.invertSelf + - api.DOMMatrix.m11 + - api.DOMMatrix.m12 + - api.DOMMatrix.m13 + - api.DOMMatrix.m14 + - api.DOMMatrix.m21 + - api.DOMMatrix.m22 + - api.DOMMatrix.m23 + - api.DOMMatrix.m24 + - api.DOMMatrix.m31 + - api.DOMMatrix.m32 + - api.DOMMatrix.m33 + - api.DOMMatrix.m34 + - api.DOMMatrix.m41 + - api.DOMMatrix.m42 + - api.DOMMatrix.m43 + - api.DOMMatrix.m44 + - api.DOMMatrix.multiplySelf + - api.DOMMatrix.preMultiplySelf + - api.DOMMatrix.rotateAxisAngleSelf + - api.DOMMatrix.rotateFromVectorSelf + - api.DOMMatrix.rotateSelf + - api.DOMMatrix.scale3dSelf + - api.DOMMatrix.scaleSelf + - api.DOMMatrix.setMatrixValue + - api.DOMMatrix.skewXSelf + - api.DOMMatrix.skewYSelf + - api.DOMMatrix.translateSelf + - api.DOMMatrixReadOnly + - api.DOMMatrixReadOnly.a + - api.DOMMatrixReadOnly.b + - api.DOMMatrixReadOnly.c + - api.DOMMatrixReadOnly.d + - api.DOMMatrixReadOnly.e + - api.DOMMatrixReadOnly.f + - api.DOMMatrixReadOnly.flipX + - api.DOMMatrixReadOnly.flipY + - api.DOMMatrixReadOnly.inverse + - api.DOMMatrixReadOnly.is2D + - api.DOMMatrixReadOnly.m11 + - api.DOMMatrixReadOnly.m12 + - api.DOMMatrixReadOnly.m13 + - api.DOMMatrixReadOnly.m14 + - api.DOMMatrixReadOnly.m21 + - api.DOMMatrixReadOnly.m22 + - api.DOMMatrixReadOnly.m23 + - api.DOMMatrixReadOnly.m24 + - api.DOMMatrixReadOnly.m31 + - api.DOMMatrixReadOnly.m32 + - api.DOMMatrixReadOnly.m33 + - api.DOMMatrixReadOnly.m34 + - api.DOMMatrixReadOnly.m41 + - api.DOMMatrixReadOnly.m42 + - api.DOMMatrixReadOnly.m43 + - api.DOMMatrixReadOnly.m44 + - api.DOMMatrixReadOnly.multiply + - api.DOMMatrixReadOnly.rotate + - api.DOMMatrixReadOnly.rotateAxisAngle + - api.DOMMatrixReadOnly.rotateFromVector + - api.DOMMatrixReadOnly.scale + - api.DOMMatrixReadOnly.scale3d + - api.DOMMatrixReadOnly.skewX + - api.DOMMatrixReadOnly.skewY + - api.DOMMatrixReadOnly.toFloat32Array + - api.DOMMatrixReadOnly.toFloat64Array + - api.DOMMatrixReadOnly.toString + - api.DOMMatrixReadOnly.transformPoint + - api.DOMMatrixReadOnly.translate + - api.DOMPoint + - api.DOMPoint.DOMPoint + - api.DOMPoint.w + - api.DOMPoint.x + - api.DOMPoint.y + - api.DOMPoint.z + - api.DOMPointReadOnly + - api.DOMPointReadOnly.w + - api.DOMPointReadOnly.x + - api.DOMPointReadOnly.y + - api.DOMPointReadOnly.z + - api.DOMQuad + - api.DOMQuad.DOMQuad + - api.DOMQuad.p1 + - api.DOMQuad.p2 + - api.DOMQuad.p3 + - api.DOMQuad.p4 + - api.DOMRect + - api.DOMRect.DOMRect + - api.DOMRect.height + - api.DOMRect.width + - api.DOMRect.x + - api.DOMRect.y + - api.DOMRectList + - api.DOMRectList.item + - api.DOMRectList.length + - api.DOMRectReadOnly + - api.DOMRectReadOnly.bottom + - api.DOMRectReadOnly.height + - api.DOMRectReadOnly.left + - api.DOMRectReadOnly.right + - api.DOMRectReadOnly.top + - api.DOMRectReadOnly.width + - api.DOMRectReadOnly.x + - api.DOMRectReadOnly.y + modifier: + - api.DOMMatrix.fromFloat32Array_static + - api.DOMMatrix.fromFloat64Array_static + - api.DOMMatrix.fromMatrix_static + - api.DOMMatrix.worker_support + - api.DOMMatrixReadOnly.DOMMatrixReadOnly + - api.DOMMatrixReadOnly.fromFloat32Array_static + - api.DOMMatrixReadOnly.fromFloat64Array_static + - api.DOMMatrixReadOnly.fromMatrix_static + - api.DOMMatrixReadOnly.isIdentity + - api.DOMMatrixReadOnly.toJSON + - api.DOMMatrixReadOnly.worker_support + - api.DOMPoint.fromPoint_static + - api.DOMPoint.worker_support + - api.DOMPointReadOnly.DOMPointReadOnly + - api.DOMPointReadOnly.fromPoint_static + - api.DOMPointReadOnly.matrixTransform + - api.DOMPointReadOnly.toJSON + - api.DOMPointReadOnly.worker_support + - api.DOMQuad.fromQuad_static + - api.DOMQuad.fromRect_static + - api.DOMQuad.getBounds + - api.DOMQuad.toJSON + - api.DOMQuad.worker_support + - api.DOMRect.fromRect_static + - api.DOMRect.worker_support + - api.DOMRectReadOnly.DOMRectReadOnly + - api.DOMRectReadOnly.fromRect_static + - api.DOMRectReadOnly.toJSON + - api.DOMRectReadOnly.worker_support diff --git a/features/dom.yml b/features/dom.yml index f4da65e9b14..06fd63c478c 100644 --- a/features/dom.yml +++ b/features/dom.yml @@ -2,5 +2,293 @@ name: DOM description: The DOM (Document Object Model) API represents HTML and XML documents as trees of nodes. You can use the API to inspect and modify the structure and content of a document. spec: https://dom.spec.whatwg.org/ group: dom -status: - compute_from: api.Document +compat_features: + core: + - api.Attr + - api.Attr.localName + - api.Attr.name + - api.Attr.namespaceURI + - api.Attr.ownerElement + - api.Attr.prefix + - api.Attr.value + - api.CharacterData + - api.CharacterData.appendData + - api.CharacterData.data + - api.CharacterData.deleteData + - api.CharacterData.insertData + - api.CharacterData.length + - api.CharacterData.replaceData + - api.CharacterData.substringData + - api.DOMException + - api.DOMException.message + - api.DOMException.name + - api.DOMImplementation + - api.DOMImplementation.createDocument + - api.DOMImplementation.createDocumentType + - api.Document # former compute_from + - api.Document.createAttribute + - api.Document.createAttributeNS + - api.Document.createCDATASection + - api.Document.createComment + - api.Document.createDocumentFragment + - api.Document.createElement + - api.Document.createElementNS + - api.Document.createProcessingInstruction + - api.Document.createTextNode + - api.Document.defaultView + - api.Document.doctype + - api.Document.documentElement + - api.Document.getElementById + - api.Document.getElementsByTagName + - api.Document.getElementsByTagNameNS + - api.Document.implementation + - api.Document.importNode + - api.Document.referrer + - api.Element + - api.Element.attributes + - api.Element.getAttribute + - api.Element.getAttributeNS + - api.Element.getAttributeNode + - api.Element.getAttributeNodeNS + - api.Element.getElementsByTagName + - api.Element.getElementsByTagName.all_elements_selector + - api.Element.getElementsByTagNameNS + - api.Element.getElementsByTagNameNS.all_elements_selector + - api.Element.hasAttribute + - api.Element.hasAttributeNS + - api.Element.hasAttributes + - api.Element.innerHTML + - api.Element.localName + - api.Element.namespaceURI + - api.Element.prefix + - api.Element.removeAttribute + - api.Element.removeAttributeNS + - api.Element.removeAttributeNode + - api.Element.setAttribute + - api.Element.setAttributeNS + - api.Element.setAttributeNode + - api.Element.setAttributeNodeNS + - api.Element.tagName + - api.HTMLCollection + - api.HTMLCollection.item + - api.HTMLCollection.length + - api.HTMLCollection.namedItem + - api.HTMLDocument + - api.HTMLElement + - api.HTMLElement.error_event + - api.Node + - api.Node.firstChild + - api.Node.hasChildNodes + - api.Node.nodeName + - api.Node.nodeValue + - api.Node.normalize + - api.Node.ownerDocument + - api.Node.previousSibling + - api.NodeList + - api.NodeList.item + - api.NodeList.length + - api.ProcessingInstruction + - api.ProcessingInstruction.target + - api.Text + - api.Text.splitText + - api.Window.document + modifier: + - api.CDATASection + - api.CharacterData.after + - api.CharacterData.before + - api.CharacterData.nextElementSibling + - api.CharacterData.previousElementSibling + - api.CharacterData.remove + - api.CharacterData.replaceWith + - api.Comment + - api.Comment.Comment + - api.DOMException.DOMException + - api.DOMImplementation.createHTMLDocument + - api.DOMStringList + - api.DOMStringList.contains + - api.DOMStringList.item + - api.DOMStringList.length + - api.DOMTokenList + - api.DOMTokenList.@@iterator + - api.DOMTokenList.add + - api.DOMTokenList.add.multiple_parameters + - api.DOMTokenList.contains + - api.DOMTokenList.entries + - api.DOMTokenList.forEach + - api.DOMTokenList.item + - api.DOMTokenList.keys + - api.DOMTokenList.length + - api.DOMTokenList.remove + - api.DOMTokenList.remove.multiple_parameters + - api.DOMTokenList.remove_duplicates + - api.DOMTokenList.replace + - api.DOMTokenList.replace.boolean_value + - api.DOMTokenList.supports + - api.DOMTokenList.toString + - api.DOMTokenList.toggle + - api.DOMTokenList.toggle.force_parameter + - api.DOMTokenList.trim_whitespace + - api.DOMTokenList.value + - api.DOMTokenList.values + - api.Document.DOMContentLoaded_event + - api.Document.Document + - api.Document.URL + - api.Document.activeElement + - api.Document.adoptNode + - api.Document.append + - api.Document.body + - api.Document.characterSet + - api.Document.childElementCount + - api.Document.children + - api.Document.compatMode + - api.Document.contentType + - api.Document.createNodeIterator + - api.Document.createTreeWalker + - api.Document.createTreeWalker.whatToShow_filter_parameters_optional + - api.Document.currentScript + - api.Document.dir + - api.Document.documentURI + - api.Document.embeds + - api.Document.firstElementChild + - api.Document.forms + - api.Document.getElementsByClassName + - api.Document.getElementsByName + - api.Document.hasFocus + - api.Document.head + - api.Document.images + - api.Document.lastElementChild + - api.Document.lastModified + - api.Document.links + - api.Document.plugins + - api.Document.prepend + - api.Document.querySelector + - api.Document.querySelectorAll + - api.Document.readyState + - api.Document.readystatechange_event + - api.Document.replaceChildren + - api.Document.scripts + - api.Document.title + - api.DocumentFragment + - api.DocumentFragment.DocumentFragment + - api.DocumentFragment.append + - api.DocumentFragment.childElementCount + - api.DocumentFragment.children + - api.DocumentFragment.firstElementChild + - api.DocumentFragment.getElementById + - api.DocumentFragment.lastElementChild + - api.DocumentFragment.prepend + - api.DocumentFragment.querySelector + - api.DocumentFragment.querySelectorAll + - api.DocumentFragment.replaceChildren + - api.DocumentType + - api.DocumentType.after + - api.DocumentType.before + - api.DocumentType.name + - api.DocumentType.publicId + - api.DocumentType.remove + - api.DocumentType.replaceWith + - api.DocumentType.systemId + - api.Element.after + - api.Element.append + - api.Element.before + - api.Element.childElementCount + - api.Element.children + - api.Element.classList + - api.Element.className + - api.Element.clientHeight + - api.Element.clientLeft + - api.Element.clientTop + - api.Element.clientWidth + - api.Element.closest + - api.Element.firstElementChild + - api.Element.getAttributeNames + - api.Element.getBoundingClientRect + - api.Element.getClientRects + - api.Element.getElementsByClassName + - api.Element.id + - api.Element.insertAdjacentElement + - api.Element.insertAdjacentHTML + - api.Element.insertAdjacentText + - api.Element.lastElementChild + - api.Element.matches + - api.Element.nextElementSibling + - api.Element.outerHTML + - api.Element.prepend + - api.Element.previousElementSibling + - api.Element.querySelector + - api.Element.querySelectorAll + - api.Element.remove + - api.Element.replaceChildren + - api.Element.replaceWith + - api.Element.toggleAttribute + - api.HTMLElement.dir + - api.HTMLElement.hidden + - api.HTMLElement.innerText + - api.HTMLElement.load_event + - api.HTMLElement.offsetHeight + - api.HTMLElement.offsetLeft + - api.HTMLElement.offsetParent + - api.HTMLElement.offsetTop + - api.HTMLElement.offsetWidth + - api.HTMLElement.outerText + - api.NamedNodeMap + - api.NamedNodeMap.getNamedItem + - api.NamedNodeMap.getNamedItemNS + - api.NamedNodeMap.item + - api.NamedNodeMap.length + - api.NamedNodeMap.removeNamedItem + - api.NamedNodeMap.removeNamedItemNS + - api.NamedNodeMap.setNamedItem + - api.NamedNodeMap.setNamedItemNS + - api.Node.appendChild + - api.Node.baseURI + - api.Node.childNodes + - api.Node.cloneNode + - api.Node.compareDocumentPosition + - api.Node.contains + - api.Node.insertBefore + - api.Node.isDefaultNamespace + - api.Node.isEqualNode + - api.Node.isSameNode + - api.Node.lastChild + - api.Node.lookupNamespaceURI + - api.Node.lookupPrefix + - api.Node.nextSibling + - api.Node.nodeType + - api.Node.parentElement + - api.Node.parentNode + - api.Node.removeChild + - api.Node.replaceChild + - api.Node.textContent + - api.NodeIterator + - api.NodeIterator.filter + - api.NodeIterator.nextNode + - api.NodeIterator.pointerBeforeReferenceNode + - api.NodeIterator.previousNode + - api.NodeIterator.referenceNode + - api.NodeIterator.root + - api.NodeIterator.whatToShow + - api.NodeList.@@iterator + - api.NodeList.entries + - api.NodeList.forEach + - api.NodeList.keys + - api.NodeList.values + - api.Text.Text + - api.Text.wholeText + - api.TreeWalker + - api.TreeWalker.currentNode + - api.TreeWalker.filter + - api.TreeWalker.firstChild + - api.TreeWalker.lastChild + - api.TreeWalker.nextNode + - api.TreeWalker.nextSibling + - api.TreeWalker.parentNode + - api.TreeWalker.previousNode + - api.TreeWalker.previousSibling + - api.TreeWalker.root + - api.TreeWalker.whatToShow + - api.XMLDocument + spare: + - api.Document.createElement.options_parameter + - api.Document.createElementNS.options_parameter + - api.Element.currentCSSZoom diff --git a/features/download.yml b/features/download.yml index 072f1795a49..78ea49c7555 100644 --- a/features/download.yml +++ b/features/download.yml @@ -2,12 +2,13 @@ name: download description: The `download` attribute for `` elements loads the target URL as a file to be saved, instead of navigating to it. An optional attribute value sets a default file name. spec: https://html.spec.whatwg.org/multipage/links.html#attr-hyperlink-download caniuse: download -status: - compute_from: html.elements.a.download compat_features: - - api.HTMLAnchorElement.download - - api.HTMLAreaElement.download - - api.SVGAElement.download - - html.elements.a.download - - html.elements.area.download - - svg.elements.a.download + core: + - html.elements.a.download # former compute_from + modifier: + - api.HTMLAnchorElement.download + - api.HTMLAreaElement.download + - html.elements.area.download + spare: + - api.SVGAElement.download + - svg.elements.a.download diff --git a/features/empty.yml b/features/empty.yml index 35c4e481c5a..c32819a5b15 100644 --- a/features/empty.yml +++ b/features/empty.yml @@ -2,8 +2,8 @@ name: :empty description: The `:empty` CSS pseudo-class matches elements without child elements. spec: https://drafts.csswg.org/selectors-4/#the-empty-pseudo group: selectors -status: - compute_from: css.selectors.empty compat_features: - - css.selectors.empty - - css.selectors.empty.matches_whitespace + core: + - css.selectors.empty # former compute_from + spare: + - css.selectors.empty.matches_whitespace diff --git a/features/encrypted-media-extensions.yml b/features/encrypted-media-extensions.yml index fde2dd5312f..39b5bbe4099 100644 --- a/features/encrypted-media-extensions.yml +++ b/features/encrypted-media-extensions.yml @@ -2,53 +2,52 @@ name: Encrypted media extensions description: The `mediaKeys` property of `HTMLMediaElement` and the `navigator.requestMediaKeySystemAccess()` method control the playback of content subject to digital rights management. Also known as EME. spec: https://w3c.github.io/encrypted-media/ caniuse: eme -status: - compute_from: - - api.Navigator.requestMediaKeySystemAccess - - api.HTMLMediaElement.mediaKeys compat_features: - - api.HTMLMediaElement.encrypted_event - - api.HTMLMediaElement.mediaKeys - - api.HTMLMediaElement.setMediaKeys - - api.HTMLMediaElement.waitingforkey_event - - api.MediaCapabilities.decodingInfo.configuration_keySystemConfiguration_parameter - - api.MediaEncryptedEvent - - api.MediaEncryptedEvent.MediaEncryptedEvent - - api.MediaEncryptedEvent.initData - - api.MediaEncryptedEvent.initDataType - - api.MediaKeyMessageEvent - - api.MediaKeyMessageEvent.MediaKeyMessageEvent - - api.MediaKeyMessageEvent.message - - api.MediaKeyMessageEvent.messageType - - api.MediaKeySession - - api.MediaKeySession.close - - api.MediaKeySession.closed - - api.MediaKeySession.expiration - - api.MediaKeySession.generateRequest - - api.MediaKeySession.keyStatuses - - api.MediaKeySession.keystatuseschange_event - - api.MediaKeySession.load - - api.MediaKeySession.message_event - - api.MediaKeySession.remove - - api.MediaKeySession.sessionId - - api.MediaKeySession.update - - api.MediaKeyStatusMap - - api.MediaKeyStatusMap.@@iterator - - api.MediaKeyStatusMap.entries - - api.MediaKeyStatusMap.forEach - - api.MediaKeyStatusMap.get - - api.MediaKeyStatusMap.has - - api.MediaKeyStatusMap.keys - - api.MediaKeyStatusMap.size - - api.MediaKeyStatusMap.values - - api.MediaKeySystemAccess - - api.MediaKeySystemAccess.createMediaKeys - - api.MediaKeySystemAccess.getConfiguration - - api.MediaKeySystemAccess.keySystem - - api.MediaKeys - - api.MediaKeys.createSession - - api.MediaKeys.getStatusForPolicy - - api.MediaKeys.setServerCertificate - - api.Navigator.requestMediaKeySystemAccess - - html.elements.iframe.allow.encrypted-media - - http.headers.Permissions-Policy.encrypted-media + core: + - api.HTMLMediaElement.encrypted_event + - api.HTMLMediaElement.mediaKeys # former compute_from + - api.HTMLMediaElement.setMediaKeys + - api.MediaEncryptedEvent + - api.MediaEncryptedEvent.MediaEncryptedEvent + - api.MediaEncryptedEvent.initData + - api.MediaEncryptedEvent.initDataType + - api.MediaKeyMessageEvent + - api.MediaKeyMessageEvent.MediaKeyMessageEvent + - api.MediaKeyMessageEvent.message + - api.MediaKeyMessageEvent.messageType + - api.MediaKeySession + - api.MediaKeySession.close + - api.MediaKeySession.closed + - api.MediaKeySession.expiration + - api.MediaKeySession.generateRequest + - api.MediaKeySession.keyStatuses + - api.MediaKeySession.load + - api.MediaKeySession.remove + - api.MediaKeySession.sessionId + - api.MediaKeySession.update + - api.MediaKeyStatusMap + - api.MediaKeyStatusMap.size + - api.MediaKeySystemAccess + - api.MediaKeySystemAccess.createMediaKeys + - api.MediaKeySystemAccess.keySystem + - api.MediaKeys + - api.MediaKeys.createSession + - api.MediaKeys.setServerCertificate + - api.Navigator.requestMediaKeySystemAccess # former compute_from + modifier: + - api.MediaKeySession.keystatuseschange_event + - api.MediaKeySession.message_event + - api.MediaKeyStatusMap.@@iterator + - api.MediaKeyStatusMap.entries + - api.MediaKeyStatusMap.forEach + - api.MediaKeyStatusMap.get + - api.MediaKeyStatusMap.has + - api.MediaKeyStatusMap.keys + - api.MediaKeyStatusMap.values + - api.MediaKeySystemAccess.getConfiguration + spare: + - api.HTMLMediaElement.waitingforkey_event + - api.MediaCapabilities.decodingInfo.configuration_keySystemConfiguration_parameter + - api.MediaKeys.getStatusForPolicy + - html.elements.iframe.allow.encrypted-media + - http.headers.Permissions-Policy.encrypted-media diff --git a/features/event-timing.yml b/features/event-timing.yml index 1dd93d918c4..4fe1e9f9f93 100644 --- a/features/event-timing.yml +++ b/features/event-timing.yml @@ -2,23 +2,23 @@ name: Event timing description: The `event` and `first-input` performance entries and the `PerformanceEventTiming` API measures the latency of user input events, such as mouse clicks or keypresses. They're used to calculate Interaction to Next Paint (INP), a common metric for perceived responsiveness. spec: https://w3c.github.io/event-timing/ group: performance -status: - compute_from: api.PerformanceEventTiming compat_features: - - api.EventCounts - - api.EventCounts.@@iterator - - api.EventCounts.entries - - api.EventCounts.forEach - - api.EventCounts.get - - api.EventCounts.has - - api.EventCounts.keys - - api.EventCounts.size - - api.EventCounts.values - - api.Performance.eventCounts - - api.PerformanceEventTiming - - api.PerformanceEventTiming.cancelable - - api.PerformanceEventTiming.interactionId - - api.PerformanceEventTiming.processingEnd - - api.PerformanceEventTiming.processingStart - - api.PerformanceEventTiming.target - - api.PerformanceEventTiming.toJSON + core: + - api.PerformanceEventTiming # former compute_from + - api.PerformanceEventTiming.cancelable + - api.PerformanceEventTiming.processingEnd + - api.PerformanceEventTiming.processingStart + - api.PerformanceEventTiming.toJSON + modifier: + - api.EventCounts + - api.EventCounts.@@iterator + - api.EventCounts.entries + - api.EventCounts.forEach + - api.EventCounts.get + - api.EventCounts.has + - api.EventCounts.keys + - api.EventCounts.size + - api.EventCounts.values + - api.Performance.eventCounts + - api.PerformanceEventTiming.interactionId + - api.PerformanceEventTiming.target diff --git a/features/events.yml b/features/events.yml index 3bd8d04bf0c..00459fa9755 100644 --- a/features/events.yml +++ b/features/events.yml @@ -5,39 +5,40 @@ spec: - https://dom.spec.whatwg.org/#interface-customevent - https://dom.spec.whatwg.org/#interface-eventtarget caniuse: addeventlistener -status: - compute_from: api.EventTarget.addEventListener compat_features: - - api.CustomEvent - - api.CustomEvent.CustomEvent - - api.CustomEvent.detail - - api.CustomEvent.worker_support - - api.Event - - api.Event.Event - - api.Event.bubbles - - api.Event.cancelable - - api.Event.currentTarget - - api.Event.defaultPrevented - - api.Event.eventPhase - - api.Event.isTrusted - - api.Event.preventDefault - - api.Event.stopImmediatePropagation - - api.Event.stopPropagation - - api.Event.target - - api.Event.timeStamp - - api.Event.type - - api.EventTarget - - api.EventTarget.EventTarget - - api.EventTarget.addEventListener - - api.EventTarget.addEventListener.options_parameter - - api.EventTarget.addEventListener.options_parameter.options_capture_parameter - - api.EventTarget.addEventListener.options_parameter.options_once_parameter - - api.EventTarget.addEventListener.options_parameter.options_passive_parameter - - api.EventTarget.addEventListener.options_parameter.options_passive_parameter_default_true_touch - - api.EventTarget.addEventListener.options_parameter.options_passive_parameter_default_true_wheel - - api.EventTarget.addEventListener.useCapture_parameter_optional - - api.EventTarget.removeEventListener.options_parameter - - api.EventTarget.removeEventListener.useCapture_parameter_optional - - api.EventTarget.addEventListener.options_parameter.options_signal_parameter - - api.EventTarget.dispatchEvent - - api.EventTarget.removeEventListener + core: + - api.Event + - api.Event.currentTarget + - api.Event.preventDefault + - api.Event.stopPropagation + - api.Event.target + - api.EventTarget + - api.EventTarget.addEventListener # former compute_from + - api.EventTarget.removeEventListener + modifier: + - api.CustomEvent + - api.CustomEvent.CustomEvent + - api.CustomEvent.detail + - api.CustomEvent.worker_support + - api.Event.Event + - api.Event.bubbles + - api.Event.cancelable + - api.Event.defaultPrevented + - api.Event.eventPhase + - api.Event.isTrusted + - api.Event.stopImmediatePropagation + - api.Event.timeStamp + - api.Event.type + - api.EventTarget.EventTarget + - api.EventTarget.addEventListener.options_parameter + - api.EventTarget.addEventListener.options_parameter.options_capture_parameter + - api.EventTarget.addEventListener.options_parameter.options_once_parameter + - api.EventTarget.addEventListener.options_parameter.options_passive_parameter + - api.EventTarget.addEventListener.options_parameter.options_passive_parameter_default_true_touch + - api.EventTarget.addEventListener.options_parameter.options_signal_parameter + - api.EventTarget.addEventListener.useCapture_parameter_optional + - api.EventTarget.dispatchEvent + - api.EventTarget.removeEventListener.options_parameter + - api.EventTarget.removeEventListener.useCapture_parameter_optional + spare: + - api.EventTarget.addEventListener.options_parameter.options_passive_parameter_default_true_wheel diff --git a/features/execcommand.yml b/features/execcommand.yml index 991ef96db5d..5d7c87f5a31 100644 --- a/features/execcommand.yml +++ b/features/execcommand.yml @@ -9,16 +9,16 @@ discouraged: alternatives: - async-clipboard - contenteditable -status: - compute_from: api.Document.execCommand compat_features: - - api.Document.execCommand - - api.Document.execCommand.copy - - api.Document.execCommand.cut - - api.Document.execCommand.defaultParagraphSeparator - - api.Document.execCommand.insertBrOnReturn - - api.Document.queryCommandEnabled - - api.Document.queryCommandIndeterm - - api.Document.queryCommandState - - api.Document.queryCommandSupported - - api.Document.queryCommandValue + core: + - api.Document.execCommand # former compute_from + modifier: + - api.Document.execCommand.copy + - api.Document.execCommand.cut + - api.Document.execCommand.defaultParagraphSeparator + - api.Document.execCommand.insertBrOnReturn + - api.Document.queryCommandEnabled + - api.Document.queryCommandIndeterm + - api.Document.queryCommandState + - api.Document.queryCommandSupported + - api.Document.queryCommandValue diff --git a/features/feature-policy.yml b/features/feature-policy.yml index 1b2461ed9e3..fd1798ce186 100644 --- a/features/feature-policy.yml +++ b/features/feature-policy.yml @@ -8,54 +8,51 @@ discouraged: - https://github.com/w3c/webappsec-permissions-policy/pull/379 alternatives: - permissions-policy -status: - compute_from: - - http.headers.Feature-Policy - - api.Document.featurePolicy - - api.HTMLIFrameElement.featurePolicy compat_features: - - http.headers.Feature-Policy - - http.headers.Feature-Policy.accelerometer - - http.headers.Feature-Policy.ambient-light-sensor - - http.headers.Feature-Policy.attribution-reporting - - http.headers.Feature-Policy.autoplay - - http.headers.Feature-Policy.bluetooth - - http.headers.Feature-Policy.browsing-topics - - http.headers.Feature-Policy.camera - - http.headers.Feature-Policy.compute-pressure - - http.headers.Feature-Policy.cross-origin-isolated - - http.headers.Feature-Policy.deferred-fetch - - http.headers.Feature-Policy.deferred-fetch-minimal - - http.headers.Feature-Policy.display-capture - - http.headers.Feature-Policy.document-domain - - http.headers.Feature-Policy.encrypted-media - - http.headers.Feature-Policy.fullscreen - - http.headers.Feature-Policy.geolocation - - http.headers.Feature-Policy.gyroscope - - http.headers.Feature-Policy.hid - - http.headers.Feature-Policy.identity-credentials-get - - http.headers.Feature-Policy.idle-detection - - http.headers.Feature-Policy.local-fonts - - http.headers.Feature-Policy.magnetometer - - http.headers.Feature-Policy.microphone - - http.headers.Feature-Policy.midi - - http.headers.Feature-Policy.otp-credentials - - http.headers.Feature-Policy.payment - - http.headers.Feature-Policy.picture-in-picture - - http.headers.Feature-Policy.publickey-credentials-create - - http.headers.Feature-Policy.publickey-credentials-get - - http.headers.Feature-Policy.screen-wake-lock - - http.headers.Feature-Policy.serial - - http.headers.Feature-Policy.storage-access - - http.headers.Feature-Policy.usb - - http.headers.Feature-Policy.web-share - - http.headers.Feature-Policy.wildcards - - http.headers.Feature-Policy.window-management - - http.headers.Feature-Policy.xr-spatial-tracking - - api.Document.featurePolicy - - api.FeaturePolicy - - api.FeaturePolicy.allowedFeatures - - api.FeaturePolicy.allowsFeature - - api.FeaturePolicy.features - - api.FeaturePolicy.getAllowlistForFeature - - api.HTMLIFrameElement.featurePolicy + core: + - api.Document.featurePolicy # former compute_from + - api.FeaturePolicy + - api.FeaturePolicy.allowedFeatures + - api.FeaturePolicy.allowsFeature + - api.FeaturePolicy.features + - api.FeaturePolicy.getAllowlistForFeature + - api.HTMLIFrameElement.featurePolicy # former compute_from + - http.headers.Feature-Policy # former compute_from + - http.headers.Feature-Policy.accelerometer + - http.headers.Feature-Policy.autoplay + - http.headers.Feature-Policy.camera + - http.headers.Feature-Policy.encrypted-media + - http.headers.Feature-Policy.fullscreen + - http.headers.Feature-Policy.geolocation + - http.headers.Feature-Policy.gyroscope + - http.headers.Feature-Policy.microphone + - http.headers.Feature-Policy.midi + - http.headers.Feature-Policy.payment + - http.headers.Feature-Policy.usb + modifier: + - http.headers.Feature-Policy.ambient-light-sensor + - http.headers.Feature-Policy.attribution-reporting + - http.headers.Feature-Policy.bluetooth + - http.headers.Feature-Policy.browsing-topics + - http.headers.Feature-Policy.compute-pressure + - http.headers.Feature-Policy.cross-origin-isolated + - http.headers.Feature-Policy.deferred-fetch + - http.headers.Feature-Policy.deferred-fetch-minimal + - http.headers.Feature-Policy.display-capture + - http.headers.Feature-Policy.document-domain + - http.headers.Feature-Policy.hid + - http.headers.Feature-Policy.identity-credentials-get + - http.headers.Feature-Policy.idle-detection + - http.headers.Feature-Policy.local-fonts + - http.headers.Feature-Policy.magnetometer + - http.headers.Feature-Policy.otp-credentials + - http.headers.Feature-Policy.picture-in-picture + - http.headers.Feature-Policy.publickey-credentials-create + - http.headers.Feature-Policy.publickey-credentials-get + - http.headers.Feature-Policy.screen-wake-lock + - http.headers.Feature-Policy.serial + - http.headers.Feature-Policy.storage-access + - http.headers.Feature-Policy.web-share + - http.headers.Feature-Policy.wildcards + - http.headers.Feature-Policy.window-management + - http.headers.Feature-Policy.xr-spatial-tracking diff --git a/features/fencedframe.yml b/features/fencedframe.yml index 094c8661e7c..0ec6bb8b0af 100644 --- a/features/fencedframe.yml +++ b/features/fencedframe.yml @@ -1,27 +1,27 @@ name: description: The `` element embeds another HTML page into the current page in a more secure and privacy-preserving way than `