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 `` elements. spec: https://wicg.github.io/fenced-frame/ -status: - compute_from: html.elements.fencedframe compat_features: - - api.Fence - - api.Fence.getNestedConfigs - - api.Fence.reportEvent - - api.Fence.setReportEventDataForAutomaticBeacons - - api.FencedFrameConfig - - api.FencedFrameConfig.setSharedStorageContext - - api.HTMLFencedFrameElement - - api.HTMLFencedFrameElement.allow - - api.HTMLFencedFrameElement.config - - api.HTMLFencedFrameElement.height - - api.HTMLFencedFrameElement.sandbox - - api.HTMLFencedFrameElement.width - - api.Navigator.deprecatedReplaceInURN - - api.Window.fence - - html.elements.fencedframe - - html.elements.fencedframe.allow - - http.headers.Content-Security-Policy.fenced-frame-src - - html.elements.a.target.unfencedTop - - html.elements.fencedframe.height - - html.elements.fencedframe.width - - http.headers.Sec-Fetch-Dest.fencedframe + core: + - api.Fence + - api.Fence.getNestedConfigs + - api.Fence.reportEvent + - api.Fence.setReportEventDataForAutomaticBeacons + - api.FencedFrameConfig + - api.FencedFrameConfig.setSharedStorageContext + - api.HTMLFencedFrameElement + - api.HTMLFencedFrameElement.allow + - api.HTMLFencedFrameElement.config + - api.HTMLFencedFrameElement.height + - api.HTMLFencedFrameElement.sandbox + - api.HTMLFencedFrameElement.width + - api.Window.fence + - html.elements.a.target.unfencedTop + - html.elements.fencedframe # former compute_from + - html.elements.fencedframe.allow + - html.elements.fencedframe.height + - html.elements.fencedframe.width + - http.headers.Content-Security-Policy.fenced-frame-src + - http.headers.Sec-Fetch-Dest.fencedframe + modifier: + - api.Navigator.deprecatedReplaceInURN diff --git a/features/fetch-priority.yml b/features/fetch-priority.yml index f55be889c09..d1fc2fe3e0d 100644 --- a/features/fetch-priority.yml +++ b/features/fetch-priority.yml @@ -6,5 +6,18 @@ spec: group: - resource-hints - fetch -status: - compute_from: http.headers.Link.fetchpriority +compat_features: + core: + - api.HTMLImageElement.fetchPriority + - api.HTMLLinkElement.fetchPriority + - api.HTMLScriptElement.fetchPriority + - api.Request.Request.options_parameter.priority + - api.fetch.options_parameter.priority + - html.elements.img.fetchpriority + - html.elements.link.fetchpriority + - html.elements.script.fetchpriority + - http.headers.Link.fetchpriority # former compute_from + spare: + - svg.elements.feImage.fetchpriority + - svg.elements.image.fetchpriority + - svg.elements.script.fetchpriority diff --git a/features/fetch.yml b/features/fetch.yml index 028ecaccde9..2a48d72c736 100644 --- a/features/fetch.yml +++ b/features/fetch.yml @@ -3,82 +3,83 @@ description: The `fetch()` method makes asynchronous HTTP requests. spec: https://fetch.spec.whatwg.org/ group: fetch caniuse: fetch -status: - compute_from: api.fetch compat_features: - - api.Headers - - api.Headers.@@iterator - - api.Headers.Headers - - api.Headers.append - - api.Headers.delete - - api.Headers.entries - - api.Headers.forEach - - api.Headers.get - - api.Headers.getSetCookie - - api.Headers.has - - api.Headers.iterate_combined_duplicates - - api.Headers.iterate_lexicographically - - api.Headers.keys - - api.Headers.set - - api.Headers.values - - api.Request - - api.Request.Request - - api.Request.Request.cross_origin_stripped - - api.Request.Request.options_parameter - - api.Request.Request.options_parameter.body - - api.Request.Request.options_parameter.keepalive - - api.Request.Request.options_parameter.referrer - - api.Request.Request.response_body_readablestream - - api.Request.arrayBuffer - - api.Request.blob - - api.Request.bodyUsed - - api.Request.bytes - - api.Request.cache - - api.Request.cache.only-if-cached - - api.Request.clone - - api.Request.credentials - - api.Request.credentials.default_same-origin - - api.Request.destination - - api.Request.duplex - - api.Request.isHistoryNavigation - - api.Request.headers - - api.Request.json - - api.Request.keepalive - - api.Request.method - - api.Request.mode - - api.Request.mode.navigate_mode - - api.Request.redirect - - api.Request.referrer - - api.Request.referrerPolicy - - api.Request.text - - api.Request.url - - api.Response - - api.Response.Response - - api.Response.Response.accept_readablestream - - api.Response.Response.body_parameter_optional - - api.Response.arrayBuffer - - api.Response.blob - - api.Response.bodyUsed - - api.Response.body - - api.Response.body.readable_byte_stream - - api.Response.bytes - - api.Response.clone - - api.Response.error_static - - api.Response.headers - - api.Response.json - - api.Response.json_static - - api.Response.ok - - api.Response.redirect_static - - api.Response.redirected - - api.Response.status - - api.Response.statusText - - api.Response.text - - api.Response.type - - api.Response.url - - api.fetch - - api.fetch.authorization_removed_cross_origin - - api.fetch.blob_data_support - - api.fetch.options_parameter - - api.fetch.options_parameter.body - - api.fetch.options_parameter.keepalive - - api.fetch.options_parameter.referrerPolicy + core: + - api.Headers + - api.Headers.Headers + - api.Headers.append + - api.Headers.delete + - api.Headers.get + - api.Headers.has + - api.Headers.set + - api.Request + - api.Request.Request + - api.Request.Request.options_parameter + - api.Request.Request.options_parameter.body + - api.Request.arrayBuffer + - api.Request.blob + - api.Request.bodyUsed + - api.Request.clone + - api.Request.credentials + - api.Request.headers + - api.Request.json + - api.Request.method + - api.Request.mode + - api.Request.referrer + - api.Request.text + - api.Request.url + - api.Response + - api.Response.Response + - api.Response.arrayBuffer + - api.Response.blob + - api.Response.bodyUsed + - api.Response.clone + - api.Response.headers + - api.Response.json + - api.Response.ok + - api.Response.status + - api.Response.statusText + - api.Response.text + - api.Response.type + - api.Response.url + - api.fetch # former compute_from + - api.fetch.options_parameter + - api.fetch.options_parameter.body + modifier: + - api.Headers.@@iterator + - api.Headers.entries + - api.Headers.forEach + - api.Headers.getSetCookie + - api.Headers.iterate_combined_duplicates + - api.Headers.iterate_lexicographically + - api.Headers.keys + - api.Headers.values + - api.Request.Request.cross_origin_stripped + - api.Request.Request.options_parameter.referrer + - api.Request.cache + - api.Request.credentials.default_same-origin + - api.Request.destination + - api.Request.redirect + - api.Request.referrerPolicy + - api.Response.Response.accept_readablestream + - api.Response.Response.body_parameter_optional + - api.Response.body + - api.Response.error_static + - api.Response.json_static + - api.Response.redirect_static + - api.Response.redirected + - api.fetch.blob_data_support + spare: + - api.Request.Request.options_parameter.keepalive + - api.Request.Request.response_body_readablestream + - api.Request.bytes + - api.Request.cache.only-if-cached + - api.Request.duplex + - api.Request.isHistoryNavigation + - api.Request.keepalive + - api.Request.mode.navigate_mode + - api.Response.body.readable_byte_stream + - api.Response.bytes + - api.fetch.authorization_removed_cross_origin + - api.fetch.options_parameter.keepalive + - api.fetch.options_parameter.referrerPolicy diff --git a/features/fieldset.yml b/features/fieldset.yml index 4d1e3d40ae1..19d9173f9d4 100644 --- a/features/fieldset.yml +++ b/features/fieldset.yml @@ -6,22 +6,20 @@ spec: group: - forms - html-elements -status: - compute_from: - - html.elements.fieldset - - html.elements.legend compat_features: - - api.HTMLFieldSetElement - - api.HTMLFieldSetElement.disabled - - api.HTMLFieldSetElement.elements - - api.HTMLFieldSetElement.elements.type_HTMLCollection - - api.HTMLFieldSetElement.form - - api.HTMLFieldSetElement.name - - api.HTMLFieldSetElement.type - - api.HTMLLegendElement - - api.HTMLLegendElement.form - - html.elements.fieldset - - html.elements.fieldset.disabled - - html.elements.fieldset.form - - html.elements.fieldset.name - - html.elements.legend + core: + - api.HTMLFieldSetElement + - api.HTMLFieldSetElement.form + - api.HTMLLegendElement + - api.HTMLLegendElement.form + - html.elements.fieldset # former compute_from + - html.elements.fieldset.form + - html.elements.legend # former compute_from + modifier: + - api.HTMLFieldSetElement.disabled + - api.HTMLFieldSetElement.elements + - api.HTMLFieldSetElement.elements.type_HTMLCollection + - api.HTMLFieldSetElement.name + - api.HTMLFieldSetElement.type + - html.elements.fieldset.disabled + - html.elements.fieldset.name diff --git a/features/first-letter.yml b/features/first-letter.yml index 43f6510a26a..175e2eec8dc 100644 --- a/features/first-letter.yml +++ b/features/first-letter.yml @@ -3,9 +3,9 @@ description: The `::first-letter` CSS pseudo-element selects the first letter in spec: https://drafts.csswg.org/css-pseudo-4/#first-letter-pseudo group: selectors caniuse: css-first-letter -status: - compute_from: css.selectors.first-letter compat_features: - - css.selectors.first-letter - - css.selectors.first-letter.dutch_ij_digraph - - css.selectors.first-letter.svg_text_element + core: + - css.selectors.first-letter # former compute_from + spare: + - css.selectors.first-letter.dutch_ij_digraph + - css.selectors.first-letter.svg_text_element diff --git a/features/first-line.yml b/features/first-line.yml index a181687369a..a4a25227790 100644 --- a/features/first-line.yml +++ b/features/first-line.yml @@ -3,8 +3,8 @@ description: The `::first-line` CSS pseudo-element selects the first line of tex spec: https://drafts.csswg.org/css-pseudo-4/#first-line-pseudo group: selectors caniuse: css-first-line -status: - compute_from: css.selectors.first-line compat_features: - - css.selectors.first-line - - css.selectors.first-line.svg_text_element + core: + - css.selectors.first-line # former compute_from + spare: + - css.selectors.first-line.svg_text_element diff --git a/features/flexbox.yml b/features/flexbox.yml index 600ad400687..058ac74ca3e 100644 --- a/features/flexbox.yml +++ b/features/flexbox.yml @@ -3,5 +3,82 @@ description: Flexbox is a one-dimensional layout system, which places content ei spec: https://drafts.csswg.org/css-flexbox-1/ group: flexbox caniuse: flexbox -status: - compute_from: css.properties.display.flex +compat_features: + core: + - css.properties.align-items + - css.properties.align-self + - css.properties.display.flex # former compute_from + - css.properties.display.inline-flex + - css.properties.flex-grow + - css.properties.flex-shrink + - css.properties.justify-content + - css.properties.order + modifier: + - css.properties.align-content + - css.properties.align-content.flex_context + - css.properties.align-content.flex_context.baseline + - css.properties.align-content.flex_context.first_baseline + - css.properties.align-content.flex_context.space-evenly + - css.properties.align-content.flex_context.start_end + - css.properties.align-content.flex_context.stretch + - css.properties.align-content.normal + - css.properties.align-items.flex_context + - css.properties.align-items.flex_context.baseline + - css.properties.align-items.flex_context.first_baseline + - css.properties.align-items.flex_context.last_baseline + - css.properties.align-items.flex_context.start_end + - css.properties.align-self.auto + - css.properties.align-self.flex_context + - css.properties.align-self.flex_context.baseline + - css.properties.align-self.flex_context.first_baseline + - css.properties.align-self.flex_context.last_baseline + - css.properties.align-self.flex_context.start_end + - css.properties.align-self.flex_context.stretch + - css.properties.align-self.normal + - css.properties.align-self.stretch + - css.properties.flex + - css.properties.flex-basis + - css.properties.flex-basis.auto + - css.properties.flex-basis.content + - css.properties.flex-basis.fit-content + - css.properties.flex-basis.max-content + - css.properties.flex-basis.min-content + - css.properties.flex-direction + - css.properties.flex-direction.column + - css.properties.flex-direction.column-reverse + - css.properties.flex-direction.row + - css.properties.flex-direction.row-reverse + - css.properties.flex-flow + - css.properties.flex-wrap + - css.properties.flex-wrap.nowrap + - css.properties.flex-wrap.wrap + - css.properties.flex-wrap.wrap-reverse + - css.properties.flex.none + - css.properties.justify-content.flex_context + - css.properties.justify-content.flex_context.left_right + - css.properties.justify-content.flex_context.space-evenly + - css.properties.justify-content.flex_context.start_end + - css.properties.justify-content.flex_context.stretch + - css.properties.justify-content.left + - css.properties.justify-content.normal + - css.properties.justify-content.right + - css.properties.justify-items + - css.properties.justify-items.center + - css.properties.justify-items.flex_context + - css.properties.justify-items.left + - css.properties.justify-items.legacy + - css.properties.justify-items.right + - css.properties.place-content + - css.properties.place-content.flex_context + - css.properties.place-items + - css.properties.place-items.flex_context + - css.properties.place-self + - css.properties.place-self.flex_context + - css.properties.position.absolutely_positioned_flex_children + spare: + - css.properties.align-content.flex_context.last_baseline + - css.properties.align-content.flex_context.safe_unsafe + - css.properties.align-items.flex_context.safe_unsafe + - css.properties.align-self.flex_context.safe_unsafe + - css.properties.flex-grow.less_than_zero_animate + - css.properties.justify-content.flex_context.safe_unsafe diff --git a/features/font-face.yml b/features/font-face.yml index 2f6b225dd2c..27f273037be 100644 --- a/features/font-face.yml +++ b/features/font-face.yml @@ -5,21 +5,22 @@ group: fonts caniuse: - fontface - font-unicode-range -status: - compute_from: css.at-rules.font-face.WOFF_2 compat_features: - - api.CSSFontFaceRule - - api.CSSFontFaceRule.style - - css.at-rules.font-face - - css.at-rules.font-face.font-family - - css.at-rules.font-face.OpenType_CBDT_CBLC - - css.at-rules.font-face.OpenType_SBIX - - css.at-rules.font-face.src - - css.at-rules.font-face.src.drop_invalid_item - - css.at-rules.font-face.src.format_keyword - - css.at-rules.font-face.src.format_variations - - css.at-rules.font-face.src.tech_keyword - - css.at-rules.font-face.unicode-range - - css.at-rules.font-face.WOFF - - css.at-rules.font-face.WOFF_2 - - css.types.url + core: + - api.CSSFontFaceRule + - api.CSSFontFaceRule.style + - css.at-rules.font-face + - css.at-rules.font-face.WOFF + - css.at-rules.font-face.WOFF_2 # former compute_from + - css.at-rules.font-face.font-family + - css.at-rules.font-face.src + - css.at-rules.font-face.unicode-range + - css.types.url + modifier: + - css.at-rules.font-face.src.format_keyword + - css.at-rules.font-face.src.format_variations + - css.at-rules.font-face.src.tech_keyword + spare: + - css.at-rules.font-face.OpenType_CBDT_CBLC + - css.at-rules.font-face.OpenType_SBIX + - css.at-rules.font-face.src.drop_invalid_item diff --git a/features/font-feature-settings.yml b/features/font-feature-settings.yml index 6e233dd76d8..abd20c070b4 100644 --- a/features/font-feature-settings.yml +++ b/features/font-feature-settings.yml @@ -3,9 +3,9 @@ description: The `font-feature-settings` CSS property sets low-level OpenType fe spec: https://drafts.csswg.org/css-fonts-4/#font-feature-settings-prop group: font-features caniuse: font-feature -status: - compute_from: css.properties.font-feature-settings compat_features: - - css.properties.font-feature-settings - - css.properties.font-feature-settings.normal - - css.at-rules.font-face.font-feature-settings + core: + - css.properties.font-feature-settings # former compute_from + - css.properties.font-feature-settings.normal + spare: + - css.at-rules.font-face.font-feature-settings diff --git a/features/font-loading.yml b/features/font-loading.yml index 44eaa57f84a..b923b961081 100644 --- a/features/font-loading.yml +++ b/features/font-loading.yml @@ -2,46 +2,47 @@ name: Font loading description: The `document.fonts` API dynamically loads custom fonts and tracks when fonts are loading or ready to use. spec: https://drafts.csswg.org/css-font-loading-3/ caniuse: font-loading -status: - compute_from: api.FontFace compat_features: - - api.Document.fonts - - api.FontFace - - api.FontFace.FontFace - - api.FontFace.worker_support - - api.FontFace.display - - api.FontFace.family - - api.FontFace.featureSettings - - api.FontFace.load - - api.FontFace.loaded - - api.FontFace.status - - api.FontFace.stretch - - api.FontFace.style - - api.FontFace.unicodeRange - - api.FontFace.variant - - api.FontFace.variationSettings - - api.FontFace.weight - - api.FontFaceSet - - api.FontFaceSet.worker_support - - api.FontFaceSet.add - - api.FontFaceSet.check - - api.FontFaceSet.clear - - api.FontFaceSet.delete - - api.FontFaceSet.entries - - api.FontFaceSet.forEach - - api.FontFaceSet.has - - api.FontFaceSet.keys - - api.FontFaceSet.load - - api.FontFaceSet.loading_event - - api.FontFaceSet.loadingdone_event - - api.FontFaceSet.loadingerror_event - - api.FontFaceSet.ready - - api.FontFaceSet.size - - api.FontFaceSet.status - - api.FontFaceSet.values - - api.FontFaceSet.@@iterator - - api.FontFaceSetLoadEvent - - api.FontFaceSetLoadEvent.FontFaceSetLoadEvent - - api.FontFaceSetLoadEvent.worker_support - - api.FontFaceSetLoadEvent.fontfaces - - api.WorkerGlobalScope.fonts + core: + - api.Document.fonts + - api.FontFace # former compute_from + - api.FontFace.FontFace + - api.FontFace.family + - api.FontFace.load + - api.FontFace.status + - api.FontFace.stretch + - api.FontFace.style + - api.FontFace.unicodeRange + - api.FontFace.weight + - api.FontFaceSet + - api.FontFaceSet.add + - api.FontFaceSet.clear + - api.FontFaceSet.delete + - api.FontFaceSet.forEach + - api.FontFaceSet.has + - api.FontFaceSet.load + - api.FontFaceSet.ready + - api.FontFaceSet.size + - api.FontFaceSet.status + modifier: + - api.FontFace.display + - api.FontFace.loaded + - api.FontFace.worker_support + - api.FontFaceSet.@@iterator + - api.FontFaceSet.entries + - api.FontFaceSet.keys + - api.FontFaceSet.values + - api.FontFaceSet.worker_support + - api.WorkerGlobalScope.fonts + spare: + - api.FontFace.featureSettings + - api.FontFace.variant + - api.FontFace.variationSettings + - api.FontFaceSet.check + - api.FontFaceSet.loading_event + - api.FontFaceSet.loadingdone_event + - api.FontFaceSet.loadingerror_event + - api.FontFaceSetLoadEvent + - api.FontFaceSetLoadEvent.FontFaceSetLoadEvent + - api.FontFaceSetLoadEvent.fontfaces + - api.FontFaceSetLoadEvent.worker_support diff --git a/features/font-size.yml b/features/font-size.yml index fd33c6d2068..105c54f553a 100644 --- a/features/font-size.yml +++ b/features/font-size.yml @@ -2,10 +2,10 @@ name: font-size description: The `font-size` CSS property sets the text height. spec: https://drafts.csswg.org/css-fonts-4/#font-size-prop group: fonts -status: - compute_from: css.properties.font-size compat_features: - - css.properties.font-size - - css.properties.font-size.rem_values - - css.properties.font-size.xxx-large - - svg.global_attributes.font-size + core: + - css.properties.font-size # former compute_from + - svg.global_attributes.font-size + modifier: + - css.properties.font-size.rem_values + - css.properties.font-size.xxx-large diff --git a/features/font-style.yml b/features/font-style.yml index af951199d5c..a6fe546b419 100644 --- a/features/font-style.yml +++ b/features/font-style.yml @@ -2,13 +2,14 @@ name: font-style description: The `font-style` CSS property sets the text style, with `normal`, `italic`, and `oblique` options. spec: https://drafts.csswg.org/css-fonts-4/#font-style-prop group: fonts -status: - compute_from: css.properties.font-style compat_features: - - css.at-rules.font-face.font-style - - css.properties.font-style - - css.properties.font-style.italic - - css.properties.font-style.normal - - css.properties.font-style.oblique - - css.properties.font-style.oblique-angle - - svg.global_attributes.font-style + core: + - css.properties.font-style # former compute_from + - css.properties.font-style.italic + - css.properties.font-style.normal + - css.properties.font-style.oblique + - svg.global_attributes.font-style + modifier: + - css.at-rules.font-face.font-style + spare: + - css.properties.font-style.oblique-angle diff --git a/features/font-variant-alternates.yml b/features/font-variant-alternates.yml index 443bb8a5cab..db75e145d11 100644 --- a/features/font-variant-alternates.yml +++ b/features/font-variant-alternates.yml @@ -3,45 +3,44 @@ description: The `font-variant-alternates` CSS property, along with the `@font-f spec: https://drafts.csswg.org/css-fonts-4/#font-variant-alternates-prop group: fonts caniuse: font-variant-alternates -status: - compute_from: - - css.properties.font-variant-alternates - - css.at-rules.font-feature-values compat_features: - - css.at-rules.font-feature-values - - css.at-rules.font-feature-values.annotation - - css.at-rules.font-feature-values.character-variant - - css.at-rules.font-feature-values.historical-forms - - css.at-rules.font-feature-values.ornaments - - css.at-rules.font-feature-values.styleset - - css.at-rules.font-feature-values.stylistic - - css.at-rules.font-feature-values.swash - - css.properties.font-variant-alternates - - css.properties.font-variant-alternates.annotation - - css.properties.font-variant-alternates.character_variant - - css.properties.font-variant-alternates.historical-forms - - css.properties.font-variant-alternates.normal - - css.properties.font-variant-alternates.ornaments - - css.properties.font-variant-alternates.styleset - - css.properties.font-variant-alternates.stylistic - - css.properties.font-variant-alternates.swash - - api.CSSFontFeatureValuesRule - - api.CSSFontFeatureValuesRule.annotation - - api.CSSFontFeatureValuesRule.characterVariant - - api.CSSFontFeatureValuesRule.fontFamily - - api.CSSFontFeatureValuesRule.ornaments - - api.CSSFontFeatureValuesRule.styleset - - api.CSSFontFeatureValuesRule.stylistic - - api.CSSFontFeatureValuesRule.swash - - api.CSSFontFeatureValuesMap - - api.CSSFontFeatureValuesMap.@@iterator - - api.CSSFontFeatureValuesMap.clear - - api.CSSFontFeatureValuesMap.delete - - api.CSSFontFeatureValuesMap.entries - - api.CSSFontFeatureValuesMap.forEach - - api.CSSFontFeatureValuesMap.get - - api.CSSFontFeatureValuesMap.has - - api.CSSFontFeatureValuesMap.keys - - api.CSSFontFeatureValuesMap.set - - api.CSSFontFeatureValuesMap.size - - api.CSSFontFeatureValuesMap.values + core: + - css.at-rules.font-feature-values # former compute_from + - css.at-rules.font-feature-values.annotation + - css.at-rules.font-feature-values.character-variant + - css.at-rules.font-feature-values.historical-forms + - css.at-rules.font-feature-values.ornaments + - css.at-rules.font-feature-values.styleset + - css.at-rules.font-feature-values.stylistic + - css.at-rules.font-feature-values.swash + - css.properties.font-variant-alternates # former compute_from + - css.properties.font-variant-alternates.historical-forms + - css.properties.font-variant-alternates.normal + modifier: + - css.properties.font-variant-alternates.annotation + - css.properties.font-variant-alternates.character_variant + - css.properties.font-variant-alternates.ornaments + - css.properties.font-variant-alternates.styleset + - css.properties.font-variant-alternates.stylistic + - css.properties.font-variant-alternates.swash + spare: + - api.CSSFontFeatureValuesMap + - api.CSSFontFeatureValuesMap.@@iterator + - api.CSSFontFeatureValuesMap.clear + - api.CSSFontFeatureValuesMap.delete + - api.CSSFontFeatureValuesMap.entries + - api.CSSFontFeatureValuesMap.forEach + - api.CSSFontFeatureValuesMap.get + - api.CSSFontFeatureValuesMap.has + - api.CSSFontFeatureValuesMap.keys + - api.CSSFontFeatureValuesMap.set + - api.CSSFontFeatureValuesMap.size + - api.CSSFontFeatureValuesMap.values + - api.CSSFontFeatureValuesRule + - api.CSSFontFeatureValuesRule.annotation + - api.CSSFontFeatureValuesRule.characterVariant + - api.CSSFontFeatureValuesRule.fontFamily + - api.CSSFontFeatureValuesRule.ornaments + - api.CSSFontFeatureValuesRule.styleset + - api.CSSFontFeatureValuesRule.stylistic + - api.CSSFontFeatureValuesRule.swash diff --git a/features/font-variant.yml b/features/font-variant.yml index 4805d8d1f23..02f6021672b 100644 --- a/features/font-variant.yml +++ b/features/font-variant.yml @@ -2,18 +2,19 @@ name: font-variant description: The `font-variant` CSS property is a shorthand for `font-variant-alternates`, `font-variant-caps`, `font-variant-east-asian`, `font-variant-emoji`, `font-variant-ligatures`, `font-variant-numeric`, and `font-variant-position`. spec: https://drafts.csswg.org/css-fonts-4/#font-variant-prop group: font-features -status: - compute_from: css.properties.font-variant compat_features: - - css.properties.font-variant - - css.properties.font-variant.historical-forms - - css.properties.font-variant.none - - css.properties.font-variant.normal - - css.at-rules.font-face.font-variant - - svg.global_attributes.font-variant - - css.properties.font-variant.sub - - css.properties.font-variant.super - - css.properties.font-variant.turkic_is - - css.properties.font-variant.css_fonts_shorthand - - css.properties.font-variant.greek_accented_characters - - css.properties.font-variant.uppercase_eszett + core: + - css.properties.font-variant # former compute_from + - css.properties.font-variant.normal + - svg.global_attributes.font-variant + modifier: + - css.at-rules.font-face.font-variant + - css.properties.font-variant.css_fonts_shorthand + - css.properties.font-variant.historical-forms + - css.properties.font-variant.none + - css.properties.font-variant.sub + - css.properties.font-variant.super + - css.properties.font-variant.turkic_is + spare: + - css.properties.font-variant.greek_accented_characters + - css.properties.font-variant.uppercase_eszett diff --git a/features/font-variation-settings.yml b/features/font-variation-settings.yml index 980ab91a372..fff9ec55dc1 100644 --- a/features/font-variation-settings.yml +++ b/features/font-variation-settings.yml @@ -3,8 +3,8 @@ description: 'The `font-variation-settings` CSS property sets an "axis of variab spec: https://drafts.csswg.org/css-fonts-4/#font-variation-settings-def group: fonts caniuse: variable-fonts -status: - compute_from: css.properties.font-variation-settings compat_features: - - css.properties.font-variation-settings - - css.at-rules.font-face.font-variation-settings + core: + - css.properties.font-variation-settings # former compute_from + spare: + - css.at-rules.font-face.font-variation-settings diff --git a/features/font-weight.yml b/features/font-weight.yml index 3739982ece2..68ca4346411 100644 --- a/features/font-weight.yml +++ b/features/font-weight.yml @@ -2,14 +2,14 @@ name: font-weight description: The `font-weight` CSS property controls the thickness of a font. It is set explicitly with the keyword `bold` or a number, or relative to the inherited thickness with the keywords `bolder` or `lighter`. spec: https://drafts.csswg.org/css-fonts-4/#font-weight-prop group: fonts -status: - compute_from: css.properties.font-weight compat_features: - - css.at-rules.font-face.font-weight - - css.properties.font-weight - - css.properties.font-weight.bold - - css.properties.font-weight.bolder - - css.properties.font-weight.lighter - - css.properties.font-weight.normal - - css.properties.font-weight.number - - svg.global_attributes.font-weight + core: + - css.properties.font-weight # former compute_from + - css.properties.font-weight.bold + - css.properties.font-weight.bolder + - css.properties.font-weight.lighter + - css.properties.font-weight.normal + - svg.global_attributes.font-weight + modifier: + - css.at-rules.font-face.font-weight + - css.properties.font-weight.number diff --git a/features/forced-colors.yml b/features/forced-colors.yml index 3505fa3513a..235d3950f32 100644 --- a/features/forced-colors.yml +++ b/features/forced-colors.yml @@ -4,11 +4,11 @@ spec: - https://drafts.csswg.org/mediaqueries-5/#forced-colors - https://drafts.csswg.org/css-color-adjust-1/#forced-color-adjust-prop group: css -status: - compute_from: css.at-rules.media.forced-colors compat_features: - - css.at-rules.media.forced-colors - - css.properties.forced-color-adjust - - css.properties.forced-color-adjust.auto - - css.properties.forced-color-adjust.none - - css.properties.forced-color-adjust.preserve-parent-color + core: + - css.at-rules.media.forced-colors # former compute_from + spare: + - css.properties.forced-color-adjust + - css.properties.forced-color-adjust.auto + - css.properties.forced-color-adjust.none + - css.properties.forced-color-adjust.preserve-parent-color diff --git a/features/form-validity-pseudos.yml b/features/form-validity-pseudos.yml index e3039ab7c90..f0c6ff2ae0f 100644 --- a/features/form-validity-pseudos.yml +++ b/features/form-validity-pseudos.yml @@ -5,14 +5,14 @@ caniuse: - css-optional-pseudo - css-in-out-of-range group: selectors -status: - compute_from: css.selectors.optional compat_features: - - css.selectors.invalid.form - - css.selectors.valid.form - - css.selectors.invalid - - css.selectors.optional - - css.selectors.required - - css.selectors.valid - - css.selectors.in-range - - css.selectors.out-of-range + core: + - css.selectors.invalid + - css.selectors.optional # former compute_from + - css.selectors.required + - css.selectors.valid + modifier: + - css.selectors.in-range + - css.selectors.invalid.form + - css.selectors.out-of-range + - css.selectors.valid.form diff --git a/features/form.yml b/features/form.yml index b3cd4355af0..0739aa3a16b 100644 --- a/features/form.yml +++ b/features/form.yml @@ -4,44 +4,44 @@ spec: https://html.spec.whatwg.org/multipage/forms.html#the-form-element group: - forms - landmark-elements -status: - compute_from: html.elements.form compat_features: - - api.FormDataEvent - - api.FormDataEvent.FormDataEvent - - api.FormDataEvent.formData - - api.HTMLFormControlsCollection - - api.HTMLFormControlsCollection.namedItem - - api.HTMLFormElement - - api.HTMLFormElement.acceptCharset - - api.HTMLFormElement.action - - api.HTMLFormElement.autocomplete - - api.HTMLFormElement.elements - - api.HTMLFormElement.encoding - - api.HTMLFormElement.enctype - - api.HTMLFormElement.formdata_event - - api.HTMLFormElement.length - - api.HTMLFormElement.method - - api.HTMLFormElement.name - - api.HTMLFormElement.noValidate - - api.HTMLFormElement.rel - - api.HTMLFormElement.relList - - api.HTMLFormElement.requestSubmit - - api.HTMLFormElement.reset - - api.HTMLFormElement.reset_event - - api.HTMLFormElement.submit - - api.HTMLFormElement.submit_event - - api.HTMLFormElement.target - - html.elements.form - - html.elements.form.accept-charset - - html.elements.form.action - - html.elements.form.autocomplete - - html.elements.form.enctype - - html.elements.form.method - - html.elements.form.name - - html.elements.form.novalidate - - html.elements.form.rel - - html.elements.form.target - - api.SubmitEvent - - api.SubmitEvent.SubmitEvent - - api.SubmitEvent.submitter + core: + - api.HTMLFormControlsCollection + - api.HTMLFormElement + - api.HTMLFormElement.acceptCharset + - api.HTMLFormElement.action + - api.HTMLFormElement.elements + - api.HTMLFormElement.encoding + - api.HTMLFormElement.enctype + - api.HTMLFormElement.length + - api.HTMLFormElement.method + - api.HTMLFormElement.name + - api.HTMLFormElement.reset + - api.HTMLFormElement.submit + - api.HTMLFormElement.submit_event + - api.HTMLFormElement.target + - html.elements.form # former compute_from + - html.elements.form.accept-charset + - html.elements.form.action + - html.elements.form.enctype + - html.elements.form.method + - html.elements.form.name + - html.elements.form.target + modifier: + - api.FormDataEvent + - api.FormDataEvent.FormDataEvent + - api.FormDataEvent.formData + - api.HTMLFormControlsCollection.namedItem + - api.HTMLFormElement.autocomplete + - api.HTMLFormElement.formdata_event + - api.HTMLFormElement.noValidate + - api.HTMLFormElement.rel + - api.HTMLFormElement.relList + - api.HTMLFormElement.requestSubmit + - api.HTMLFormElement.reset_event + - api.SubmitEvent + - api.SubmitEvent.SubmitEvent + - api.SubmitEvent.submitter + - html.elements.form.autocomplete + - html.elements.form.novalidate + - html.elements.form.rel diff --git a/features/functions.yml b/features/functions.yml index 36862a8adcc..ac2ab29bb3f 100644 --- a/features/functions.yml +++ b/features/functions.yml @@ -4,44 +4,44 @@ spec: - https://tc39.es/ecma262/multipage/ecmascript-language-functions-and-classes.html#sec-ecmascript-language-functions-and-classes - https://tc39.es/ecma262/multipage/fundamental-objects.html#sec-function-objects group: javascript -status: - compute_from: javascript.functions compat_features: - - javascript.builtins.Function - - javascript.builtins.Function.@@hasInstance - - javascript.builtins.Function.Function - - javascript.builtins.Function.apply - - javascript.builtins.Function.apply.generic_arrays_as_arguments - - javascript.builtins.Function.bind - - javascript.builtins.Function.call - - javascript.builtins.Function.length - - javascript.builtins.Function.length.configurable_true - - javascript.builtins.Function.name - - javascript.builtins.Function.name.configurable_true - - javascript.builtins.Function.name.inferred_names - - javascript.builtins.Function.toString - - javascript.builtins.Function.toString.toString_revision - - javascript.functions - - javascript.functions.arguments - - javascript.functions.arguments.@@iterator - - javascript.functions.arguments.length - - javascript.functions.arrow_functions - - javascript.functions.arrow_functions.trailing_comma - - javascript.functions.block_level_functions - - javascript.functions.default_parameters - - javascript.functions.default_parameters.destructured_parameter_with_default_value_assignment - - javascript.functions.default_parameters.parameters_without_defaults_after_default_parameters - - javascript.functions.get - - javascript.functions.get.computed_property_names - - javascript.functions.method_definitions - - javascript.functions.method_definitions.async_methods - - javascript.functions.method_definitions.generator_methods_not_constructable - - javascript.functions.rest_parameters - - javascript.functions.rest_parameters.destructuring - - javascript.functions.set - - javascript.functions.set.computed_property_names - - javascript.operators.function - - javascript.operators.function.trailing_comma - - javascript.statements.function - - javascript.statements.function.trailing_comma_in_parameters - - javascript.grammar.trailing_commas.trailing_commas_in_functions + core: + - javascript.builtins.Function + - javascript.builtins.Function.Function + - javascript.builtins.Function.apply + - javascript.builtins.Function.call + - javascript.builtins.Function.length + - javascript.builtins.Function.toString + - javascript.functions # former compute_from + - javascript.functions.arguments + - javascript.functions.arguments.length + - javascript.operators.function + - javascript.statements.function + modifier: + - javascript.builtins.Function.@@hasInstance + - javascript.builtins.Function.apply.generic_arrays_as_arguments + - javascript.builtins.Function.bind + - javascript.builtins.Function.length.configurable_true + - javascript.builtins.Function.name + - javascript.builtins.Function.name.configurable_true + - javascript.builtins.Function.name.inferred_names + - javascript.builtins.Function.toString.toString_revision + - javascript.functions.arguments.@@iterator + - javascript.functions.arrow_functions + - javascript.functions.arrow_functions.trailing_comma + - javascript.functions.block_level_functions + - javascript.functions.default_parameters + - javascript.functions.default_parameters.destructured_parameter_with_default_value_assignment + - javascript.functions.default_parameters.parameters_without_defaults_after_default_parameters + - javascript.functions.get + - javascript.functions.get.computed_property_names + - javascript.functions.method_definitions + - javascript.functions.method_definitions.async_methods + - javascript.functions.method_definitions.generator_methods_not_constructable + - javascript.functions.rest_parameters + - javascript.functions.rest_parameters.destructuring + - javascript.functions.set + - javascript.functions.set.computed_property_names + - javascript.grammar.trailing_commas.trailing_commas_in_functions + - javascript.operators.function.trailing_comma + - javascript.statements.function.trailing_comma_in_parameters diff --git a/features/gamepad-haptics.yml b/features/gamepad-haptics.yml index b7152252c5c..455597b3504 100644 --- a/features/gamepad-haptics.yml +++ b/features/gamepad-haptics.yml @@ -2,17 +2,17 @@ name: Gamepad haptic feedback description: The `gamepad.vibrationActuator` property represents a gamepad's haptics hardware, which allows you to control the vibration motors in a gamepad. spec: https://w3c.github.io/gamepad/#gamepadhapticactuator-interface group: gamepad -status: - compute_from: api.Gamepad.vibrationActuator compat_features: - - api.Gamepad.hapticActuators - - api.GamepadHapticActuator.pulse - - api.Gamepad.vibrationActuator - - api.GamepadHapticActuator - - api.GamepadHapticActuator.effects - - api.GamepadHapticActuator.effects.type_trigger-rumble - - api.GamepadHapticActuator.playEffect - - api.GamepadHapticActuator.playEffect.params_leftTrigger_parameter - - api.GamepadHapticActuator.playEffect.params_rightTrigger_parameter - - api.GamepadHapticActuator.playEffect.type_trigger-rumble - - api.GamepadHapticActuator.reset + core: + - api.Gamepad.vibrationActuator # former compute_from + - api.GamepadHapticActuator + - api.GamepadHapticActuator.playEffect + - api.GamepadHapticActuator.reset + modifier: + - api.Gamepad.hapticActuators + - api.GamepadHapticActuator.effects + - api.GamepadHapticActuator.effects.type_trigger-rumble + - api.GamepadHapticActuator.playEffect.params_leftTrigger_parameter + - api.GamepadHapticActuator.playEffect.params_rightTrigger_parameter + - api.GamepadHapticActuator.playEffect.type_trigger-rumble + - api.GamepadHapticActuator.pulse diff --git a/features/gamepad.yml b/features/gamepad.yml index 380b96f6bcd..66d50649dc6 100644 --- a/features/gamepad.yml +++ b/features/gamepad.yml @@ -3,24 +3,24 @@ description: The `navigator.getGamepads()` API accesses and responds to signals spec: https://w3c.github.io/gamepad/ caniuse: gamepad group: gamepad -status: - compute_from: api.Navigator.getGamepads compat_features: - - api.Gamepad - - api.Gamepad.axes - - api.Gamepad.buttons - - api.Gamepad.connected - - api.Gamepad.id - - api.Gamepad.index - - api.Gamepad.mapping - - api.Gamepad.timestamp - - api.GamepadButton - - api.GamepadButton.pressed - - api.GamepadButton.value - - api.Navigator.getGamepads - - api.GamepadEvent - - api.GamepadEvent.GamepadEvent - - api.GamepadEvent.gamepad - - api.Window.gamepadconnected_event - - api.Window.gamepaddisconnected_event - - html.elements.iframe.allow.gamepad + core: + - api.Gamepad + - api.Gamepad.axes + - api.Gamepad.buttons + - api.Gamepad.connected + - api.Gamepad.id + - api.Gamepad.index + - api.Gamepad.mapping + - api.Gamepad.timestamp + - api.GamepadButton + - api.GamepadButton.pressed + - api.GamepadButton.value + - api.GamepadEvent + - api.GamepadEvent.GamepadEvent + - api.GamepadEvent.gamepad + - api.Navigator.getGamepads # former compute_from + spare: + - api.Window.gamepadconnected_event + - api.Window.gamepaddisconnected_event + - html.elements.iframe.allow.gamepad diff --git a/features/generators.yml b/features/generators.yml index 6ac6c137f29..aa3c9aae1ab 100644 --- a/features/generators.yml +++ b/features/generators.yml @@ -6,20 +6,20 @@ caniuse: es6-generators spec: - https://tc39.es/ecma262/multipage/control-abstraction-objects.html#sec-generator-objects - https://tc39.es/ecma262/multipage/control-abstraction-objects.html#sec-generatorfunction-objects -status: - compute_from: javascript.statements.generator_function compat_features: - - javascript.builtins.Generator - - javascript.builtins.Generator.next - - javascript.builtins.Generator.return - - javascript.builtins.Generator.throw - - javascript.builtins.GeneratorFunction - - javascript.builtins.GeneratorFunction.GeneratorFunction - - javascript.operators.generator_function - - javascript.operators.generator_function.trailing_comma - - javascript.operators.yield - - javascript.operators.yield_star - - javascript.statements.generator_function - - javascript.statements.generator_function.IteratorResult_object - - javascript.statements.generator_function.not_constructable_with_new - - javascript.statements.generator_function.trailing_comma_in_parameters + core: + - javascript.builtins.Generator + - javascript.builtins.Generator.next + - javascript.builtins.Generator.throw + - javascript.builtins.GeneratorFunction + - javascript.builtins.GeneratorFunction.GeneratorFunction + - javascript.operators.yield + - javascript.statements.generator_function # former compute_from + modifier: + - javascript.builtins.Generator.return + - javascript.operators.generator_function + - javascript.operators.generator_function.trailing_comma + - javascript.operators.yield_star + - javascript.statements.generator_function.IteratorResult_object + - javascript.statements.generator_function.not_constructable_with_new + - javascript.statements.generator_function.trailing_comma_in_parameters diff --git a/features/geolocation.yml b/features/geolocation.yml index dcad0fc7ed2..63751fb4d5d 100644 --- a/features/geolocation.yml +++ b/features/geolocation.yml @@ -1,38 +1,39 @@ name: Geolocation API description: The `navigator.geolocation` API requests the user's latitude, longitude, heading, and speed. spec: https://w3c.github.io/geolocation/ -status: - compute_from: api.Navigator.geolocation caniuse: geolocation group: - geolocation compat_features: - - api.Geolocation - - api.Geolocation.clearWatch - - api.Geolocation.getCurrentPosition - - api.Geolocation.secure_context_required - - api.Geolocation.watchPosition - - api.GeolocationCoordinates - - api.GeolocationCoordinates.accuracy - - api.GeolocationCoordinates.altitude - - api.GeolocationCoordinates.altitudeAccuracy - - api.GeolocationCoordinates.heading - - api.GeolocationCoordinates.latitude - - api.GeolocationCoordinates.longitude - - api.GeolocationCoordinates.secure_context_required - - api.GeolocationCoordinates.speed - - api.GeolocationCoordinates.toJSON - - api.GeolocationPosition - - api.GeolocationPosition.coords - - api.GeolocationPosition.secure_context_required - - api.GeolocationPosition.timestamp - - api.GeolocationPosition.toJSON - - api.GeolocationPositionError - - api.GeolocationPositionError.code - - api.GeolocationPositionError.message - - api.GeolocationPositionError.secure_context_required - - api.Navigator.geolocation - - api.Navigator.geolocation.secure_context_required - - api.Permissions.permission_geolocation - - html.elements.iframe.allow.geolocation - - http.headers.Permissions-Policy.geolocation + core: + - api.Geolocation + - api.Geolocation.clearWatch + - api.Geolocation.getCurrentPosition + - api.Geolocation.watchPosition + - api.Navigator.geolocation # former compute_from + modifier: + - api.Geolocation.secure_context_required + - api.GeolocationCoordinates + - api.GeolocationCoordinates.accuracy + - api.GeolocationCoordinates.altitude + - api.GeolocationCoordinates.altitudeAccuracy + - api.GeolocationCoordinates.heading + - api.GeolocationCoordinates.latitude + - api.GeolocationCoordinates.longitude + - api.GeolocationCoordinates.secure_context_required + - api.GeolocationCoordinates.speed + - api.GeolocationPosition + - api.GeolocationPosition.coords + - api.GeolocationPosition.secure_context_required + - api.GeolocationPosition.timestamp + - api.GeolocationPositionError + - api.GeolocationPositionError.code + - api.GeolocationPositionError.message + - api.GeolocationPositionError.secure_context_required + - api.Navigator.geolocation.secure_context_required + - api.Permissions.permission_geolocation + spare: + - api.GeolocationCoordinates.toJSON + - api.GeolocationPosition.toJSON + - html.elements.iframe.allow.geolocation + - http.headers.Permissions-Policy.geolocation diff --git a/features/grid.yml b/features/grid.yml index ae394c3f909..9723db3d005 100644 --- a/features/grid.yml +++ b/features/grid.yml @@ -3,5 +3,68 @@ description: CSS grid is a two-dimensional layout system, which lays content out spec: https://drafts.csswg.org/css-grid-3/ group: grid caniuse: css-grid -status: - compute_from: css.properties.grid +compat_features: + core: + - css.properties.align-content.grid_context + - css.properties.align-items.grid_context + - css.properties.align-self.grid_context + - css.properties.display.grid + - css.properties.display.inline-grid + - css.properties.gap + - css.properties.gap.normal + - css.properties.grid # former compute_from + - css.properties.grid-area + - css.properties.grid-auto-flow + - css.properties.grid-column + - css.properties.grid-column-end + - css.properties.grid-column-start + - css.properties.grid-row + - css.properties.grid-row-end + - css.properties.grid-row-start + - css.properties.grid-template + - css.properties.grid-template-areas + - css.properties.grid-template-columns + - css.properties.grid-template-columns.fit-content + - css.properties.grid-template-columns.minmax + - css.properties.grid-template-rows + - css.properties.grid-template-rows.fit-content + - css.properties.grid-template-rows.minmax + - css.properties.justify-content.grid_context + - css.properties.justify-items.grid_context + - css.properties.justify-self + - css.properties.justify-self.grid_context + - css.properties.row-gap + - css.properties.row-gap.normal + - css.types.flex + modifier: + - css.properties.align-items.grid_context.start_end + - css.properties.column-gap.grid_context + - css.properties.gap.grid_context + - css.properties.gap.grid_context.calc_values + - css.properties.gap.grid_context.percentage_values + - css.properties.grid-auto-columns + - css.properties.grid-auto-flow.column + - css.properties.grid-auto-flow.dense + - css.properties.grid-auto-flow.row + - css.properties.grid-auto-rows + - css.properties.grid-template-areas.none + - css.properties.grid-template-columns.auto + - css.properties.grid-template-columns.max-content + - css.properties.grid-template-columns.min-content + - css.properties.grid-template-columns.none + - css.properties.grid-template-columns.repeat + - css.properties.grid-template-rows.auto + - css.properties.grid-template-rows.max-content + - css.properties.grid-template-rows.min-content + - css.properties.grid-template-rows.none + - css.properties.grid-template-rows.repeat + - css.properties.grid-template.none + - css.properties.justify-self.auto + - css.properties.justify-self.left + - css.properties.justify-self.normal + - css.properties.justify-self.right + - css.properties.justify-self.stretch + - css.properties.place-content.grid_context + - css.properties.place-items.grid_context + - css.properties.place-self.grid_context + - css.properties.row-gap.grid_context diff --git a/features/gyroscope.yml b/features/gyroscope.yml index 3fca269fa0a..823fd96ed13 100644 --- a/features/gyroscope.yml +++ b/features/gyroscope.yml @@ -2,17 +2,18 @@ name: Gyroscope description: The `Gyroscope` API reads the angular velocity of a device in three dimensions. spec: https://w3c.github.io/gyroscope/#gyroscope-interface group: sensors -status: - compute_from: api.Gyroscope compat_features: - - api.Gyroscope - - api.Gyroscope.Gyroscope - - api.Gyroscope.x - - api.Gyroscope.y - - api.Gyroscope.z - - api.Permissions.permission_gyroscope - - html.elements.iframe.allow.gyroscope - - http.headers.Permissions-Policy.gyroscope + core: + - api.Gyroscope # former compute_from + - api.Gyroscope.Gyroscope + - api.Gyroscope.x + - api.Gyroscope.y + - api.Gyroscope.z + - api.Permissions.permission_gyroscope + - html.elements.iframe.allow.gyroscope + modifier: + - http.headers.Permissions-Policy.gyroscope + # Enable when overlapping keys are allowed, https://github.com/web-platform-dx/web-features/issues/1173 # - api.Sensor # - api.Sensor.activate_event diff --git a/features/hsl.yml b/features/hsl.yml index 970bd798a98..fdf66c1629e 100644 --- a/features/hsl.yml +++ b/features/hsl.yml @@ -3,6 +3,12 @@ description: The `hsl()` and `hsla()` CSS functions pick colors using hue, satur spec: https://drafts.csswg.org/css-color-4/#the-hsl-notation caniuse: css3-colors group: color-types -status: - compute_from: css.types.color.hsl.alpha_parameter +compat_features: + core: + - css.types.color.hsl + - css.types.color.hsl.alpha_parameter # former compute_from + - css.types.color.hsl.space_separated_parameters + spare: + - css.types.color.hsl.mixed_type_parameters + # TODO: For alignment with caniuse, tag `hsla()` features when https://github.com/mdn/browser-compat-data/issues/24191 is resolved and update compute_from diff --git a/features/http-authentication.yml b/features/http-authentication.yml index f744a7fdb62..5765d017c3e 100644 --- a/features/http-authentication.yml +++ b/features/http-authentication.yml @@ -5,23 +5,22 @@ spec: - https://httpwg.org/specs/rfc7616.html - https://www.rfc-editor.org/rfc/rfc4120 group: http -status: - compute_from: - - http.headers.Authorization - - http.headers.WWW-Authenticate compat_features: - - http.headers.Authorization - - http.headers.Authorization.Basic - - http.headers.Authorization.Digest - - http.headers.Authorization.Digest.SHA-256 - - http.headers.Authorization.Digest.md5 - - http.headers.Authorization.NTLM - - http.headers.Authorization.Negotiate - - http.headers.Authorization.authorization_removed_cross_origin - - http.headers.WWW-Authenticate - - http.headers.WWW-Authenticate.Basic - - http.headers.WWW-Authenticate.Digest - - http.headers.WWW-Authenticate.Digest.SHA-256 - - http.headers.WWW-Authenticate.Digest.md5 - - http.headers.WWW-Authenticate.NTLM - - http.headers.WWW-Authenticate.Negotiate + core: + - http.headers.Authorization # former compute_from + - http.headers.Authorization.Basic + - http.headers.WWW-Authenticate # former compute_from + - http.headers.WWW-Authenticate.Basic + - http.headers.WWW-Authenticate.Digest + - http.headers.WWW-Authenticate.Digest.md5 + modifier: + - http.headers.Authorization.Digest + - http.headers.Authorization.Digest.md5 + - http.headers.Authorization.NTLM + - http.headers.Authorization.Negotiate + - http.headers.WWW-Authenticate.NTLM + - http.headers.WWW-Authenticate.Negotiate + spare: + - http.headers.Authorization.Digest.SHA-256 + - http.headers.Authorization.authorization_removed_cross_origin + - http.headers.WWW-Authenticate.Digest.SHA-256 diff --git a/features/http11.yml b/features/http11.yml index 93e531a1164..db34e97f7ea 100644 --- a/features/http11.yml +++ b/features/http11.yml @@ -2,51 +2,52 @@ name: HTTP/1.1 description: HTTP/1.1 is a network protocol used by browsers and servers. It has been superseded by HTTP/2 and HTTP/3. spec: https://httpwg.org/specs/rfc9112.html group: http -status: - compute_from: http.methods.GET compat_features: - - http.headers.Accept - - http.headers.Accept-Encoding - - http.headers.Accept-Language - - http.headers.Accept-Ranges - - http.headers.Age - - http.headers.Cache-Control - - http.headers.Connection - - http.headers.Content-Disposition - - http.headers.Content-Encoding - - http.headers.Content-Language - - http.headers.Content-Length - - http.headers.Content-Location - - http.headers.Content-Range - - http.headers.Content-Type - - http.headers.Date - - http.headers.ETag - - http.headers.Expires - - http.headers.From - - http.headers.Host - - http.headers.If-Match - - http.headers.If-Modified-Since - - http.headers.If-None-Match - - http.headers.If-Range - - http.headers.If-Unmodified-Since - - http.headers.Keep-Alive - - http.headers.Last-Modified - - http.headers.Location - - http.headers.Origin - - http.headers.Proxy-Authenticate - - http.headers.Range - - http.headers.Referer - - http.headers.Server - - http.headers.TE - - http.headers.Trailer - - http.headers.Transfer-Encoding - - http.headers.User-Agent - - http.headers.Vary - - http.headers.Via - - http.methods.CONNECT - - http.methods.DELETE - - http.methods.GET - - http.methods.HEAD - - http.methods.OPTIONS - - http.methods.POST - - http.methods.PUT + core: + - http.headers.Accept + - http.headers.Accept-Encoding + - http.headers.Accept-Language + - http.headers.Accept-Ranges + - http.headers.Age + - http.headers.Cache-Control + - http.headers.Connection + - http.headers.Content-Disposition + - http.headers.Content-Encoding + - http.headers.Content-Language + - http.headers.Content-Length + - http.headers.Content-Location + - http.headers.Content-Range + - http.headers.Content-Type + - http.headers.Date + - http.headers.ETag + - http.headers.Expires + - http.headers.From + - http.headers.Host + - http.headers.If-Match + - http.headers.If-Modified-Since + - http.headers.If-None-Match + - http.headers.If-Range + - http.headers.If-Unmodified-Since + - http.headers.Keep-Alive + - http.headers.Last-Modified + - http.headers.Location + - http.headers.Proxy-Authenticate + - http.headers.Range + - http.headers.Referer + - http.headers.Server + - http.headers.TE + - http.headers.Transfer-Encoding + - http.headers.User-Agent + - http.headers.Vary + - http.headers.Via + - http.methods.CONNECT + - http.methods.DELETE + - http.methods.GET # former compute_from + - http.methods.HEAD + - http.methods.OPTIONS + - http.methods.POST + - http.methods.PUT + modifier: + - http.headers.Origin + spare: + - http.headers.Trailer diff --git a/features/hwb.yml b/features/hwb.yml index c95531603a5..7687e087736 100644 --- a/features/hwb.yml +++ b/features/hwb.yml @@ -2,8 +2,8 @@ name: HWB description: The `hwb()` CSS function picks colors using hue, whiteness, and blackness channels. spec: https://drafts.csswg.org/css-color-4/#the-hwb-notation group: color-types -status: - compute_from: css.types.color.hwb compat_features: - - css.types.color.hwb - - css.types.color.hwb.mixed_type_parameters + core: + - css.types.color.hwb # former compute_from + spare: + - css.types.color.hwb.mixed_type_parameters diff --git a/features/iframe-sandbox.yml b/features/iframe-sandbox.yml index 6e7fc08600e..f8fc43fdb56 100644 --- a/features/iframe-sandbox.yml +++ b/features/iframe-sandbox.yml @@ -4,18 +4,19 @@ spec: - https://html.spec.whatwg.org/multipage/iframe-embed-object.html#attr-iframe-sandbox - https://privacycg.github.io/storage-access/#sandboxing-storage-access caniuse: iframe-sandbox -status: - compute_from: html.elements.iframe.sandbox compat_features: - - api.HTMLIFrameElement.sandbox - - html.elements.iframe.sandbox - - html.elements.iframe.sandbox.allow-downloads - - html.elements.iframe.sandbox.allow-forms - - html.elements.iframe.sandbox.allow-modals - - html.elements.iframe.sandbox.allow-popups - - html.elements.iframe.sandbox.allow-popups-to-escape-sandbox - - html.elements.iframe.sandbox.allow-same-origin - - html.elements.iframe.sandbox.allow-scripts - - html.elements.iframe.sandbox.allow-top-navigation - - html.elements.iframe.sandbox.allow-top-navigation-by-user-activation - - html.elements.iframe.sandbox.allow-top-navigation-to-custom-protocols + core: + - api.HTMLIFrameElement.sandbox + - html.elements.iframe.sandbox # former compute_from + modifier: + - html.elements.iframe.sandbox.allow-downloads + - html.elements.iframe.sandbox.allow-forms + - html.elements.iframe.sandbox.allow-modals + - html.elements.iframe.sandbox.allow-popups + - html.elements.iframe.sandbox.allow-popups-to-escape-sandbox + - html.elements.iframe.sandbox.allow-same-origin + - html.elements.iframe.sandbox.allow-scripts + - html.elements.iframe.sandbox.allow-top-navigation + - html.elements.iframe.sandbox.allow-top-navigation-by-user-activation + spare: + - html.elements.iframe.sandbox.allow-top-navigation-to-custom-protocols diff --git a/features/iframe.yml b/features/iframe.yml index bdca70bc7ba..c9c78451526 100644 --- a/features/iframe.yml +++ b/features/iframe.yml @@ -2,19 +2,19 @@ name: description: The `` element embeds another HTML page into the current page. spec: https://html.spec.whatwg.org/multipage/iframe-embed-object.html#the-iframe-element group: html-elements -status: - compute_from: html.elements.iframe compat_features: - - api.HTMLIFrameElement - - api.HTMLIFrameElement.contentDocument - - api.HTMLIFrameElement.contentWindow - - api.HTMLIFrameElement.getSVGDocument - - api.HTMLIFrameElement.height - - api.HTMLIFrameElement.name - - api.HTMLIFrameElement.src - - api.HTMLIFrameElement.width - - html.elements.iframe - - html.elements.iframe.height - - html.elements.iframe.name - - html.elements.iframe.src - - html.elements.iframe.width + core: + - api.HTMLIFrameElement + - api.HTMLIFrameElement.contentDocument + - api.HTMLIFrameElement.contentWindow + - api.HTMLIFrameElement.height + - api.HTMLIFrameElement.name + - api.HTMLIFrameElement.src + - api.HTMLIFrameElement.width + - html.elements.iframe # former compute_from + - html.elements.iframe.height + - html.elements.iframe.name + - html.elements.iframe.src + - html.elements.iframe.width + modifier: + - api.HTMLIFrameElement.getSVGDocument diff --git a/features/image-maps.yml b/features/image-maps.yml index 156dc134699..f5769d0b6ee 100644 --- a/features/image-maps.yml +++ b/features/image-maps.yml @@ -2,44 +2,44 @@ name: Image maps description: The `` and `` elements define a clickable area on an image. spec: https://html.spec.whatwg.org/multipage/image-maps.html group: html-elements -status: - compute_from: html.elements.area compat_features: - - api.HTMLAreaElement - - api.HTMLAreaElement.alt - - api.HTMLAreaElement.coords - - api.HTMLAreaElement.hash - - api.HTMLAreaElement.host - - api.HTMLAreaElement.hostname - - api.HTMLAreaElement.href - - api.HTMLAreaElement.origin - - api.HTMLAreaElement.password - - api.HTMLAreaElement.pathname - - api.HTMLAreaElement.port - - api.HTMLAreaElement.protocol - - api.HTMLAreaElement.rel - - api.HTMLAreaElement.relList - - api.HTMLAreaElement.search - - api.HTMLAreaElement.shape - - api.HTMLAreaElement.target - - api.HTMLAreaElement.toString - - api.HTMLAreaElement.username - - api.HTMLImageElement.isMap - - api.HTMLImageElement.useMap - - api.HTMLMapElement - - api.HTMLMapElement.areas - - api.HTMLMapElement.name - - html.elements.area - - html.elements.area.alt - - html.elements.area.coords - - html.elements.area.href - - html.elements.area.implicit_noopener - - html.elements.area.rel - - html.elements.area.rel.noopener - - html.elements.area.rel.noreferrer - - html.elements.area.shape - - html.elements.area.target - - html.elements.img.ismap - - html.elements.img.usemap - - html.elements.map - - html.elements.map.name + core: + - api.HTMLAreaElement + - api.HTMLAreaElement.alt + - api.HTMLAreaElement.coords + - api.HTMLAreaElement.hash + - api.HTMLAreaElement.host + - api.HTMLAreaElement.hostname + - api.HTMLAreaElement.href + - api.HTMLAreaElement.pathname + - api.HTMLAreaElement.port + - api.HTMLAreaElement.protocol + - api.HTMLAreaElement.search + - api.HTMLAreaElement.shape + - api.HTMLAreaElement.target + - html.elements.area # former compute_from + - html.elements.area.alt + - html.elements.area.coords + - html.elements.area.href + - html.elements.area.shape + - html.elements.area.target + - html.elements.map + - html.elements.map.name + modifier: + - api.HTMLAreaElement.origin + - api.HTMLAreaElement.password + - api.HTMLAreaElement.rel + - api.HTMLAreaElement.relList + - api.HTMLAreaElement.toString + - api.HTMLAreaElement.username + - api.HTMLImageElement.isMap + - api.HTMLImageElement.useMap + - api.HTMLMapElement + - api.HTMLMapElement.areas + - api.HTMLMapElement.name + - html.elements.area.implicit_noopener + - html.elements.area.rel + - html.elements.area.rel.noopener + - html.elements.area.rel.noreferrer + - html.elements.img.ismap + - html.elements.img.usemap diff --git a/features/imagebitmaprenderingcontext.yml b/features/imagebitmaprenderingcontext.yml index ebddd40d9c6..121e4f55ff3 100644 --- a/features/imagebitmaprenderingcontext.yml +++ b/features/imagebitmaprenderingcontext.yml @@ -1,13 +1,12 @@ name: ImageBitmapRenderingContext description: The `ImageBitmapRenderingContext` API is the `"bitmaprenderer"` rendering context for the `` element. It is commonly used to transfer frames from an `OffscreenCanvas` to a user-visible `` element. spec: https://html.spec.whatwg.org/multipage/canvas.html#the-imagebitmaprenderingcontext-interface -status: - compute_from: - - api.HTMLCanvasElement.getContext.bitmaprenderer_context - - api.ImageBitmapRenderingContext.transferFromImageBitmap compat_features: - - api.HTMLCanvasElement.getContext.bitmaprenderer_context - - api.HTMLCanvasElement.getContext.bitmaprenderer_context.options_alpha_parameter - - api.ImageBitmapRenderingContext - - api.ImageBitmapRenderingContext.canvas - - api.ImageBitmapRenderingContext.transferFromImageBitmap + core: + - api.HTMLCanvasElement.getContext.bitmaprenderer_context # former compute_from + - api.ImageBitmapRenderingContext + - api.ImageBitmapRenderingContext.transferFromImageBitmap # former compute_from + modifier: + - api.ImageBitmapRenderingContext.canvas + spare: + - api.HTMLCanvasElement.getContext.bitmaprenderer_context.options_alpha_parameter diff --git a/features/img.yml b/features/img.yml index 2a2aefdff39..8ee39c5e6d2 100644 --- a/features/img.yml +++ b/features/img.yml @@ -2,27 +2,27 @@ name: description: The `` element adds an image into the document. spec: https://html.spec.whatwg.org/multipage/embedded-content.html#the-img-element group: html-elements -status: - compute_from: html.elements.img compat_features: - - api.HTMLImageElement - - api.HTMLImageElement.Image - - api.HTMLImageElement.alt - - api.HTMLImageElement.complete - - api.HTMLImageElement.crossOrigin - - api.HTMLImageElement.decode - - api.HTMLImageElement.decoding - - api.HTMLImageElement.height - - api.HTMLImageElement.naturalHeight - - api.HTMLImageElement.naturalWidth - - api.HTMLImageElement.src - - api.HTMLImageElement.width - - api.HTMLImageElement.x - - api.HTMLImageElement.y - - html.elements.img - - html.elements.img.alt - - html.elements.img.crossorigin - - html.elements.img.decoding - - html.elements.img.height - - html.elements.img.src - - html.elements.img.width + core: + - api.HTMLImageElement + - api.HTMLImageElement.Image + - html.elements.img # former compute_from + - html.elements.img.src + modifier: + - api.HTMLImageElement.alt + - api.HTMLImageElement.complete + - api.HTMLImageElement.crossOrigin + - api.HTMLImageElement.decode + - api.HTMLImageElement.decoding + - api.HTMLImageElement.height + - api.HTMLImageElement.naturalHeight + - api.HTMLImageElement.naturalWidth + - api.HTMLImageElement.src + - api.HTMLImageElement.width + - api.HTMLImageElement.x + - api.HTMLImageElement.y + - html.elements.img.alt + - html.elements.img.crossorigin + - html.elements.img.decoding + - html.elements.img.height + - html.elements.img.width diff --git a/features/input-date-time.yml b/features/input-date-time.yml index 4fbd375d2cb..f50e9f5e3e5 100644 --- a/features/input-date-time.yml +++ b/features/input-date-time.yml @@ -4,13 +4,14 @@ spec: https://html.spec.whatwg.org/multipage/input.html#date-state-(type=date) group: - forms - html-elements -status: - compute_from: html.elements.input.type_date caniuse: input-datetime compat_features: - - api.HTMLInputElement.valueAsDate - - html.elements.input.type_date - - html.elements.input.type_datetime-local - - html.elements.input.type_month - - html.elements.input.type_time - - html.elements.input.type_week + core: + - api.HTMLInputElement.valueAsDate + - html.elements.input.type_date # former compute_from + - html.elements.input.type_time + modifier: + - html.elements.input.type_datetime-local + spare: + - html.elements.input.type_month + - html.elements.input.type_week diff --git a/features/input-event.yml b/features/input-event.yml index a699b4d6a57..3dec6ba17ce 100644 --- a/features/input-event.yml +++ b/features/input-event.yml @@ -2,16 +2,17 @@ name: input (event) description: The `input` event fires when a form control changes or an element with the `contenteditable` attribute changes. spec: https://w3c.github.io/uievents/#event-type-input caniuse: input-event -status: - compute_from: api.Element.input_event compat_features: - - api.Element.beforeinput_event - - api.Element.input_event - - api.InputEvent - - api.InputEvent.InputEvent - - api.InputEvent.inputType - - api.InputEvent.data - - api.InputEvent.dataTransfer - - api.InputEvent.getTargetRanges - - api.InputEvent.inputType.insertFromPasteAsQuotation - - api.InputEvent.isComposing + core: + - api.Element.input_event # former compute_from + modifier: + - api.Element.beforeinput_event + - api.InputEvent + - api.InputEvent.InputEvent + - api.InputEvent.data + - api.InputEvent.dataTransfer + - api.InputEvent.getTargetRanges + - api.InputEvent.inputType + - api.InputEvent.isComposing + spare: + - api.InputEvent.inputType.insertFromPasteAsQuotation diff --git a/features/input-number.yml b/features/input-number.yml index fcc02cd1828..fd361434b0a 100644 --- a/features/input-number.yml +++ b/features/input-number.yml @@ -5,16 +5,16 @@ group: - forms - html-elements caniuse: input-number -status: - compute_from: html.elements.input.type_number compat_features: - - api.HTMLInputElement.valueAsNumber - - api.HTMLInputElement.max - - api.HTMLInputElement.min - - api.HTMLInputElement.step - - api.HTMLInputElement.stepDown - - api.HTMLInputElement.stepUp - - html.elements.input.max - - html.elements.input.min - - html.elements.input.step - - html.elements.input.type_number + core: + - api.HTMLInputElement.max + - api.HTMLInputElement.min + - api.HTMLInputElement.step + - api.HTMLInputElement.valueAsNumber + - html.elements.input.max + - html.elements.input.min + - html.elements.input.step + - html.elements.input.type_number # former compute_from + spare: + - api.HTMLInputElement.stepDown + - api.HTMLInputElement.stepUp diff --git a/features/input-password.yml b/features/input-password.yml index 4f564164dd6..fb1ace8c503 100644 --- a/features/input-password.yml +++ b/features/input-password.yml @@ -4,8 +4,8 @@ spec: https://html.spec.whatwg.org/multipage/input.html#password-state-(type=pas group: - forms - html-elements -status: - compute_from: html.elements.input.type_password compat_features: - - html.elements.input.type_password - - html.elements.input.type_password.insecure_login_handling + core: + - html.elements.input.type_password # former compute_from + spare: + - html.elements.input.type_password.insecure_login_handling diff --git a/features/input-range.yml b/features/input-range.yml index 3bb64fc7e81..ad3025be70b 100644 --- a/features/input-range.yml +++ b/features/input-range.yml @@ -5,9 +5,10 @@ group: - forms - html-elements caniuse: input-range -status: - compute_from: html.elements.input.type_range compat_features: - - html.elements.input.type_range - - html.elements.input.type_range.vertical_orientation - - html.elements.input.type_range.tick_marks + core: + - html.elements.input.type_range # former compute_from + modifier: + - html.elements.input.type_range.tick_marks + spare: + - html.elements.input.type_range.vertical_orientation diff --git a/features/input.yml b/features/input.yml index 24ff74076f1..d378059d539 100644 --- a/features/input.yml +++ b/features/input.yml @@ -4,63 +4,63 @@ spec: https://html.spec.whatwg.org/multipage/input.html#the-input-element group: - forms - html-elements -status: - compute_from: html.elements.input compat_features: - - api.HTMLInputElement - - api.HTMLInputElement.accept - - api.HTMLInputElement.alt - - api.HTMLInputElement.autocomplete - - api.HTMLInputElement.cancel_event - - api.HTMLInputElement.checked - - api.HTMLInputElement.defaultValue - - api.HTMLInputElement.disabled - - api.HTMLInputElement.form - - api.HTMLInputElement.formAction - - api.HTMLInputElement.formEnctype - - api.HTMLInputElement.formMethod - - api.HTMLInputElement.formNoValidate - - api.HTMLInputElement.formTarget - - api.HTMLInputElement.height - - api.HTMLInputElement.invalid_event - - api.HTMLInputElement.labels - - api.HTMLInputElement.list - - api.HTMLInputElement.maxLength - - api.HTMLInputElement.minLength - - api.HTMLInputElement.name - - api.HTMLInputElement.pattern - - api.HTMLInputElement.placeholder - - api.HTMLInputElement.readOnly - - api.HTMLInputElement.required - - api.HTMLInputElement.select - - api.HTMLInputElement.select_event - - api.HTMLInputElement.selectionDirection - - api.HTMLInputElement.selectionEnd - - api.HTMLInputElement.selectionStart - - api.HTMLInputElement.setRangeText - - api.HTMLInputElement.setSelectionRange - - api.HTMLInputElement.size - - api.HTMLInputElement.type - - api.HTMLInputElement.value - - api.HTMLInputElement.width - - html.elements.input - - html.elements.input.accept - - html.elements.input.alt - - html.elements.input.checked - - html.elements.input.disabled - - html.elements.input.form - - html.elements.input.formaction - - html.elements.input.formenctype - - html.elements.input.formmethod - - html.elements.input.formnovalidate - - html.elements.input.formtarget - - html.elements.input.maxlength - - html.elements.input.minlength - - html.elements.input.name - - html.elements.input.pattern - - html.elements.input.placeholder - - html.elements.input.readonly - - html.elements.input.required - - html.elements.input.size - - html.elements.input.src - - html.elements.input.type_text + core: + - api.HTMLInputElement + - api.HTMLInputElement.accept + - api.HTMLInputElement.alt + - api.HTMLInputElement.checked + - api.HTMLInputElement.defaultValue + - api.HTMLInputElement.disabled + - api.HTMLInputElement.form + - api.HTMLInputElement.maxLength + - api.HTMLInputElement.name + - api.HTMLInputElement.readOnly + - api.HTMLInputElement.select + - api.HTMLInputElement.size + - api.HTMLInputElement.type + - api.HTMLInputElement.value + - html.elements.input # former compute_from + - html.elements.input.accept + - html.elements.input.alt + - html.elements.input.checked + - html.elements.input.disabled + - html.elements.input.form + - html.elements.input.maxlength + - html.elements.input.name + - html.elements.input.readonly + - html.elements.input.size + - html.elements.input.src + - html.elements.input.type_text + modifier: + - api.HTMLInputElement.autocomplete + - api.HTMLInputElement.cancel_event + - api.HTMLInputElement.formAction + - api.HTMLInputElement.formEnctype + - api.HTMLInputElement.formMethod + - api.HTMLInputElement.formNoValidate + - api.HTMLInputElement.formTarget + - api.HTMLInputElement.height + - api.HTMLInputElement.invalid_event + - api.HTMLInputElement.labels + - api.HTMLInputElement.list + - api.HTMLInputElement.minLength + - api.HTMLInputElement.pattern + - api.HTMLInputElement.placeholder + - api.HTMLInputElement.required + - api.HTMLInputElement.select_event + - api.HTMLInputElement.selectionDirection + - api.HTMLInputElement.selectionEnd + - api.HTMLInputElement.selectionStart + - api.HTMLInputElement.setRangeText + - api.HTMLInputElement.setSelectionRange + - api.HTMLInputElement.width + - html.elements.input.formaction + - html.elements.input.formenctype + - html.elements.input.formmethod + - html.elements.input.formnovalidate + - html.elements.input.formtarget + - html.elements.input.minlength + - html.elements.input.pattern + - html.elements.input.placeholder + - html.elements.input.required diff --git a/features/interaction.yml b/features/interaction.yml index ea4bc4d6529..7d7cb0bc540 100644 --- a/features/interaction.yml +++ b/features/interaction.yml @@ -3,10 +3,10 @@ description: "The `pointer`, `any-pointer`, `hover`, and `any-hover` CSS media q spec: https://drafts.csswg.org/mediaqueries-5/#mf-interaction caniuse: css-media-interaction group: media-queries -status: - compute_from: css.at-rules.media.any-pointer compat_features: - - css.at-rules.media.hover - - css.at-rules.media.any-hover - - css.at-rules.media.any-pointer - - css.at-rules.media.pointer + core: + - css.at-rules.media.any-pointer # former compute_from + modifier: + - css.at-rules.media.any-hover + - css.at-rules.media.hover + - css.at-rules.media.pointer diff --git a/features/intersection-observer.yml b/features/intersection-observer.yml index 736718b55ab..17520d98874 100644 --- a/features/intersection-observer.yml +++ b/features/intersection-observer.yml @@ -1,30 +1,31 @@ name: Intersection observer description: The `IntersectionObserver` API asynchronously observes changes in the intersection of a target element with an ancestor element or with a top-level document's viewport. spec: https://w3c.github.io/IntersectionObserver/ -status: - compute_from: api.IntersectionObserverEntry.isIntersecting caniuse: intersectionobserver compat_features: - - api.IntersectionObserver - - api.IntersectionObserver.IntersectionObserver - - api.IntersectionObserver.IntersectionObserver.options_root_parameter_Document - - api.IntersectionObserver.delay - - api.IntersectionObserver.disconnect - - api.IntersectionObserver.observe - - api.IntersectionObserver.root - - api.IntersectionObserver.rootMargin - - api.IntersectionObserver.scrollMargin - - api.IntersectionObserver.takeRecords - - api.IntersectionObserver.thresholds - - api.IntersectionObserver.trackVisibility - - api.IntersectionObserver.unobserve - - api.IntersectionObserverEntry - - api.IntersectionObserverEntry.IntersectionObserverEntry - - api.IntersectionObserverEntry.boundingClientRect - - api.IntersectionObserverEntry.intersectionRatio - - api.IntersectionObserverEntry.intersectionRect - - api.IntersectionObserverEntry.isIntersecting - - api.IntersectionObserverEntry.isVisible - - api.IntersectionObserverEntry.rootBounds - - api.IntersectionObserverEntry.target - - api.IntersectionObserverEntry.time + core: + - api.IntersectionObserver + - api.IntersectionObserver.IntersectionObserver + - api.IntersectionObserver.disconnect + - api.IntersectionObserver.observe + - api.IntersectionObserver.root + - api.IntersectionObserver.rootMargin + - api.IntersectionObserver.takeRecords + - api.IntersectionObserver.thresholds + - api.IntersectionObserver.unobserve + - api.IntersectionObserverEntry + - api.IntersectionObserverEntry.boundingClientRect + - api.IntersectionObserverEntry.intersectionRatio + - api.IntersectionObserverEntry.intersectionRect + - api.IntersectionObserverEntry.isIntersecting # former compute_from + - api.IntersectionObserverEntry.rootBounds + - api.IntersectionObserverEntry.target + - api.IntersectionObserverEntry.time + modifier: + - api.IntersectionObserver.IntersectionObserver.options_root_parameter_Document + spare: + - api.IntersectionObserver.delay + - api.IntersectionObserver.scrollMargin + - api.IntersectionObserver.trackVisibility + - api.IntersectionObserverEntry.IntersectionObserverEntry + - api.IntersectionObserverEntry.isVisible diff --git a/features/intl-plural-rules.yml b/features/intl-plural-rules.yml index 8aae46b160c..4552fa781c5 100644 --- a/features/intl-plural-rules.yml +++ b/features/intl-plural-rules.yml @@ -2,17 +2,18 @@ name: Intl.PluralRules description: "The `Intl.PluralRules` API creates a locale-aware object that tells you which of the language's pluralization rules apply based on a given number." group: intl spec: https://tc39.es/ecma402/#pluralrules-objects -status: - compute_from: javascript.builtins.Intl.PluralRules compat_features: - - javascript.builtins.Intl.PluralRules - - javascript.builtins.Intl.PluralRules.PluralRules - - javascript.builtins.Intl.PluralRules.PluralRules.options_parameter - - javascript.builtins.Intl.PluralRules.PluralRules.options_parameter.options_roundingIncrement_parameter - - javascript.builtins.Intl.PluralRules.PluralRules.options_parameter.options_roundingMode_parameter - - javascript.builtins.Intl.PluralRules.PluralRules.options_parameter.options_roundingPriority_parameter - - javascript.builtins.Intl.PluralRules.PluralRules.options_parameter.options_trailingZeroDisplay_parameter - - javascript.builtins.Intl.PluralRules.resolvedOptions - - javascript.builtins.Intl.PluralRules.select - - javascript.builtins.Intl.PluralRules.selectRange - - javascript.builtins.Intl.PluralRules.supportedLocalesOf + core: + - javascript.builtins.Intl.PluralRules # former compute_from + - javascript.builtins.Intl.PluralRules.PluralRules + - javascript.builtins.Intl.PluralRules.resolvedOptions + - javascript.builtins.Intl.PluralRules.select + - javascript.builtins.Intl.PluralRules.supportedLocalesOf + modifier: + - javascript.builtins.Intl.PluralRules.PluralRules.options_parameter + - javascript.builtins.Intl.PluralRules.PluralRules.options_parameter.options_roundingPriority_parameter + - javascript.builtins.Intl.PluralRules.selectRange + spare: + - javascript.builtins.Intl.PluralRules.PluralRules.options_parameter.options_roundingIncrement_parameter + - javascript.builtins.Intl.PluralRules.PluralRules.options_parameter.options_roundingMode_parameter + - javascript.builtins.Intl.PluralRules.PluralRules.options_parameter.options_trailingZeroDisplay_parameter diff --git a/features/iterators.yml b/features/iterators.yml index b56d9c21634..b7863856588 100644 --- a/features/iterators.yml +++ b/features/iterators.yml @@ -5,10 +5,10 @@ snapshot: ecmascript-2015 spec: - https://tc39.es/ecma262/multipage/control-abstraction-objects.html#sec-%iteratorprototype%-object - https://tc39.es/ecma262/multipage/ecmascript-language-statements-and-declarations.html#sec-for-in-and-for-of-statements -status: - compute_from: javascript.statements.for_of compat_features: - - javascript.builtins.Iterator - - javascript.builtins.Iterator.@@iterator - - javascript.statements.for_of - - javascript.statements.for_of.closing_iterators + core: + - javascript.statements.for_of # former compute_from + modifier: + - javascript.builtins.Iterator + - javascript.builtins.Iterator.@@iterator + - javascript.statements.for_of.closing_iterators diff --git a/features/json.yml b/features/json.yml index 7ddff692442..1f69077cc77 100644 --- a/features/json.yml +++ b/features/json.yml @@ -2,11 +2,11 @@ name: JSON description: The `JSON` API provides static methods for parsing values from and converting values to JavaScript Object Notation (JSON), a serialization format for objects, arrays, numbers, strings, Boolean values, and null. group: json spec: https://tc39.es/ecma262/multipage/structured-data.html#sec-json-object -status: - compute_from: javascript.builtins.JSON compat_features: - - javascript.builtins.JSON - - javascript.builtins.JSON.json_superset - - javascript.builtins.JSON.parse - - javascript.builtins.JSON.stringify - - javascript.builtins.JSON.stringify.well_formed_stringify + core: + - javascript.builtins.JSON # former compute_from + - javascript.builtins.JSON.parse + - javascript.builtins.JSON.stringify + modifier: + - javascript.builtins.JSON.json_superset + - javascript.builtins.JSON.stringify.well_formed_stringify diff --git a/features/keyboard-events.yml b/features/keyboard-events.yml index dae6bdec438..e803d5c4308 100644 --- a/features/keyboard-events.yml +++ b/features/keyboard-events.yml @@ -1,35 +1,34 @@ name: Keyboard events description: The `keydown` and `keyup` events fire for each key press (or, with modifier keys, a combination of key presses) on a keyboard. spec: https://w3c.github.io/uievents/#events-keyboardevents -status: - compute_from: - - api.Element.keydown_event - - api.Element.keyup_event compat_features: - - api.Element.keydown_event - - api.Element.keyup_event - - api.KeyboardEvent - - api.KeyboardEvent.KeyboardEvent - - api.KeyboardEvent.altKey - - api.KeyboardEvent.code - - api.KeyboardEvent.ctrlKey - - api.KeyboardEvent.getModifierState - - api.KeyboardEvent.getModifierState.key_parameter_alt - - api.KeyboardEvent.getModifierState.key_parameter_altgraph - - api.KeyboardEvent.getModifierState.key_parameter_capslock - - api.KeyboardEvent.getModifierState.key_parameter_control - - api.KeyboardEvent.getModifierState.key_parameter_fn - - api.KeyboardEvent.getModifierState.key_parameter_meta - - api.KeyboardEvent.getModifierState.key_parameter_numlock - - api.KeyboardEvent.getModifierState.key_parameter_scrolllock - - api.KeyboardEvent.getModifierState.key_parameter_shift - - api.KeyboardEvent.getModifierState.key_parameter_symbol - - api.KeyboardEvent.isComposing - - api.KeyboardEvent.key - - api.KeyboardEvent.key.dead_key - - api.KeyboardEvent.key.non_printable_keys - - api.KeyboardEvent.key.printable_key - - api.KeyboardEvent.location - - api.KeyboardEvent.metaKey - - api.KeyboardEvent.repeat - - api.KeyboardEvent.shiftKey + core: + - api.Element.keydown_event # former compute_from + - api.Element.keyup_event # former compute_from + - api.KeyboardEvent + - api.KeyboardEvent.altKey + - api.KeyboardEvent.ctrlKey + - api.KeyboardEvent.metaKey + - api.KeyboardEvent.shiftKey + modifier: + - api.KeyboardEvent.KeyboardEvent + - api.KeyboardEvent.getModifierState + - api.KeyboardEvent.getModifierState.key_parameter_alt + - api.KeyboardEvent.getModifierState.key_parameter_altgraph + - api.KeyboardEvent.getModifierState.key_parameter_capslock + - api.KeyboardEvent.getModifierState.key_parameter_control + - api.KeyboardEvent.getModifierState.key_parameter_meta + - api.KeyboardEvent.getModifierState.key_parameter_shift + - api.KeyboardEvent.isComposing + - api.KeyboardEvent.key + - api.KeyboardEvent.key.dead_key + - api.KeyboardEvent.key.non_printable_keys + - api.KeyboardEvent.key.printable_key + - api.KeyboardEvent.location + spare: + - api.KeyboardEvent.code + - api.KeyboardEvent.getModifierState.key_parameter_fn + - api.KeyboardEvent.getModifierState.key_parameter_numlock + - api.KeyboardEvent.getModifierState.key_parameter_scrolllock + - api.KeyboardEvent.getModifierState.key_parameter_symbol + - api.KeyboardEvent.repeat diff --git a/features/label.yml b/features/label.yml index 1b4f3c86308..60856dbe190 100644 --- a/features/label.yml +++ b/features/label.yml @@ -4,12 +4,12 @@ spec: https://html.spec.whatwg.org/multipage/forms.html#the-label-element group: - forms - html-elements -status: - compute_from: html.elements.label compat_features: - - api.HTMLLabelElement - - api.HTMLLabelElement.control - - api.HTMLLabelElement.form - - api.HTMLLabelElement.htmlFor - - html.elements.label - - html.elements.label.for + core: + - api.HTMLLabelElement + - api.HTMLLabelElement.form + - api.HTMLLabelElement.htmlFor + - html.elements.label # former compute_from + - html.elements.label.for + modifier: + - api.HTMLLabelElement.control diff --git a/features/lang.yml b/features/lang.yml index fb2f5136c6f..2175a0bf457 100644 --- a/features/lang.yml +++ b/features/lang.yml @@ -2,9 +2,9 @@ name: :lang() description: The `:lang()` CSS functional pseudo-class matches elements based on their content language. spec: https://drafts.csswg.org/selectors-4/#the-lang-pseudo group: selectors -status: - compute_from: css.selectors.lang compat_features: - - css.selectors.lang - - css.selectors.lang.argument_list - - css.selectors.lang.wildcards + core: + - css.selectors.lang # former compute_from + spare: + - css.selectors.lang.argument_list + - css.selectors.lang.wildcards diff --git a/features/language.yml b/features/language.yml index 5c0dfab1eef..b2552592ba8 100644 --- a/features/language.yml +++ b/features/language.yml @@ -1,12 +1,13 @@ name: Language description: "The `navigator.language` property is a string representing the preferred language of the user, usually the language of the browser UI. The `navigator.languages` property is an array of strings representing the user's preferred languages." spec: https://html.spec.whatwg.org/multipage/system-state.html#language-preferences -status: - compute_from: api.Navigator.language compat_features: - - api.Navigator.language - - api.Navigator.languages - - api.Window.languagechange_event - - api.WorkerGlobalScope.languagechange_event - - api.WorkerNavigator.language - - api.WorkerNavigator.languages + core: + - api.Navigator.language # former compute_from + modifier: + - api.Navigator.languages + - api.Window.languagechange_event + - api.WorkerNavigator.language + - api.WorkerNavigator.languages + spare: + - api.WorkerGlobalScope.languagechange_event diff --git a/features/link-rel-prefetch.yml b/features/link-rel-prefetch.yml index 44d3a5c88c1..adc03a69c66 100644 --- a/features/link-rel-prefetch.yml +++ b/features/link-rel-prefetch.yml @@ -3,10 +3,10 @@ description: The `rel="prefetch"` attribute for the `` HTML element is a h spec: https://html.spec.whatwg.org/multipage/links.html#link-type-prefetch caniuse: link-rel-prefetch group: resource-hints -status: - compute_from: html.elements.link.rel.prefetch compat_features: - - api.PerformanceResourceTiming.deliveryType.navigational-prefetch - - html.elements.link.rel.prefetch - - http.headers.Sec-Purpose - - http.headers.Sec-Purpose.prefetch + core: + - html.elements.link.rel.prefetch # former compute_from + modifier: + - api.PerformanceResourceTiming.deliveryType.navigational-prefetch + - http.headers.Sec-Purpose + - http.headers.Sec-Purpose.prefetch diff --git a/features/link.yml b/features/link.yml index 2bb74130355..ae2c3639383 100644 --- a/features/link.yml +++ b/features/link.yml @@ -2,27 +2,27 @@ name: description: The `` element creates a relationship between the current document and an external resource, such as a stylesheet or favicon. spec: https://html.spec.whatwg.org/multipage/semantics.html#the-link-element group: html-elements -status: - compute_from: html.elements.link compat_features: - - api.HTMLLinkElement - - api.HTMLLinkElement.as - - api.HTMLLinkElement.crossOrigin - - api.HTMLLinkElement.disabled - - api.HTMLLinkElement.href - - api.HTMLLinkElement.hreflang - - api.HTMLLinkElement.media - - api.HTMLLinkElement.rel - - api.HTMLLinkElement.relList - - api.HTMLLinkElement.sizes - - api.HTMLLinkElement.type - - html.elements.link - - html.elements.link.as - - html.elements.link.crossorigin - - html.elements.link.disabled - - html.elements.link.href - - html.elements.link.hreflang - - html.elements.link.media - - html.elements.link.rel - - html.elements.link.sizes - - html.elements.link.type + core: + - api.HTMLLinkElement + - api.HTMLLinkElement.disabled + - api.HTMLLinkElement.href + - api.HTMLLinkElement.hreflang + - api.HTMLLinkElement.media + - api.HTMLLinkElement.rel + - api.HTMLLinkElement.type + - html.elements.link # former compute_from + - html.elements.link.disabled + - html.elements.link.href + - html.elements.link.hreflang + - html.elements.link.media + - html.elements.link.rel + - html.elements.link.type + modifier: + - api.HTMLLinkElement.as + - api.HTMLLinkElement.crossOrigin + - api.HTMLLinkElement.relList + - api.HTMLLinkElement.sizes + - html.elements.link.as + - html.elements.link.crossorigin + - html.elements.link.sizes diff --git a/features/list-style.yml b/features/list-style.yml index 7a152added5..d622ea78b91 100644 --- a/features/list-style.yml +++ b/features/list-style.yml @@ -2,121 +2,76 @@ name: List style description: The `list-style` shorthand CSS property and the `list-style-image`, `list-style-position`, and `list-style-type` longhand properties set the position and appearance of a list item's marker. spec: https://drafts.csswg.org/css-lists-3/#list-style-property group: lists -status: - compute_from: css.properties.list-style compat_features: - - css.properties.list-style - - css.properties.list-style.inside - - css.properties.list-style.none - - css.properties.list-style.outside - - css.properties.list-style-image - - css.properties.list-style-image.none - - css.properties.list-style-position - - css.properties.list-style-position.inside - - css.properties.list-style-position.outside - - css.properties.list-style-type - - css.properties.list-style-type.arabic-indic - - css.properties.list-style-type.armenian - - css.properties.list-style-type.bengali - - css.properties.list-style-type.cambodian - - css.properties.list-style-type.circle - - css.properties.list-style-type.cjk-decimal - - css.properties.list-style-type.cjk-earthly-branch - - css.properties.list-style-type.cjk-heavenly-stem - - css.properties.list-style-type.cjk-ideographic - - css.properties.list-style-type.decimal - - css.properties.list-style-type.decimal-leading-zero - - css.properties.list-style-type.devanagari - - css.properties.list-style-type.disc - - css.properties.list-style-type.disclosure-closed - - css.properties.list-style-type.disclosure-open - - css.properties.list-style-type.ethiopic-numeric - - css.properties.list-style-type.georgian - - css.properties.list-style-type.gujarati - - css.properties.list-style-type.gurmukhi - - css.properties.list-style-type.hebrew - - css.properties.list-style-type.hiragana - - css.properties.list-style-type.hiragana-iroha - - css.properties.list-style-type.japanese-formal - - css.properties.list-style-type.japanese-informal - - css.properties.list-style-type.kannada - - css.properties.list-style-type.katakana - - css.properties.list-style-type.katakana-iroha - - css.properties.list-style-type.khmer - - css.properties.list-style-type.korean-hangul-formal - - css.properties.list-style-type.korean-hanja-formal - - css.properties.list-style-type.korean-hanja-informal - - css.properties.list-style-type.lao - - css.properties.list-style-type.lower-alpha - - css.properties.list-style-type.lower-armenian - - css.properties.list-style-type.lower-greek - - css.properties.list-style-type.lower-latin - - css.properties.list-style-type.lower-roman - - css.properties.list-style-type.malayalam - - css.properties.list-style-type.mongolian - - css.properties.list-style-type.myanmar - - css.properties.list-style-type.none - - css.properties.list-style-type.oriya - - css.properties.list-style-type.persian - - css.properties.list-style-type.simp-chinese-formal - - css.properties.list-style-type.simp-chinese-informal - - css.properties.list-style-type.square - - css.properties.list-style-type.string - - css.properties.list-style-type.symbols - - css.properties.list-style-type.tamil - - css.properties.list-style-type.telugu - - css.properties.list-style-type.thai - - css.properties.list-style-type.tibetan - - css.properties.list-style-type.trad-chinese-formal - - css.properties.list-style-type.trad-chinese-informal - - css.properties.list-style-type.upper-alpha - - css.properties.list-style-type.upper-armenian - - css.properties.list-style-type.upper-latin - - css.properties.list-style-type.upper-roman - - css.properties.list-style.symbols - - # These keys are not in the spec and will need to be revisited. - # See https://github.com/web-platform-dx/web-features/issues/1862 - - # - css.properties.list-style-type.afar - # - css.properties.list-style-type.amharic - # - css.properties.list-style-type.amharic-abegede - # - css.properties.list-style-type.asterisks - # - css.properties.list-style-type.binary - # - css.properties.list-style-type.cjk-ideographic - # - css.properties.list-style-type.ethiopic - # - css.properties.list-style-type.ethiopic-abegede - # - css.properties.list-style-type.ethiopic-abegede-am-et - # - css.properties.list-style-type.ethiopic-abegede-gez - # - css.properties.list-style-type.ethiopic-abegede-ti-er - # - css.properties.list-style-type.ethiopic-abegede-ti-et - # - css.properties.list-style-type.ethiopic-halehame - # - css.properties.list-style-type.ethiopic-halehame-aa-er - # - css.properties.list-style-type.ethiopic-halehame-aa-et - # - css.properties.list-style-type.ethiopic-halehame-am - # - css.properties.list-style-type.ethiopic-halehame-am-et - # - css.properties.list-style-type.ethiopic-halehame-gez - # - css.properties.list-style-type.ethiopic-halehame-om-et - # - css.properties.list-style-type.ethiopic-halehame-sid-et - # - css.properties.list-style-type.ethiopic-halehame-so-et - # - css.properties.list-style-type.ethiopic-halehame-ti-er - # - css.properties.list-style-type.ethiopic-halehame-ti-et - # - css.properties.list-style-type.ethiopic-halehame-tig - # - css.properties.list-style-type.footnotes - # - css.properties.list-style-type.hangul - # - css.properties.list-style-type.hangul-consonant - # - css.properties.list-style-type.lower-hexadecimal - # - css.properties.list-style-type.lower-norwegian - # - css.properties.list-style-type.octal - # - css.properties.list-style-type.oromo - # - css.properties.list-style-type.sidama - # - css.properties.list-style-type.somali - # - css.properties.list-style-type.tigre - # - css.properties.list-style-type.tigrinya-er - # - css.properties.list-style-type.tigrinya-er-abegede - # - css.properties.list-style-type.tigrinya-et - # - css.properties.list-style-type.tigrinya-et-abegede - # - css.properties.list-style-type.upper-greek - # - css.properties.list-style-type.upper-hexadecimal - # - css.properties.list-style-type.upper-norwegian - # - css.properties.list-style-type.urdu + core: + - css.properties.list-style # former compute_from + - css.properties.list-style-image + - css.properties.list-style-image.none + - css.properties.list-style-position + - css.properties.list-style-position.inside + - css.properties.list-style-position.outside + - css.properties.list-style-type + - css.properties.list-style-type.armenian + - css.properties.list-style-type.circle + - css.properties.list-style-type.decimal + - css.properties.list-style-type.decimal-leading-zero + - css.properties.list-style-type.disc + - css.properties.list-style-type.georgian + - css.properties.list-style-type.hebrew + - css.properties.list-style-type.hiragana + - css.properties.list-style-type.hiragana-iroha + - css.properties.list-style-type.katakana + - css.properties.list-style-type.katakana-iroha + - css.properties.list-style-type.lower-alpha + - css.properties.list-style-type.lower-greek + - css.properties.list-style-type.lower-latin + - css.properties.list-style-type.lower-roman + - css.properties.list-style-type.none + - css.properties.list-style-type.square + - css.properties.list-style-type.upper-alpha + - css.properties.list-style-type.upper-latin + - css.properties.list-style-type.upper-roman + - css.properties.list-style.inside + - css.properties.list-style.none + - css.properties.list-style.outside + modifier: + - css.properties.list-style-type.arabic-indic + - css.properties.list-style-type.bengali + - css.properties.list-style-type.cambodian + - css.properties.list-style-type.cjk-decimal + - css.properties.list-style-type.cjk-earthly-branch + - css.properties.list-style-type.cjk-heavenly-stem + - css.properties.list-style-type.cjk-ideographic + - css.properties.list-style-type.devanagari + - css.properties.list-style-type.disclosure-closed + - css.properties.list-style-type.disclosure-open + - css.properties.list-style-type.ethiopic-numeric + - css.properties.list-style-type.gujarati + - css.properties.list-style-type.gurmukhi + - css.properties.list-style-type.japanese-formal + - css.properties.list-style-type.japanese-informal + - css.properties.list-style-type.kannada + - css.properties.list-style-type.khmer + - css.properties.list-style-type.korean-hangul-formal + - css.properties.list-style-type.korean-hanja-formal + - css.properties.list-style-type.korean-hanja-informal + - css.properties.list-style-type.lao + - css.properties.list-style-type.lower-armenian + - css.properties.list-style-type.malayalam + - css.properties.list-style-type.mongolian + - css.properties.list-style-type.myanmar + - css.properties.list-style-type.oriya + - css.properties.list-style-type.persian + - css.properties.list-style-type.simp-chinese-formal + - css.properties.list-style-type.simp-chinese-informal + - css.properties.list-style-type.string + - css.properties.list-style-type.tamil + - css.properties.list-style-type.telugu + - css.properties.list-style-type.thai + - css.properties.list-style-type.tibetan + - css.properties.list-style-type.trad-chinese-formal + - css.properties.list-style-type.trad-chinese-informal + - css.properties.list-style-type.upper-armenian + spare: + - css.properties.list-style-type.symbols + - css.properties.list-style.symbols diff --git a/features/map.yml b/features/map.yml index fb90d7223b7..ed4308a69c9 100644 --- a/features/map.yml +++ b/features/map.yml @@ -17,23 +17,23 @@ spec: - https://tc39.es/ecma262/multipage/keyed-collections.html#sec-get-map-@@species snapshot: ecmascript-2015 group: maps -status: - compute_from: javascript.builtins.Map.Map compat_features: - - javascript.builtins.Map - - javascript.builtins.Map.@@iterator - - javascript.builtins.Map.@@species - - javascript.builtins.Map.Map - - javascript.builtins.Map.Map.iterable_allowed - - javascript.builtins.Map.Map.null_allowed - - javascript.builtins.Map.clear - - javascript.builtins.Map.delete - - javascript.builtins.Map.entries - - javascript.builtins.Map.forEach - - javascript.builtins.Map.get - - javascript.builtins.Map.has - - javascript.builtins.Map.key_equality_for_zeros - - javascript.builtins.Map.keys - - javascript.builtins.Map.set - - javascript.builtins.Map.size - - javascript.builtins.Map.values + core: + - javascript.builtins.Map + - javascript.builtins.Map.Map # former compute_from + - javascript.builtins.Map.delete + - javascript.builtins.Map.get + - javascript.builtins.Map.has + - javascript.builtins.Map.set + modifier: + - javascript.builtins.Map.@@iterator + - javascript.builtins.Map.@@species + - javascript.builtins.Map.Map.iterable_allowed + - javascript.builtins.Map.Map.null_allowed + - javascript.builtins.Map.clear + - javascript.builtins.Map.entries + - javascript.builtins.Map.forEach + - javascript.builtins.Map.key_equality_for_zeros + - javascript.builtins.Map.keys + - javascript.builtins.Map.size + - javascript.builtins.Map.values diff --git a/features/masks.yml b/features/masks.yml index 5f221700393..5f856e707fe 100644 --- a/features/masks.yml +++ b/features/masks.yml @@ -3,34 +3,34 @@ description: The `mask` CSS property (and several longhand properties) partially spec: https://drafts.csswg.org/css-masking-1/#positioned-masks group: clipping-shapes-masking caniuse: css-masks -status: - compute_from: css.properties.mask compat_features: - - css.properties.mask - - css.properties.mask-clip - - css.properties.mask-clip.border - - css.properties.mask-clip.content - - css.properties.mask-clip.padding - - css.properties.mask-clip.text - - css.properties.mask-composite - - css.properties.mask-composite.add - - css.properties.mask-composite.exclude - - css.properties.mask-composite.intersect - - css.properties.mask-composite.subtract - - css.properties.mask-image - - css.properties.mask-image.multiple_mask_images - - css.properties.mask-image.svg_masks - - css.properties.mask-mode - - css.properties.mask-mode.alpha - - css.properties.mask-mode.luminance - - css.properties.mask-mode.match-source - - css.properties.mask-origin - - css.properties.mask-origin.fill-box - - css.properties.mask-origin.stroke-box - - css.properties.mask-origin.view-box - - css.properties.mask-origin.border - - css.properties.mask-origin.content - - css.properties.mask-origin.padding - - css.properties.mask-position - - css.properties.mask-repeat - - css.properties.mask-size + core: + - css.properties.mask # former compute_from + - css.properties.mask-clip + - css.properties.mask-composite + - css.properties.mask-composite.add + - css.properties.mask-composite.exclude + - css.properties.mask-composite.intersect + - css.properties.mask-composite.subtract + - css.properties.mask-image + - css.properties.mask-image.multiple_mask_images + - css.properties.mask-image.svg_masks + - css.properties.mask-mode + - css.properties.mask-mode.alpha + - css.properties.mask-mode.luminance + - css.properties.mask-mode.match-source + - css.properties.mask-origin + - css.properties.mask-position + - css.properties.mask-repeat + - css.properties.mask-size + spare: + - css.properties.mask-clip.border + - css.properties.mask-clip.content + - css.properties.mask-clip.padding + - css.properties.mask-clip.text + - css.properties.mask-origin.border + - css.properties.mask-origin.content + - css.properties.mask-origin.fill-box + - css.properties.mask-origin.padding + - css.properties.mask-origin.stroke-box + - css.properties.mask-origin.view-box diff --git a/features/matchmedia.yml b/features/matchmedia.yml index f37fed6a2b4..2beda29f603 100644 --- a/features/matchmedia.yml +++ b/features/matchmedia.yml @@ -2,16 +2,16 @@ name: matchMedia description: The `window.matchMedia()` method checks whether a media query applies to the document. spec: https://drafts.csswg.org/cssom-view-1/#dom-window-matchmedia caniuse: matchmedia -status: - compute_from: api.Window.matchMedia compat_features: - - api.MediaQueryList - - api.MediaQueryList.EventTarget_inheritance - - api.MediaQueryList.change_event - - api.MediaQueryList.matches - - api.MediaQueryList.media - - api.MediaQueryListEvent - - api.MediaQueryListEvent.MediaQueryListEvent - - api.MediaQueryListEvent.matches - - api.MediaQueryListEvent.media - - api.Window.matchMedia + core: + - api.MediaQueryList + - api.MediaQueryList.matches + - api.MediaQueryList.media + - api.Window.matchMedia # former compute_from + modifier: + - api.MediaQueryList.EventTarget_inheritance + - api.MediaQueryList.change_event + - api.MediaQueryListEvent + - api.MediaQueryListEvent.MediaQueryListEvent + - api.MediaQueryListEvent.matches + - api.MediaQueryListEvent.media diff --git a/features/mathml.yml b/features/mathml.yml index 83887f06db4..21cc6bcb87f 100644 --- a/features/mathml.yml +++ b/features/mathml.yml @@ -3,112 +3,113 @@ description: MathML, or the Mathematical Markup Language, describes mathematical spec: https://w3c.github.io/mathml-core/ group: mathml caniuse: mathml -status: - compute_from: mathml.elements.math compat_features: - - api.MathMLElement - - api.MathMLElement.attributeStyleMap - - api.MathMLElement.blur - - api.MathMLElement.focus - - api.MathMLElement.nonce - - api.MathMLElement.style - - api.MathMLElement.tabIndex - - css.properties.display.math - - css.properties.font-size.math - - css.properties.math-depth - - css.properties.math-shift - - css.properties.math-style - - css.properties.text-transform.math-auto - - mathml.elements.annotation - - mathml.elements.annotation-xml - - mathml.elements.math - - mathml.elements.math.display - - mathml.elements.menclose - - mathml.elements.menclose.notation - - mathml.elements.menclose.notation.actuarial - - mathml.elements.menclose.notation.bottom - - mathml.elements.menclose.notation.box - - mathml.elements.menclose.notation.circle - - mathml.elements.menclose.notation.downdiagonalstrike - - mathml.elements.menclose.notation.horizontalstrike - - mathml.elements.menclose.notation.left - - mathml.elements.menclose.notation.longdiv - - mathml.elements.menclose.notation.madruwb - - mathml.elements.menclose.notation.phasorangle - - mathml.elements.menclose.notation.right - - mathml.elements.menclose.notation.roundedbox - - mathml.elements.menclose.notation.top - - mathml.elements.menclose.notation.updiagonalarrow - - mathml.elements.menclose.notation.updiagonalstrike - - mathml.elements.menclose.notation.verticalstrike - - mathml.elements.merror - - mathml.elements.mfrac - - mathml.elements.mfrac.linethickness - - mathml.elements.mi - - mathml.elements.mi.mathvariant - - mathml.elements.mmultiscripts - - mathml.elements.mn - - mathml.elements.mo - - mathml.elements.mo.accent - - mathml.elements.mo.form - - mathml.elements.mo.largeop - - mathml.elements.mo.lspace - - mathml.elements.mo.maxsize - - mathml.elements.mo.minsize - - mathml.elements.mo.movablelimits - - mathml.elements.mo.rspace - - mathml.elements.mo.stretchy - - mathml.elements.mo.symmetric - - mathml.elements.mover - - mathml.elements.mover.accent - - mathml.elements.mpadded - - mathml.elements.mpadded.depth - - mathml.elements.mpadded.height - - mathml.elements.mpadded.lspace - - mathml.elements.mpadded.relative_values - - mathml.elements.mpadded.voffset - - mathml.elements.mpadded.width - - mathml.elements.mphantom - - mathml.elements.mprescripts - - mathml.elements.mroot - - mathml.elements.mrow - - mathml.elements.ms - - mathml.elements.mspace - - mathml.elements.mspace.depth - - mathml.elements.mspace.height - - mathml.elements.mspace.width - - mathml.elements.msqrt - - mathml.elements.mstyle - - mathml.elements.msub - - mathml.elements.msubsup - - mathml.elements.msup - - mathml.elements.mtable - - mathml.elements.mtable.align - - mathml.elements.mtable.columnalign - - mathml.elements.mtable.columnlines - - mathml.elements.mtable.columnspacing - - mathml.elements.mtable.frame - - mathml.elements.mtable.framespacing - - mathml.elements.mtable.rowalign - - mathml.elements.mtable.rowlines - - mathml.elements.mtable.rowspacing - - mathml.elements.mtable.width - - mathml.elements.mtd - - mathml.elements.mtd.columnalign - - mathml.elements.mtd.columnspan - - mathml.elements.mtd.rowalign - - mathml.elements.mtd.rowspan - - mathml.elements.mtext - - mathml.elements.mtr - - mathml.elements.mtr.columnalign - - mathml.elements.mtr.rowalign - - mathml.elements.munder - - mathml.elements.munder.accentunder - - mathml.elements.munderover - - mathml.elements.munderover.accent - - mathml.elements.munderover.accentunder - - mathml.elements.semantics - - mathml.global_attributes.dir - - mathml.global_attributes.dir.rtl_operator_mirroring - - mathml.global_attributes.displaystyle - - mathml.global_attributes.scriptlevel + core: + - mathml.elements.annotation + - mathml.elements.annotation-xml + - mathml.elements.math # former compute_from + - mathml.elements.math.display + - mathml.elements.mfrac + - mathml.elements.mo + - mathml.elements.mo.stretchy + - mathml.elements.msqrt + - mathml.elements.mtable + - mathml.elements.mtd + - mathml.elements.mtr + - mathml.elements.munder + - mathml.elements.semantics + modifier: + - api.MathMLElement + - api.MathMLElement.blur + - api.MathMLElement.focus + - api.MathMLElement.style + - api.MathMLElement.tabIndex + - css.properties.math-style + - mathml.elements.merror + - mathml.elements.mfrac.linethickness + - mathml.elements.mi + - mathml.elements.mi.mathvariant + - mathml.elements.mmultiscripts + - mathml.elements.mn + - mathml.elements.mo.form + - mathml.elements.mo.largeop + - mathml.elements.mo.lspace + - mathml.elements.mo.maxsize + - mathml.elements.mo.minsize + - mathml.elements.mo.movablelimits + - mathml.elements.mo.rspace + - mathml.elements.mo.symmetric + - mathml.elements.mover + - mathml.elements.mover.accent + - mathml.elements.mpadded + - mathml.elements.mpadded.depth + - mathml.elements.mpadded.height + - mathml.elements.mpadded.lspace + - mathml.elements.mpadded.voffset + - mathml.elements.mpadded.width + - mathml.elements.mphantom + - mathml.elements.mprescripts + - mathml.elements.mroot + - mathml.elements.mrow + - mathml.elements.ms + - mathml.elements.mspace + - mathml.elements.mspace.depth + - mathml.elements.mspace.height + - mathml.elements.mspace.width + - mathml.elements.mstyle + - mathml.elements.msub + - mathml.elements.msubsup + - mathml.elements.msup + - mathml.elements.mtd.columnspan + - mathml.elements.mtd.rowspan + - mathml.elements.mtext + - mathml.elements.munder.accentunder + - mathml.elements.munderover + - mathml.elements.munderover.accent + - mathml.elements.munderover.accentunder + - mathml.global_attributes.dir + - mathml.global_attributes.displaystyle + spare: + - api.MathMLElement.attributeStyleMap + - api.MathMLElement.nonce + - css.properties.display.math + - css.properties.font-size.math + - css.properties.math-depth + - css.properties.math-shift + - css.properties.text-transform.math-auto + - mathml.elements.menclose + - mathml.elements.menclose.notation + - mathml.elements.menclose.notation.actuarial + - mathml.elements.menclose.notation.bottom + - mathml.elements.menclose.notation.box + - mathml.elements.menclose.notation.circle + - mathml.elements.menclose.notation.downdiagonalstrike + - mathml.elements.menclose.notation.horizontalstrike + - mathml.elements.menclose.notation.left + - mathml.elements.menclose.notation.longdiv + - mathml.elements.menclose.notation.madruwb + - mathml.elements.menclose.notation.phasorangle + - mathml.elements.menclose.notation.right + - mathml.elements.menclose.notation.roundedbox + - mathml.elements.menclose.notation.top + - mathml.elements.menclose.notation.updiagonalarrow + - mathml.elements.menclose.notation.updiagonalstrike + - mathml.elements.menclose.notation.verticalstrike + - mathml.elements.mo.accent + - mathml.elements.mpadded.relative_values + - mathml.elements.mtable.align + - mathml.elements.mtable.columnalign + - mathml.elements.mtable.columnlines + - mathml.elements.mtable.columnspacing + - mathml.elements.mtable.frame + - mathml.elements.mtable.framespacing + - mathml.elements.mtable.rowalign + - mathml.elements.mtable.rowlines + - mathml.elements.mtable.rowspacing + - mathml.elements.mtable.width + - mathml.elements.mtd.columnalign + - mathml.elements.mtd.rowalign + - mathml.elements.mtr.columnalign + - mathml.elements.mtr.rowalign + - mathml.global_attributes.dir.rtl_operator_mirroring + - mathml.global_attributes.scriptlevel diff --git a/features/media-capture.yml b/features/media-capture.yml index 202916a4b4c..cea8b82ee5f 100644 --- a/features/media-capture.yml +++ b/features/media-capture.yml @@ -2,78 +2,79 @@ name: Media capture description: The `navigator.mediaDevices.getUserMedia()` API requests access to devices that produce audio or video streams, such as microphones or video cameras. spec: https://w3c.github.io/mediacapture-main/ caniuse: stream -status: - compute_from: api.MediaDevices.getUserMedia compat_features: - - api.InputDeviceInfo - - api.InputDeviceInfo.getCapabilities - - api.MediaDeviceInfo - - api.MediaDeviceInfo.deviceId - - api.MediaDeviceInfo.groupId - - api.MediaDeviceInfo.kind - - api.MediaDeviceInfo.label - - api.MediaDeviceInfo.toJSON - - api.MediaDevices - - api.MediaDevices.devicechange_event - - api.MediaDevices.enumerateDevices - - api.MediaDevices.getUserMedia - - api.MediaDevices.getSupportedConstraints - - api.MediaDevices.getUserMedia.secure_context_required - - api.MediaStream - - api.MediaStream.MediaStream - - api.MediaStream.active - - api.MediaStream.addTrack - - api.MediaStream.addtrack_event - - api.MediaStream.clone - - api.MediaStream.getTrackById - - api.MediaStream.getAudioTracks - - api.MediaStream.getTracks - - api.MediaStream.getVideoTracks - - api.MediaStream.id - - api.MediaStream.removeTrack - - api.MediaStream.removetrack_event - - api.MediaStreamTrack - - api.MediaStreamTrack.applyConstraints - - api.MediaStreamTrack.applyConstraints.aspectRatio_constraint - - api.MediaStreamTrack.applyConstraints.autoGainControl_constraint - - api.MediaStreamTrack.applyConstraints.channelCount_constraint - - api.MediaStreamTrack.applyConstraints.deviceId_constraint - - api.MediaStreamTrack.applyConstraints.echoCancellation_constraint - - api.MediaStreamTrack.applyConstraints.facingMode_constraint - - api.MediaStreamTrack.applyConstraints.frameRate_constraint - - api.MediaStreamTrack.applyConstraints.groupId_constraint - - api.MediaStreamTrack.applyConstraints.height_constraint - - api.MediaStreamTrack.applyConstraints.latency_constraint - - api.MediaStreamTrack.applyConstraints.noiseSuppression_constraint - - api.MediaStreamTrack.applyConstraints.resizeMode_constraint - - api.MediaStreamTrack.applyConstraints.sampleRate_constraint - - api.MediaStreamTrack.applyConstraints.sampleSize_constraint - - api.MediaStreamTrack.applyConstraints.width_constraint - - api.MediaStreamTrack.clone - - api.MediaStreamTrack.enabled - - api.MediaStreamTrack.ended_event - - api.MediaStreamTrack.id - - api.MediaStreamTrack.getCapabilities - - api.MediaStreamTrack.getConstraints - - api.MediaStreamTrack.getSettings - - api.MediaStreamTrack.kind - - api.MediaStreamTrack.label - - api.MediaStreamTrack.mute_event - - api.MediaStreamTrack.muted - - api.MediaStreamTrack.readyState - - api.MediaStreamTrack.stop - - api.MediaStreamTrack.unmute_event - - api.MediaStreamTrackEvent - - api.MediaStreamTrackEvent.MediaStreamTrackEvent - - api.MediaStreamTrackEvent.track - - api.Navigator.mediaDevices - - api.Navigator.mediaDevices.secure_context_required - - api.OverconstrainedError - - api.OverconstrainedError.OverconstrainedError - - api.OverconstrainedError.constraint - - api.Permissions.permission_camera - - api.Permissions.permission_microphone - - html.elements.iframe.allow.camera - - html.elements.iframe.allow.microphone - - http.headers.Permissions-Policy.camera - - http.headers.Permissions-Policy.microphone + core: + - api.MediaDevices + - api.MediaDevices.getUserMedia # former compute_from + - api.MediaStreamTrack + - api.MediaStreamTrack.enabled + - api.MediaStreamTrack.id + - api.MediaStreamTrack.kind + - api.MediaStreamTrack.label + - api.MediaStreamTrack.stop + - api.Navigator.mediaDevices + modifier: + - api.MediaDeviceInfo + - api.MediaDeviceInfo.deviceId + - api.MediaDeviceInfo.groupId + - api.MediaDeviceInfo.kind + - api.MediaDeviceInfo.label + - api.MediaDeviceInfo.toJSON + - api.MediaDevices.enumerateDevices + - api.MediaDevices.getSupportedConstraints + - api.MediaDevices.getUserMedia.secure_context_required + - api.MediaStream + - api.MediaStream.MediaStream + - api.MediaStream.active + - api.MediaStream.addTrack + - api.MediaStream.addtrack_event + - api.MediaStream.clone + - api.MediaStream.getAudioTracks + - api.MediaStream.getTrackById + - api.MediaStream.getTracks + - api.MediaStream.getVideoTracks + - api.MediaStream.id + - api.MediaStream.removeTrack + - api.MediaStream.removetrack_event + - api.MediaStreamTrack.applyConstraints + - api.MediaStreamTrack.applyConstraints.deviceId_constraint + - api.MediaStreamTrack.applyConstraints.echoCancellation_constraint + - api.MediaStreamTrack.applyConstraints.facingMode_constraint + - api.MediaStreamTrack.applyConstraints.frameRate_constraint + - api.MediaStreamTrack.applyConstraints.groupId_constraint + - api.MediaStreamTrack.applyConstraints.height_constraint + - api.MediaStreamTrack.applyConstraints.width_constraint + - api.MediaStreamTrack.clone + - api.MediaStreamTrack.ended_event + - api.MediaStreamTrack.getConstraints + - api.MediaStreamTrack.getSettings + - api.MediaStreamTrack.mute_event + - api.MediaStreamTrack.readyState + - api.MediaStreamTrack.unmute_event + - api.MediaStreamTrackEvent + - api.MediaStreamTrackEvent.MediaStreamTrackEvent + - api.MediaStreamTrackEvent.track + - html.elements.iframe.allow.camera + - html.elements.iframe.allow.microphone + spare: + - api.InputDeviceInfo + - api.InputDeviceInfo.getCapabilities + - api.MediaDevices.devicechange_event + - api.MediaStreamTrack.applyConstraints.aspectRatio_constraint + - api.MediaStreamTrack.applyConstraints.autoGainControl_constraint + - api.MediaStreamTrack.applyConstraints.channelCount_constraint + - api.MediaStreamTrack.applyConstraints.latency_constraint + - api.MediaStreamTrack.applyConstraints.noiseSuppression_constraint + - api.MediaStreamTrack.applyConstraints.resizeMode_constraint + - api.MediaStreamTrack.applyConstraints.sampleRate_constraint + - api.MediaStreamTrack.applyConstraints.sampleSize_constraint + - api.MediaStreamTrack.getCapabilities + - api.MediaStreamTrack.muted + - api.Navigator.mediaDevices.secure_context_required + - api.OverconstrainedError + - api.OverconstrainedError.OverconstrainedError + - api.OverconstrainedError.constraint + - api.Permissions.permission_camera + - api.Permissions.permission_microphone + - http.headers.Permissions-Policy.camera + - http.headers.Permissions-Policy.microphone diff --git a/features/media-queries.yml b/features/media-queries.yml index 25eb0dfbfc5..bf1b0c6992e 100644 --- a/features/media-queries.yml +++ b/features/media-queries.yml @@ -3,22 +3,23 @@ description: The `@media` CSS rule conditionally applies styles based on the out spec: https://drafts.csswg.org/mediaqueries-5/ caniuse: css-mediaqueries group: media-queries -status: - compute_from: css.at-rules.media compat_features: - - css.at-rules.media - - css.at-rules.media.color - - css.at-rules.media.grid - - css.at-rules.media.height - - css.at-rules.media.width - - css.at-rules.media.monochrome - - css.at-rules.media.orientation - - css.at-rules.media.aspect-ratio - - css.types.ratio - - css.types.ratio.number_value - - css.at-rules.media.color-index - - css.at-rules.media.calc - - css.at-rules.media.media_features - - css.at-rules.media.media_query_values - - css.at-rules.media.nested-queries - - css.at-rules.media.or_syntax + core: + - css.at-rules.media # former compute_from + - css.at-rules.media.media_features + modifier: + - css.at-rules.media.aspect-ratio + - css.at-rules.media.calc + - css.at-rules.media.color + - css.at-rules.media.grid + - css.at-rules.media.height + - css.at-rules.media.monochrome + - css.at-rules.media.nested-queries + - css.at-rules.media.or_syntax + - css.at-rules.media.orientation + - css.at-rules.media.width + - css.types.ratio + spare: + - css.at-rules.media.color-index + - css.at-rules.media.media_query_values + - css.types.ratio.number_value diff --git a/features/media-session.yml b/features/media-session.yml index 78a466e4a4e..a47664757bd 100644 --- a/features/media-session.yml +++ b/features/media-session.yml @@ -1,40 +1,40 @@ name: Media session description: The `navigator.mediaSession` API integrates with platform UI for media playback. It can be used to set metadata such as title and artwork, and to handle user actions like playing, pausing, or seeking. spec: https://w3c.github.io/mediasession/ -status: - compute_from: api.MediaSession compat_features: - - api.ChapterInformation - - api.ChapterInformation.artwork - - api.ChapterInformation.startTime - - api.ChapterInformation.title - - api.MediaMetadata - - api.MediaMetadata.MediaMetadata - - api.MediaMetadata.album - - api.MediaMetadata.artist - - api.MediaMetadata.artwork - - api.MediaMetadata.chapterInfo - - api.MediaMetadata.title - - api.MediaSession - - api.MediaSession.metadata - - api.MediaSession.playbackState - - api.MediaSession.setActionHandler - - api.MediaSession.setActionHandler.hangup_type - - api.MediaSession.setActionHandler.nextslide_type - - api.MediaSession.setActionHandler.nexttrack_type - - api.MediaSession.setActionHandler.pause_type - - api.MediaSession.setActionHandler.play_type - - api.MediaSession.setActionHandler.previousslide_type - - api.MediaSession.setActionHandler.previoustrack_type - - api.MediaSession.setActionHandler.seekbackward_type - - api.MediaSession.setActionHandler.seekforward_type - - api.MediaSession.setActionHandler.seekto_type - - api.MediaSession.setActionHandler.skipad_type - - api.MediaSession.setActionHandler.stop_type - - api.MediaSession.setActionHandler.togglecamera_type - - api.MediaSession.setActionHandler.togglemicrophone_type - - api.MediaSession.setCameraActive - - api.MediaSession.setMicrophoneActive - - api.MediaSession.setScreenshareActive - - api.MediaSession.setPositionState - - api.Navigator.mediaSession + core: + - api.MediaMetadata + - api.MediaMetadata.MediaMetadata + - api.MediaMetadata.album + - api.MediaMetadata.artist + - api.MediaMetadata.artwork + - api.MediaMetadata.title + - api.MediaSession # former compute_from + - api.MediaSession.metadata + - api.MediaSession.playbackState + - api.MediaSession.setActionHandler + - api.MediaSession.setActionHandler.nexttrack_type + - api.MediaSession.setActionHandler.pause_type + - api.MediaSession.setActionHandler.play_type + - api.MediaSession.setActionHandler.previoustrack_type + - api.MediaSession.setActionHandler.seekbackward_type + - api.MediaSession.setActionHandler.seekforward_type + - api.Navigator.mediaSession + modifier: + - api.ChapterInformation + - api.ChapterInformation.artwork + - api.ChapterInformation.startTime + - api.ChapterInformation.title + - api.MediaMetadata.chapterInfo + - api.MediaSession.setActionHandler.hangup_type + - api.MediaSession.setActionHandler.nextslide_type + - api.MediaSession.setActionHandler.previousslide_type + - api.MediaSession.setActionHandler.seekto_type + - api.MediaSession.setActionHandler.skipad_type + - api.MediaSession.setActionHandler.stop_type + - api.MediaSession.setActionHandler.togglecamera_type + - api.MediaSession.setActionHandler.togglemicrophone_type + - api.MediaSession.setCameraActive + - api.MediaSession.setMicrophoneActive + - api.MediaSession.setPositionState + - api.MediaSession.setScreenshareActive diff --git a/features/media-source.yml b/features/media-source.yml index 88b8646dc9b..b9f61b48900 100644 --- a/features/media-source.yml +++ b/features/media-source.yml @@ -2,76 +2,76 @@ name: Media source description: The `MediaSource` API is a custom data source for media elements commonly used for adaptive streaming. Also known as Media Source Extensions (MSE). spec: https://w3c.github.io/media-source/ caniuse: mediasource -status: - compute_from: api.MediaSource compat_features: - - api.AudioTrack.sourceBuffer - - api.BufferedChangeEvent - - api.BufferedChangeEvent.BufferedChangeEvent - - api.BufferedChangeEvent.addedRanges - - api.BufferedChangeEvent.removedRanges - - api.HTMLMediaElement.srcObject - - api.MediaSource - - api.MediaSource.MediaSource - - api.MediaSource.activeSourceBuffers - - api.MediaSource.addSourceBuffer - - api.MediaSource.canConstructInDedicatedWorker_static - - api.MediaSource.clearLiveSeekableRange - - api.MediaSource.duration - - api.MediaSource.endOfStream - - api.MediaSource.handle - - api.MediaSource.isTypeSupported_static - - api.MediaSource.readyState - - api.MediaSource.removeSourceBuffer - - api.MediaSource.setLiveSeekableRange - - api.MediaSource.sourceBuffers - - api.MediaSource.sourceclose_event - - api.MediaSource.sourceended_event - - api.MediaSource.sourceopen_event - - api.MediaSource.worker_support - - api.MediaSourceHandle - - api.SourceBuffer - - api.SourceBuffer.abort - - api.SourceBuffer.abort.worker_support - - api.SourceBuffer.abort_event - - api.SourceBuffer.abort_event.worker_support - - api.SourceBuffer.appendBuffer - - api.SourceBuffer.appendBuffer.worker_support - - api.SourceBuffer.appendWindowEnd - - api.SourceBuffer.appendWindowEnd.worker_support - - api.SourceBuffer.appendWindowStart - - api.SourceBuffer.appendWindowStart.worker_support - - api.SourceBuffer.audioTracks - - api.SourceBuffer.audioTracks.worker_support - - api.SourceBuffer.buffered - - api.SourceBuffer.buffered.worker_support - - api.SourceBuffer.changeType - - api.SourceBuffer.changeType.worker_support - - api.SourceBuffer.error_event - - api.SourceBuffer.error_event.worker_support - - api.SourceBuffer.mode - - api.SourceBuffer.mode.worker_support - - api.SourceBuffer.remove - - api.SourceBuffer.remove.worker_support - - api.SourceBuffer.textTracks - - api.SourceBuffer.timestampOffset - - api.SourceBuffer.timestampOffset.worker_support - - api.SourceBuffer.update_event - - api.SourceBuffer.update_event.worker_support - - api.SourceBuffer.updateend_event - - api.SourceBuffer.updateend_event.worker_support - - api.SourceBuffer.updatestart_event - - api.SourceBuffer.updatestart_event.worker_support - - api.SourceBuffer.updating - - api.SourceBuffer.updating.worker_support - - api.SourceBuffer.videoTracks - - api.SourceBuffer.videoTracks.worker_support - - api.SourceBufferList - - api.SourceBufferList.addsourcebuffer_event - - api.SourceBufferList.addsourcebuffer_event.worker_support - - api.SourceBufferList.length - - api.SourceBufferList.length.worker_support - - api.SourceBufferList.removesourcebuffer_event - - api.SourceBufferList.removesourcebuffer_event.worker_support - - api.TextTrack.sourceBuffer - - api.VideoTrack.sourceBuffer + core: + - api.MediaSource # former compute_from + - api.MediaSource.activeSourceBuffers + - api.MediaSource.addSourceBuffer + - api.MediaSource.duration + - api.MediaSource.endOfStream + - api.MediaSource.isTypeSupported_static + - api.MediaSource.removeSourceBuffer + - api.MediaSource.sourceBuffers + - api.SourceBufferList + modifier: + - api.AudioTrack.sourceBuffer + - api.BufferedChangeEvent + - api.BufferedChangeEvent.BufferedChangeEvent + - api.BufferedChangeEvent.addedRanges + - api.BufferedChangeEvent.removedRanges + - api.HTMLMediaElement.srcObject + - api.MediaSource.MediaSource + - api.MediaSource.canConstructInDedicatedWorker_static + - api.MediaSource.clearLiveSeekableRange + - api.MediaSource.handle + - api.MediaSource.readyState + - api.MediaSource.setLiveSeekableRange + - api.MediaSource.sourceclose_event + - api.MediaSource.sourceended_event + - api.MediaSource.sourceopen_event + - api.MediaSource.worker_support + - api.MediaSourceHandle + - api.SourceBuffer + - api.SourceBuffer.abort + - api.SourceBuffer.abort.worker_support + - api.SourceBuffer.abort_event + - api.SourceBuffer.abort_event.worker_support + - api.SourceBuffer.appendBuffer + - api.SourceBuffer.appendBuffer.worker_support + - api.SourceBuffer.appendWindowEnd + - api.SourceBuffer.appendWindowEnd.worker_support + - api.SourceBuffer.appendWindowStart + - api.SourceBuffer.appendWindowStart.worker_support + - api.SourceBuffer.audioTracks + - api.SourceBuffer.audioTracks.worker_support + - api.SourceBuffer.buffered + - api.SourceBuffer.buffered.worker_support + - api.SourceBuffer.changeType + - api.SourceBuffer.changeType.worker_support + - api.SourceBuffer.error_event + - api.SourceBuffer.error_event.worker_support + - api.SourceBuffer.mode + - api.SourceBuffer.mode.worker_support + - api.SourceBuffer.remove + - api.SourceBuffer.remove.worker_support + - api.SourceBuffer.textTracks + - api.SourceBuffer.timestampOffset + - api.SourceBuffer.timestampOffset.worker_support + - api.SourceBuffer.update_event + - api.SourceBuffer.update_event.worker_support + - api.SourceBuffer.updateend_event + - api.SourceBuffer.updateend_event.worker_support + - api.SourceBuffer.updatestart_event + - api.SourceBuffer.updatestart_event.worker_support + - api.SourceBuffer.updating + - api.SourceBuffer.updating.worker_support + - api.SourceBuffer.videoTracks + - api.SourceBuffer.videoTracks.worker_support + - api.SourceBufferList.addsourcebuffer_event + - api.SourceBufferList.addsourcebuffer_event.worker_support + - api.SourceBufferList.length + - api.SourceBufferList.length.worker_support + - api.SourceBufferList.removesourcebuffer_event + - api.SourceBufferList.removesourcebuffer_event.worker_support + - api.TextTrack.sourceBuffer + - api.VideoTrack.sourceBuffer diff --git a/features/mediastream-recording.yml b/features/mediastream-recording.yml index 22369f30918..c28b4a2e8dc 100644 --- a/features/mediastream-recording.yml +++ b/features/mediastream-recording.yml @@ -1,36 +1,32 @@ name: MediaStream recording description: The `MediaRecorder` API captures data generated by `MediaStream` or `HTMLMediaElement` objects for analysis, processing, or saving to disk. Also known as the Media Recording API. spec: https://w3c.github.io/mediacapture-record/ -status: - compute_from: - - api.MediaRecorder.isTypeSupported_static - - api.MediaRecorder.MediaRecorder - - api.MediaRecorder.start - - api.MediaRecorder.state - - api.MediaRecorder.stop compat_features: - - api.BlobEvent - - api.BlobEvent.BlobEvent - - api.BlobEvent.data - - api.BlobEvent.timecode - - api.MediaRecorder - - api.MediaRecorder.MediaRecorder - - api.MediaRecorder.MediaRecorder.options_parameter - - api.MediaRecorder.audioBitrateMode - - api.MediaRecorder.audioBitsPerSecond - - api.MediaRecorder.dataavailable_event - - api.MediaRecorder.error_event - - api.MediaRecorder.isTypeSupported_static - - api.MediaRecorder.mimeType - - api.MediaRecorder.pause - - api.MediaRecorder.pause_event - - api.MediaRecorder.requestData - - api.MediaRecorder.resume - - api.MediaRecorder.resume_event - - api.MediaRecorder.start - - api.MediaRecorder.start_event - - api.MediaRecorder.state - - api.MediaRecorder.stop - - api.MediaRecorder.stop_event - - api.MediaRecorder.stream - - api.MediaRecorder.videoBitsPerSecond + core: + - api.BlobEvent + - api.BlobEvent.BlobEvent + - api.BlobEvent.data + - api.MediaRecorder + - api.MediaRecorder.MediaRecorder # former compute_from + - api.MediaRecorder.dataavailable_event + - api.MediaRecorder.isTypeSupported_static # former compute_from + - api.MediaRecorder.mimeType + - api.MediaRecorder.requestData + - api.MediaRecorder.start # former compute_from + - api.MediaRecorder.start_event + - api.MediaRecorder.state # former compute_from + - api.MediaRecorder.stop # former compute_from + - api.MediaRecorder.stop_event + - api.MediaRecorder.stream + modifier: + - api.MediaRecorder.MediaRecorder.options_parameter + - api.MediaRecorder.audioBitsPerSecond + - api.MediaRecorder.pause + - api.MediaRecorder.pause_event + - api.MediaRecorder.resume + - api.MediaRecorder.resume_event + - api.MediaRecorder.videoBitsPerSecond + spare: + - api.BlobEvent.timecode + - api.MediaRecorder.audioBitrateMode + - api.MediaRecorder.error_event diff --git a/features/messageerror.yml b/features/messageerror.yml index bea9ceec766..5afd7f785f2 100644 --- a/features/messageerror.yml +++ b/features/messageerror.yml @@ -4,15 +4,13 @@ spec: - https://html.spec.whatwg.org/multipage/indices.html#event-messageerror - https://w3c.github.io/ServiceWorker/#eventdef-serviceworkerglobalscope-messageerror group: messaging -status: - compute_from: - - api.DedicatedWorkerGlobalScope.messageerror_event - - api.MessagePort.messageerror_event - - api.Window.messageerror_event compat_features: - - api.DedicatedWorkerGlobalScope.messageerror_event - - api.MessagePort.messageerror_event - - api.ServiceWorkerContainer.messageerror_event - - api.ServiceWorkerGlobalScope.messageerror_event - - api.Window.messageerror_event - - api.Worker.messageerror_event + core: + - api.DedicatedWorkerGlobalScope.messageerror_event # former compute_from + - api.MessagePort.messageerror_event # former compute_from + - api.Window.messageerror_event # former compute_from + modifier: + - api.ServiceWorkerContainer.messageerror_event + spare: + - api.ServiceWorkerGlobalScope.messageerror_event + - api.Worker.messageerror_event diff --git a/features/meta.yml b/features/meta.yml index ef29d0b0760..694bf2db60f 100644 --- a/features/meta.yml +++ b/features/meta.yml @@ -2,18 +2,18 @@ name: description: The `` element represents metadata about the page used by the browser or search engines, including description, keywords, and character sets. spec: https://html.spec.whatwg.org/multipage/semantics.html#meta group: html-elements -status: - compute_from: html.elements.meta compat_features: - - api.HTMLMetaElement - - api.HTMLMetaElement.content - - api.HTMLMetaElement.httpEquiv - - api.HTMLMetaElement.media - - api.HTMLMetaElement.name - - html.elements.meta - - html.elements.meta.charset - - html.elements.meta.content - - html.elements.meta.http-equiv - - html.elements.meta.http-equiv.content-type - - html.elements.meta.name - - html.elements.meta.name.referrer + core: + - api.HTMLMetaElement + - api.HTMLMetaElement.content + - api.HTMLMetaElement.httpEquiv + - api.HTMLMetaElement.name + - html.elements.meta # former compute_from + modifier: + - api.HTMLMetaElement.media + - html.elements.meta.charset + - html.elements.meta.content + - html.elements.meta.http-equiv + - html.elements.meta.http-equiv.content-type + - html.elements.meta.name + - html.elements.meta.name.referrer diff --git a/features/min-max-width-height.yml b/features/min-max-width-height.yml index 69b2f0c546c..0fa98a8f21a 100644 --- a/features/min-max-width-height.yml +++ b/features/min-max-width-height.yml @@ -4,14 +4,14 @@ spec: - https://drafts.csswg.org/css-sizing-3/#min-size-properties - https://drafts.csswg.org/css-sizing-3/#max-size-properties caniuse: minmaxwh -status: - compute_from: css.properties.max-height.none compat_features: - - css.properties.max-height - - css.properties.max-height.none - - css.properties.max-width - - css.properties.max-width.none - - css.properties.min-height - - css.properties.min-height.auto - - css.properties.min-width - - css.properties.min-width.auto + core: + - css.properties.max-height + - css.properties.max-height.none # former compute_from + - css.properties.max-width + - css.properties.max-width.none + - css.properties.min-width + modifier: + - css.properties.min-height + - css.properties.min-height.auto + - css.properties.min-width.auto diff --git a/features/mix-blend-mode.yml b/features/mix-blend-mode.yml index 454dbd4e7b2..f443585543f 100644 --- a/features/mix-blend-mode.yml +++ b/features/mix-blend-mode.yml @@ -3,10 +3,11 @@ description: The `mix-blend-mode` CSS property blends an element's content with spec: https://drafts.csswg.org/compositing-2/#mix-blend-mode caniuse: css-mixblendmode group: blend-mode -status: - compute_from: css.properties.mix-blend-mode compat_features: - - css.properties.mix-blend-mode - - css.properties.mix-blend-mode.plus-darker - - css.properties.mix-blend-mode.plus-lighter - - css.properties.mix-blend-mode.svg_elements + core: + - css.properties.mix-blend-mode # former compute_from + modifier: + - css.properties.mix-blend-mode.plus-lighter + spare: + - css.properties.mix-blend-mode.plus-darker + - css.properties.mix-blend-mode.svg_elements diff --git a/features/mixed-content.yml b/features/mixed-content.yml index bdfbbfc92f1..3c6b48ee085 100644 --- a/features/mixed-content.yml +++ b/features/mixed-content.yml @@ -2,14 +2,15 @@ name: Mixed content handling description: When a document is loaded over HTTPS, browsers ensure that none of the document's resources are loaded over an insecure protocol. Instead, resources that the document attempts to load over an insecure protocol are either loaded over HTTPS or are blocked. spec: https://w3c.github.io/webappsec-mixed-content/ group: security -status: - compute_from: http.mixed-content compat_features: - - http.mixed-content - - http.mixed-content.allow_file_urls - - http.mixed-content.allow_localhost_url - - http.mixed-content.allow_loopback_url - - http.mixed-content.auto_upgrade_images - - http.mixed-content.auto_upgrade_video_audio - - http.mixed-content.block_mixed_downloads - - http.mixed-content.blockable_mixed_content + core: + - http.mixed-content # former compute_from + modifier: + - http.mixed-content.blockable_mixed_content + spare: + - http.mixed-content.allow_file_urls + - http.mixed-content.allow_localhost_url + - http.mixed-content.allow_loopback_url + - http.mixed-content.auto_upgrade_images + - http.mixed-content.auto_upgrade_video_audio + - http.mixed-content.block_mixed_downloads diff --git a/features/motion-path.yml b/features/motion-path.yml index 3e7cf3bd6c7..0801b95e010 100644 --- a/features/motion-path.yml +++ b/features/motion-path.yml @@ -3,42 +3,43 @@ description: The `offset` CSS property animates an element along a defined motio spec: https://drafts.csswg.org/motion-1/ group: css caniuse: css-motion-paths -status: - compute_from: css.properties.offset compat_features: - - css.properties.offset - - css.properties.offset-path - - css.properties.offset-path.basic_shape - - css.properties.offset-path.path - - css.properties.offset-path.ray - - css.properties.offset-path.url - - css.properties.offset-path.border-box - - css.properties.offset-path.content-box - - css.properties.offset-path.fill-box - - css.properties.offset-path.margin-box - - css.properties.offset-path.none - - css.properties.offset-path.padding-box - - css.properties.offset-path.stroke-box - - css.properties.offset-path.view-box - - css.properties.offset-position - - css.properties.offset-position.auto - - css.properties.offset-position.bottom - - css.properties.offset-position.center - - css.properties.offset-position.left - - css.properties.offset-position.normal - - css.properties.offset-position.right - - css.properties.offset-position.top - - css.properties.offset-distance - - css.properties.offset-rotate - - css.properties.offset-rotate.auto - - css.properties.offset-rotate.reverse - - css.properties.offset-anchor - - css.properties.offset-anchor.auto - - css.properties.offset-anchor.bottom - - css.properties.offset-anchor.center - - css.properties.offset-anchor.left - - css.properties.offset-anchor.right - - css.properties.offset-anchor.top - - css.types.ray - - css.types.ray.position - - css.types.ray.size + core: + - css.properties.offset # former compute_from + - css.properties.offset-distance + - css.properties.offset-path + modifier: + - css.properties.offset-anchor + - css.properties.offset-anchor.auto + - css.properties.offset-anchor.bottom + - css.properties.offset-anchor.center + - css.properties.offset-anchor.left + - css.properties.offset-anchor.right + - css.properties.offset-anchor.top + - css.properties.offset-path.path + - css.properties.offset-rotate + - css.properties.offset-rotate.auto + - css.properties.offset-rotate.reverse + spare: + - css.properties.offset-path.basic_shape + - css.properties.offset-path.border-box + - css.properties.offset-path.content-box + - css.properties.offset-path.fill-box + - css.properties.offset-path.margin-box + - css.properties.offset-path.none + - css.properties.offset-path.padding-box + - css.properties.offset-path.ray + - css.properties.offset-path.stroke-box + - css.properties.offset-path.url + - css.properties.offset-path.view-box + - css.properties.offset-position + - css.properties.offset-position.auto + - css.properties.offset-position.bottom + - css.properties.offset-position.center + - css.properties.offset-position.left + - css.properties.offset-position.normal + - css.properties.offset-position.right + - css.properties.offset-position.top + - css.types.ray + - css.types.ray.position + - css.types.ray.size diff --git a/features/multi-column.yml b/features/multi-column.yml index c69a994e9c3..3fcdbbf6f44 100644 --- a/features/multi-column.yml +++ b/features/multi-column.yml @@ -2,52 +2,53 @@ name: Multi-column layout description: Multi-column layout flows an element's content across one or more columns in a single row, without affecting the `display` property of its children. spec: https://drafts.csswg.org/css-multicol-1/ group: multi-column -status: - compute_from: css.properties.columns compat_features: - - css.properties.align-content.multicol_context - - css.properties.column-count - - css.properties.column-count.auto - - css.properties.column-gap - - css.properties.column-gap.multicol_context - - css.properties.column-gap.multicol_context.calc_values - - css.properties.column-gap.multicol_context.percentage_values - - css.properties.column-gap.normal - - css.properties.column-rule - - css.properties.column-rule.currentColor - - css.properties.column-rule.dashed - - css.properties.column-rule.dotted - - css.properties.column-rule.double - - css.properties.column-rule.groove - - css.properties.column-rule.hidden - - css.properties.column-rule.inset - - css.properties.column-rule.medium - - css.properties.column-rule.none - - css.properties.column-rule.outset - - css.properties.column-rule.ridge - - css.properties.column-rule.solid - - css.properties.column-rule.thick - - css.properties.column-rule.thin - - css.properties.column-rule.transparent - - css.properties.column-rule-color - - css.properties.column-rule-color.currentColor - - css.properties.column-rule-color.transparent - - css.properties.column-rule-style - - css.properties.column-rule-style.dashed - - css.properties.column-rule-style.dotted - - css.properties.column-rule-style.double - - css.properties.column-rule-style.groove - - css.properties.column-rule-style.hidden - - css.properties.column-rule-style.inset - - css.properties.column-rule-style.none - - css.properties.column-rule-style.outset - - css.properties.column-rule-style.ridge - - css.properties.column-rule-style.solid - - css.properties.column-rule-width - - css.properties.column-rule-width.medium - - css.properties.column-rule-width.thick - - css.properties.column-rule-width.thin - - css.properties.column-width - - css.properties.column-width.auto - - css.properties.columns - - css.properties.gap.multicol_context + core: + - css.properties.column-count + - css.properties.column-count.auto + - css.properties.column-gap + - css.properties.column-gap.normal + - css.properties.column-rule + - css.properties.column-rule-color + - css.properties.column-rule-color.currentColor + - css.properties.column-rule-color.transparent + - css.properties.column-rule-style + - css.properties.column-rule-style.dashed + - css.properties.column-rule-style.dotted + - css.properties.column-rule-style.double + - css.properties.column-rule-style.groove + - css.properties.column-rule-style.hidden + - css.properties.column-rule-style.inset + - css.properties.column-rule-style.none + - css.properties.column-rule-style.outset + - css.properties.column-rule-style.ridge + - css.properties.column-rule-style.solid + - css.properties.column-rule-width + - css.properties.column-rule-width.medium + - css.properties.column-rule-width.thick + - css.properties.column-rule-width.thin + - css.properties.column-rule.currentColor + - css.properties.column-rule.dashed + - css.properties.column-rule.dotted + - css.properties.column-rule.double + - css.properties.column-rule.groove + - css.properties.column-rule.hidden + - css.properties.column-rule.inset + - css.properties.column-rule.medium + - css.properties.column-rule.none + - css.properties.column-rule.outset + - css.properties.column-rule.ridge + - css.properties.column-rule.solid + - css.properties.column-rule.thick + - css.properties.column-rule.thin + - css.properties.column-rule.transparent + - css.properties.column-width + - css.properties.column-width.auto + - css.properties.columns # former compute_from + modifier: + - css.properties.column-gap.multicol_context + - css.properties.column-gap.multicol_context.calc_values + - css.properties.column-gap.multicol_context.percentage_values + - css.properties.gap.multicol_context + spare: + - css.properties.align-content.multicol_context diff --git a/features/named-color.yml b/features/named-color.yml index 2cfb4dbea09..cb7cda30fa2 100644 --- a/features/named-color.yml +++ b/features/named-color.yml @@ -3,9 +3,9 @@ description: Some CSS color values can be referenced by name, such as `red` or ` spec: https://drafts.csswg.org/css-color-4/#named-colors group: color-types caniuse: css-rebeccapurple -status: - compute_from: css.types.color.named-color compat_features: - - css.types.color.named-color - - css.types.color.named-color.rebeccapurple - - css.types.color.named-color.transparent + core: + - css.types.color.named-color # former compute_from + modifier: + - css.types.color.named-color.rebeccapurple + - css.types.color.named-color.transparent diff --git a/features/namespace.yml b/features/namespace.yml index a06462f3570..9eee498e94c 100644 --- a/features/namespace.yml +++ b/features/namespace.yml @@ -5,11 +5,11 @@ caniuse: css-namespaces group: - css - selectors -status: - compute_from: css.at-rules.namespace compat_features: - - css.at-rules.namespace - - css.selectors.namespace - - api.CSSNamespaceRule - - api.CSSNamespaceRule.namespaceURI - - api.CSSNamespaceRule.prefix + core: + - css.at-rules.namespace # former compute_from + modifier: + - api.CSSNamespaceRule + - api.CSSNamespaceRule.namespaceURI + - api.CSSNamespaceRule.prefix + - css.selectors.namespace diff --git a/features/navigation-timing.yml b/features/navigation-timing.yml index 49b5c561094..97d0a7b2cf7 100644 --- a/features/navigation-timing.yml +++ b/features/navigation-timing.yml @@ -2,19 +2,20 @@ name: Navigation timing description: The `navigation` performance entry and the `PerformanceNavigationTiming` API measures navigation events, such as loading time or the number of redirects. spec: https://w3c.github.io/navigation-timing/ group: performance -status: - compute_from: api.PerformanceNavigationTiming compat_features: - - api.PerformanceNavigationTiming - - api.PerformanceNavigationTiming.criticalCHRestart - - api.PerformanceNavigationTiming.domComplete - - api.PerformanceNavigationTiming.domContentLoadedEventEnd - - api.PerformanceNavigationTiming.domContentLoadedEventStart - - api.PerformanceNavigationTiming.domInteractive - - api.PerformanceNavigationTiming.loadEventEnd - - api.PerformanceNavigationTiming.loadEventStart - - api.PerformanceNavigationTiming.redirectCount - - api.PerformanceNavigationTiming.toJSON - - api.PerformanceNavigationTiming.type - - api.PerformanceNavigationTiming.unloadEventEnd - - api.PerformanceNavigationTiming.unloadEventStart + core: + - api.PerformanceNavigationTiming # former compute_from + - api.PerformanceNavigationTiming.domComplete + - api.PerformanceNavigationTiming.domContentLoadedEventEnd + - api.PerformanceNavigationTiming.domContentLoadedEventStart + - api.PerformanceNavigationTiming.domInteractive + - api.PerformanceNavigationTiming.loadEventEnd + - api.PerformanceNavigationTiming.loadEventStart + - api.PerformanceNavigationTiming.redirectCount + - api.PerformanceNavigationTiming.type + - api.PerformanceNavigationTiming.unloadEventEnd + - api.PerformanceNavigationTiming.unloadEventStart + modifier: + - api.PerformanceNavigationTiming.toJSON + spare: + - api.PerformanceNavigationTiming.criticalCHRestart diff --git a/features/navigation.yml b/features/navigation.yml index 11af599c2cb..473896b85b2 100644 --- a/features/navigation.yml +++ b/features/navigation.yml @@ -1,65 +1,65 @@ name: Navigation API description: The `navigation` API initiates, intercepts, or modifies browser navigation actions. Not to be confused with the `navigator` API. spec: https://html.spec.whatwg.org/multipage/nav-history-apis.html#navigation-api -status: - compute_from: api.Navigation compat_features: - - api.NavigateEvent - - api.NavigateEvent.NavigateEvent - - api.NavigateEvent.canIntercept - - api.NavigateEvent.destination - - api.NavigateEvent.downloadRequest - - api.NavigateEvent.formData - - api.NavigateEvent.hasUAVisualTransition - - api.NavigateEvent.hashChange - - api.NavigateEvent.info - - api.NavigateEvent.intercept - - api.NavigateEvent.navigationType - - api.NavigateEvent.scroll - - api.NavigateEvent.signal - - api.NavigateEvent.userInitiated - - api.Navigation - - api.Navigation.activation - - api.Navigation.back - - api.Navigation.canGoBack - - api.Navigation.canGoForward - - api.Navigation.currentEntry - - api.Navigation.currententrychange_event - - api.Navigation.entries - - api.Navigation.forward - - api.Navigation.navigate - - api.Navigation.navigate_event - - api.Navigation.navigateerror_event - - api.Navigation.navigatesuccess_event - - api.Navigation.reload - - api.Navigation.transition - - api.Navigation.traverseTo - - api.Navigation.updateCurrentEntry - - api.NavigationActivation - - api.NavigationActivation.entry - - api.NavigationActivation.from - - api.NavigationActivation.navigationType - - api.NavigationCurrentEntryChangeEvent - - api.NavigationCurrentEntryChangeEvent.NavigationCurrentEntryChangeEvent - - api.NavigationCurrentEntryChangeEvent.from - - api.NavigationCurrentEntryChangeEvent.navigationType - - api.NavigationDestination - - api.NavigationDestination.getState - - api.NavigationDestination.id - - api.NavigationDestination.index - - api.NavigationDestination.key - - api.NavigationDestination.sameDocument - - api.NavigationDestination.url - - api.NavigationHistoryEntry - - api.NavigationHistoryEntry.dispose_event - - api.NavigationHistoryEntry.getState - - api.NavigationHistoryEntry.id - - api.NavigationHistoryEntry.index - - api.NavigationHistoryEntry.key - - api.NavigationHistoryEntry.sameDocument - - api.NavigationHistoryEntry.url - - api.NavigationTransition - - api.NavigationTransition.finished - - api.NavigationTransition.from - - api.NavigationTransition.navigationType - - api.Window.navigation + core: + - api.NavigateEvent + - api.NavigateEvent.NavigateEvent + - api.NavigateEvent.destination + - api.NavigateEvent.downloadRequest + - api.NavigateEvent.formData + - api.NavigateEvent.hashChange + - api.NavigateEvent.info + - api.NavigateEvent.navigationType + - api.NavigateEvent.signal + - api.NavigateEvent.userInitiated + - api.Navigation # former compute_from + - api.Navigation.back + - api.Navigation.canGoBack + - api.Navigation.canGoForward + - api.Navigation.currentEntry + - api.Navigation.currententrychange_event + - api.Navigation.entries + - api.Navigation.forward + - api.Navigation.navigate + - api.Navigation.navigate_event + - api.Navigation.navigateerror_event + - api.Navigation.navigatesuccess_event + - api.Navigation.reload + - api.Navigation.transition + - api.Navigation.traverseTo + - api.Navigation.updateCurrentEntry + - api.NavigationCurrentEntryChangeEvent + - api.NavigationCurrentEntryChangeEvent.NavigationCurrentEntryChangeEvent + - api.NavigationCurrentEntryChangeEvent.from + - api.NavigationCurrentEntryChangeEvent.navigationType + - api.NavigationDestination + - api.NavigationDestination.getState + - api.NavigationDestination.id + - api.NavigationDestination.index + - api.NavigationDestination.key + - api.NavigationDestination.sameDocument + - api.NavigationDestination.url + - api.NavigationHistoryEntry + - api.NavigationHistoryEntry.dispose_event + - api.NavigationHistoryEntry.getState + - api.NavigationHistoryEntry.id + - api.NavigationHistoryEntry.index + - api.NavigationHistoryEntry.key + - api.NavigationHistoryEntry.sameDocument + - api.NavigationHistoryEntry.url + - api.NavigationTransition + - api.NavigationTransition.finished + - api.NavigationTransition.from + - api.NavigationTransition.navigationType + - api.Window.navigation + modifier: + - api.NavigateEvent.canIntercept + - api.NavigateEvent.hasUAVisualTransition + - api.NavigateEvent.intercept + - api.NavigateEvent.scroll + - api.Navigation.activation + - api.NavigationActivation + - api.NavigationActivation.entry + - api.NavigationActivation.from + - api.NavigationActivation.navigationType diff --git a/features/nesting.yml b/features/nesting.yml index e6e1f7fef3d..2de8bf933db 100644 --- a/features/nesting.yml +++ b/features/nesting.yml @@ -3,12 +3,12 @@ description: CSS nesting allows for shorter selectors, easier reading, and more spec: https://drafts.csswg.org/css-nesting-1/ group: css caniuse: css-nesting -status: - compute_from: css.selectors.nesting compat_features: - - api.CSSStyleRule.cssRules - - api.CSSStyleRule.deleteRule - - api.CSSStyleRule.insertRule - - api.CSSNestedDeclarations - - api.CSSNestedDeclarations.style - - css.selectors.nesting + core: + - api.CSSStyleRule.cssRules + - api.CSSStyleRule.deleteRule + - api.CSSStyleRule.insertRule + - css.selectors.nesting # former compute_from + modifier: + - api.CSSNestedDeclarations + - api.CSSNestedDeclarations.style diff --git a/features/nth-child.yml b/features/nth-child.yml index 679ced2641e..d7ce935732e 100644 --- a/features/nth-child.yml +++ b/features/nth-child.yml @@ -4,16 +4,17 @@ spec: - https://drafts.csswg.org/selectors-3/#nth-child-pseudo - https://drafts.csswg.org/selectors-3/#nth-last-child-pseudo group: selectors -status: - compute_from: css.selectors.nth-child compat_features: - - css.selectors.first-child - - css.selectors.first-child.no_parent_required - - css.selectors.last-child - - css.selectors.last-child.no_parent_required - - css.selectors.nth-child - - css.selectors.nth-child.no_parent_required - - css.selectors.nth-last-child - - css.selectors.nth-last-child.no_parent_required - - css.selectors.only-child - - css.selectors.only-child.no_parent_required + core: + - css.selectors.last-child + - css.selectors.nth-child # former compute_from + modifier: + - css.selectors.first-child + - css.selectors.nth-last-child + - css.selectors.only-child + - css.selectors.only-child.no_parent_required + spare: + - css.selectors.first-child.no_parent_required + - css.selectors.last-child.no_parent_required + - css.selectors.nth-child.no_parent_required + - css.selectors.nth-last-child.no_parent_required diff --git a/features/number.yml b/features/number.yml index 371b928b8fc..fbf55853a29 100644 --- a/features/number.yml +++ b/features/number.yml @@ -2,80 +2,80 @@ name: Math and numbers description: The number type (and `Number` object) represents floating-point numbers, such as 42 or -4.201, while the `Math` API contains mathematical functions and constants. JavaScript can also represent boundless negative and positive values as `Infinity` or not-a-number as `NaN` (as in `0 * Infinity`). spec: https://tc39.es/ecma262/multipage/numbers-and-dates.html#sec-number-objects group: primitive-types -status: - compute_from: javascript.builtins.Number compat_features: - - javascript.builtins.Infinity - - javascript.builtins.isNaN - - javascript.builtins.Math - - javascript.builtins.Math.abs - - javascript.builtins.Math.acos - - javascript.builtins.Math.acosh - - javascript.builtins.Math.asin - - javascript.builtins.Math.asinh - - javascript.builtins.Math.atan - - javascript.builtins.Math.atan2 - - javascript.builtins.Math.atanh - - javascript.builtins.Math.cbrt - - javascript.builtins.Math.ceil - - javascript.builtins.Math.clz32 - - javascript.builtins.Math.cos - - javascript.builtins.Math.cosh - - javascript.builtins.Math.E - - javascript.builtins.Math.exp - - javascript.builtins.Math.expm1 - - javascript.builtins.Math.floor - - javascript.builtins.Math.fround - - javascript.builtins.Math.hypot - - javascript.builtins.Math.imul - - javascript.builtins.Math.LN10 - - javascript.builtins.Math.LN2 - - javascript.builtins.Math.log - - javascript.builtins.Math.log10 - - javascript.builtins.Math.LOG10E - - javascript.builtins.Math.log1p - - javascript.builtins.Math.log2 - - javascript.builtins.Math.LOG2E - - javascript.builtins.Math.max - - javascript.builtins.Math.min - - javascript.builtins.Math.PI - - javascript.builtins.Math.pow - - javascript.builtins.Math.random - - javascript.builtins.Math.round - - javascript.builtins.Math.sign - - javascript.builtins.Math.sin - - javascript.builtins.Math.sinh - - javascript.builtins.Math.sqrt - - javascript.builtins.Math.SQRT1_2 - - javascript.builtins.Math.SQRT2 - - javascript.builtins.Math.tan - - javascript.builtins.Math.tanh - - javascript.builtins.Math.trunc - - javascript.builtins.NaN - - javascript.builtins.Number - - javascript.builtins.Number.EPSILON - - javascript.builtins.Number.isFinite - - javascript.builtins.Number.isInteger - - javascript.builtins.Number.isNaN - - javascript.builtins.Number.isSafeInteger - - javascript.builtins.Number.MAX_SAFE_INTEGER - - javascript.builtins.Number.MAX_VALUE - - javascript.builtins.Number.MIN_SAFE_INTEGER - - javascript.builtins.Number.MIN_VALUE - - javascript.builtins.Number.NaN - - javascript.builtins.Number.NEGATIVE_INFINITY - - javascript.builtins.Number.Number - - javascript.builtins.Number.parseFloat - - javascript.builtins.Number.parseInt - - javascript.builtins.Number.POSITIVE_INFINITY - - javascript.builtins.Number.toExponential - - javascript.builtins.Number.toFixed - - javascript.builtins.Number.toPrecision - - javascript.builtins.Number.toString - - javascript.builtins.Number.valueOf - - javascript.builtins.parseInt - - javascript.builtins.parseInt.leading_zero_strings_as_decimal - - javascript.grammar.binary_numeric_literals - - javascript.grammar.decimal_numeric_literals - - javascript.grammar.hexadecimal_numeric_literals - - javascript.grammar.octal_numeric_literals + core: + - javascript.builtins.Infinity + - javascript.builtins.Math + - javascript.builtins.Math.E + - javascript.builtins.Math.LN10 + - javascript.builtins.Math.LN2 + - javascript.builtins.Math.LOG10E + - javascript.builtins.Math.LOG2E + - javascript.builtins.Math.PI + - javascript.builtins.Math.SQRT1_2 + - javascript.builtins.Math.SQRT2 + - javascript.builtins.Math.abs + - javascript.builtins.Math.acos + - javascript.builtins.Math.asin + - javascript.builtins.Math.atan + - javascript.builtins.Math.atan2 + - javascript.builtins.Math.ceil + - javascript.builtins.Math.cos + - javascript.builtins.Math.exp + - javascript.builtins.Math.floor + - javascript.builtins.Math.log + - javascript.builtins.Math.max + - javascript.builtins.Math.min + - javascript.builtins.Math.pow + - javascript.builtins.Math.random + - javascript.builtins.Math.round + - javascript.builtins.Math.sin + - javascript.builtins.Math.sqrt + - javascript.builtins.Math.tan + - javascript.builtins.NaN + - javascript.builtins.Number # former compute_from + - javascript.builtins.Number.MAX_VALUE + - javascript.builtins.Number.MIN_VALUE + - javascript.builtins.Number.NEGATIVE_INFINITY + - javascript.builtins.Number.NaN + - javascript.builtins.Number.Number + - javascript.builtins.Number.POSITIVE_INFINITY + - javascript.builtins.Number.toString + - javascript.builtins.Number.valueOf + - javascript.builtins.isNaN + - javascript.builtins.parseInt + - javascript.grammar.decimal_numeric_literals + - javascript.grammar.hexadecimal_numeric_literals + modifier: + - javascript.builtins.Math.acosh + - javascript.builtins.Math.asinh + - javascript.builtins.Math.atanh + - javascript.builtins.Math.cbrt + - javascript.builtins.Math.clz32 + - javascript.builtins.Math.cosh + - javascript.builtins.Math.expm1 + - javascript.builtins.Math.fround + - javascript.builtins.Math.hypot + - javascript.builtins.Math.imul + - javascript.builtins.Math.log10 + - javascript.builtins.Math.log1p + - javascript.builtins.Math.log2 + - javascript.builtins.Math.sign + - javascript.builtins.Math.sinh + - javascript.builtins.Math.tanh + - javascript.builtins.Math.trunc + - javascript.builtins.Number.EPSILON + - javascript.builtins.Number.MAX_SAFE_INTEGER + - javascript.builtins.Number.MIN_SAFE_INTEGER + - javascript.builtins.Number.isFinite + - javascript.builtins.Number.isInteger + - javascript.builtins.Number.isNaN + - javascript.builtins.Number.isSafeInteger + - javascript.builtins.Number.parseFloat + - javascript.builtins.Number.parseInt + - javascript.builtins.Number.toExponential + - javascript.builtins.Number.toFixed + - javascript.builtins.Number.toPrecision + - javascript.builtins.parseInt.leading_zero_strings_as_decimal + - javascript.grammar.binary_numeric_literals + - javascript.grammar.octal_numeric_literals diff --git a/features/numeric-factory-functions.yml b/features/numeric-factory-functions.yml index 40844caf74e..ad816d0e6bd 100644 --- a/features/numeric-factory-functions.yml +++ b/features/numeric-factory-functions.yml @@ -2,69 +2,69 @@ name: Numeric factory functions description: The numeric factory functions, such as `CSS.px()` or `CSS.kHz()`, return a `CSSUnitValue` representing a CSS number value (as in `12px` or `440kHz`). spec: https://drafts.css-houdini.org/css-typed-om-1/#numeric-factory group: cssom -status: - compute_from: api.CSS.px_static compat_features: - - api.CSS.Hz_static - - api.CSS.Q_static - - api.CSS.cap_static - - api.CSS.ch_static - - api.CSS.cm_static - - api.CSS.cqb_static - - api.CSS.cqh_static - - api.CSS.cqi_static - - api.CSS.cqmax_static - - api.CSS.cqmin_static - - api.CSS.cqw_static - - api.CSS.deg_static - - api.CSS.dpcm_static - - api.CSS.dpi_static - - api.CSS.dppx_static - - api.CSS.dvb_static - - api.CSS.dvh_static - - api.CSS.dvi_static - - api.CSS.dvmax_static - - api.CSS.dvmin_static - - api.CSS.dvw_static - - api.CSS.em_static - - api.CSS.ex_static - - api.CSS.fr_static - - api.CSS.grad_static - - api.CSS.ic_static - - api.CSS.in_static - - api.CSS.kHz_static - - api.CSS.lh_static - - api.CSS.lvb_static - - api.CSS.lvh_static - - api.CSS.lvi_static - - api.CSS.lvmax_static - - api.CSS.lvmin_static - - api.CSS.lvw_static - - api.CSS.mm_static - - api.CSS.ms_static - - api.CSS.number_static - - api.CSS.pc_static - - api.CSS.percent_static - - api.CSS.pt_static - - api.CSS.px_static - - api.CSS.rad_static - - api.CSS.rcap_static - - api.CSS.rch_static - - api.CSS.rem_static - - api.CSS.rex_static - - api.CSS.ric_static - - api.CSS.rlh_static - - api.CSS.s_static - - api.CSS.svb_static - - api.CSS.svh_static - - api.CSS.svi_static - - api.CSS.svmax_static - - api.CSS.svmin_static - - api.CSS.svw_static - - api.CSS.turn_static - - api.CSS.vb_static - - api.CSS.vh_static - - api.CSS.vi_static - - api.CSS.vmax_static - - api.CSS.vmin_static - - api.CSS.vw_static + core: + - api.CSS.Hz_static + - api.CSS.Q_static + - api.CSS.ch_static + - api.CSS.cm_static + - api.CSS.deg_static + - api.CSS.dpcm_static + - api.CSS.dpi_static + - api.CSS.dppx_static + - api.CSS.em_static + - api.CSS.ex_static + - api.CSS.fr_static + - api.CSS.grad_static + - api.CSS.in_static + - api.CSS.kHz_static + - api.CSS.mm_static + - api.CSS.ms_static + - api.CSS.number_static + - api.CSS.pc_static + - api.CSS.percent_static + - api.CSS.pt_static + - api.CSS.px_static # former compute_from + - api.CSS.rad_static + - api.CSS.rem_static + - api.CSS.s_static + - api.CSS.turn_static + - api.CSS.vh_static + - api.CSS.vmax_static + - api.CSS.vmin_static + - api.CSS.vw_static + modifier: + - api.CSS.cap_static + - api.CSS.cqb_static + - api.CSS.cqh_static + - api.CSS.cqi_static + - api.CSS.cqmax_static + - api.CSS.cqmin_static + - api.CSS.cqw_static + - api.CSS.dvb_static + - api.CSS.dvh_static + - api.CSS.dvi_static + - api.CSS.dvmax_static + - api.CSS.dvmin_static + - api.CSS.dvw_static + - api.CSS.ic_static + - api.CSS.lh_static + - api.CSS.lvb_static + - api.CSS.lvh_static + - api.CSS.lvi_static + - api.CSS.lvmax_static + - api.CSS.lvmin_static + - api.CSS.lvw_static + - api.CSS.rcap_static + - api.CSS.rch_static + - api.CSS.rex_static + - api.CSS.ric_static + - api.CSS.rlh_static + - api.CSS.svb_static + - api.CSS.svh_static + - api.CSS.svi_static + - api.CSS.svmax_static + - api.CSS.svmin_static + - api.CSS.svw_static + - api.CSS.vb_static + - api.CSS.vi_static diff --git a/features/object-object.yml b/features/object-object.yml index 0b56d47ce17..4450e97384f 100644 --- a/features/object-object.yml +++ b/features/object-object.yml @@ -1,44 +1,44 @@ name: Object description: Objects in JavaScript are collections of key-value pairs. spec: https://tc39.es/ecma262/multipage/fundamental-objects.html#sec-object-objects -status: - compute_from: javascript.builtins.Object group: javascript compat_features: - - javascript.builtins.Object - - javascript.builtins.Object.Object - - javascript.builtins.Object.assign - - javascript.builtins.Object.constructor - - javascript.builtins.Object.create - - javascript.builtins.Object.defineProperties - - javascript.builtins.Object.defineProperty - - javascript.builtins.Object.entries - - javascript.builtins.Object.freeze - - javascript.builtins.Object.fromEntries - - javascript.builtins.Object.getOwnPropertyDescriptor - - javascript.builtins.Object.getOwnPropertyDescriptors - - javascript.builtins.Object.getOwnPropertyNames - - javascript.builtins.Object.getOwnPropertySymbols - - javascript.builtins.Object.getPrototypeOf - - javascript.builtins.Object.hasOwnProperty - - javascript.builtins.Object.is - - javascript.builtins.Object.isExtensible - - javascript.builtins.Object.isFrozen - - javascript.builtins.Object.isPrototypeOf - - javascript.builtins.Object.isSealed - - javascript.builtins.Object.keys - - javascript.builtins.Object.preventExtensions - - javascript.builtins.Object.preventExtensions.ES2015_behavior - - javascript.builtins.Object.propertyIsEnumerable - - javascript.builtins.Object.seal - - javascript.builtins.Object.setPrototypeOf - - javascript.builtins.Object.toString - - javascript.builtins.Object.valueOf - - javascript.builtins.Object.values - - javascript.operators.object_initializer - - javascript.operators.object_initializer.computed_property_names - - javascript.operators.object_initializer.shorthand_method_names - - javascript.operators.object_initializer.shorthand_property_names - - javascript.operators.object_initializer.spread_properties - - javascript.operators.optional_chaining - - javascript.grammar.shorthand_object_literals + core: + - javascript.builtins.Object # former compute_from + - javascript.builtins.Object.Object + - javascript.builtins.Object.constructor + - javascript.builtins.Object.toString + - javascript.builtins.Object.valueOf + - javascript.operators.object_initializer + modifier: + - javascript.builtins.Object.assign + - javascript.builtins.Object.create + - javascript.builtins.Object.defineProperties + - javascript.builtins.Object.defineProperty + - javascript.builtins.Object.entries + - javascript.builtins.Object.freeze + - javascript.builtins.Object.fromEntries + - javascript.builtins.Object.getOwnPropertyDescriptor + - javascript.builtins.Object.getOwnPropertyDescriptors + - javascript.builtins.Object.getOwnPropertyNames + - javascript.builtins.Object.getOwnPropertySymbols + - javascript.builtins.Object.getPrototypeOf + - javascript.builtins.Object.hasOwnProperty + - javascript.builtins.Object.is + - javascript.builtins.Object.isExtensible + - javascript.builtins.Object.isFrozen + - javascript.builtins.Object.isPrototypeOf + - javascript.builtins.Object.isSealed + - javascript.builtins.Object.keys + - javascript.builtins.Object.preventExtensions + - javascript.builtins.Object.preventExtensions.ES2015_behavior + - javascript.builtins.Object.propertyIsEnumerable + - javascript.builtins.Object.seal + - javascript.builtins.Object.setPrototypeOf + - javascript.builtins.Object.values + - javascript.grammar.shorthand_object_literals + - javascript.operators.object_initializer.computed_property_names + - javascript.operators.object_initializer.shorthand_method_names + - javascript.operators.object_initializer.shorthand_property_names + - javascript.operators.object_initializer.spread_properties + - javascript.operators.optional_chaining diff --git a/features/object.yml b/features/object.yml index 9b63db53d15..6ef3d596961 100644 --- a/features/object.yml +++ b/features/object.yml @@ -2,23 +2,23 @@ name: description: The `` element represents an external resource such as a PDF or SVG document. It was historically used for plugins such as Shockwave Flash. spec: https://html.spec.whatwg.org/multipage/iframe-embed-object.html#the-object-element group: html-elements -status: - compute_from: html.elements.object compat_features: - - api.HTMLObjectElement - - api.HTMLObjectElement.contentDocument - - api.HTMLObjectElement.contentWindow - - api.HTMLObjectElement.data - - api.HTMLObjectElement.form - - api.HTMLObjectElement.getSVGDocument - - api.HTMLObjectElement.height - - api.HTMLObjectElement.name - - api.HTMLObjectElement.type - - api.HTMLObjectElement.width - - html.elements.object - - html.elements.object.data - - html.elements.object.form - - html.elements.object.height - - html.elements.object.name - - html.elements.object.type - - html.elements.object.width + core: + - api.HTMLObjectElement + - api.HTMLObjectElement.contentDocument + - api.HTMLObjectElement.data + - api.HTMLObjectElement.form + - api.HTMLObjectElement.height + - api.HTMLObjectElement.name + - api.HTMLObjectElement.type + - api.HTMLObjectElement.width + - html.elements.object # former compute_from + - html.elements.object.data + - html.elements.object.form + - html.elements.object.height + - html.elements.object.name + - html.elements.object.type + - html.elements.object.width + modifier: + - api.HTMLObjectElement.contentWindow + - api.HTMLObjectElement.getSVGDocument diff --git a/features/offline-audio-context.yml b/features/offline-audio-context.yml index 834f33497d3..71d7dbc1d11 100644 --- a/features/offline-audio-context.yml +++ b/features/offline-audio-context.yml @@ -2,18 +2,19 @@ name: OfflineAudioContext description: The `OfflineAudioContext` API represents an audio processing graph that writes to an `AudioBuffer` instead of an output device. spec: https://webaudio.github.io/web-audio-api/#OfflineAudioContext group: web-audio -status: - compute_from: api.OfflineAudioContext.OfflineAudioContext compat_features: - - api.OfflineAudioCompletionEvent - - api.OfflineAudioCompletionEvent.OfflineAudioCompletionEvent - - api.OfflineAudioCompletionEvent.renderedBuffer - - api.OfflineAudioContext - - api.OfflineAudioContext.OfflineAudioContext - - api.OfflineAudioContext.OfflineAudioContext.options_parameter - - api.OfflineAudioContext.complete_event - - api.OfflineAudioContext.length - - api.OfflineAudioContext.resume - - api.OfflineAudioContext.startRendering - - api.OfflineAudioContext.startRendering.returns_promise - - api.OfflineAudioContext.suspend + core: + - api.OfflineAudioCompletionEvent + - api.OfflineAudioCompletionEvent.renderedBuffer + - api.OfflineAudioContext + - api.OfflineAudioContext.OfflineAudioContext # former compute_from + - api.OfflineAudioContext.complete_event + - api.OfflineAudioContext.startRendering + modifier: + - api.OfflineAudioCompletionEvent.OfflineAudioCompletionEvent + - api.OfflineAudioContext.OfflineAudioContext.options_parameter + - api.OfflineAudioContext.length + - api.OfflineAudioContext.startRendering.returns_promise + spare: + - api.OfflineAudioContext.resume + - api.OfflineAudioContext.suspend diff --git a/features/online.yml b/features/online.yml index 39df2338e96..dfcd40e5f38 100644 --- a/features/online.yml +++ b/features/online.yml @@ -4,12 +4,13 @@ spec: - https://html.spec.whatwg.org/multipage/system-state.html#navigator.online - https://html.spec.whatwg.org/multipage/indices.html#event-online caniuse: online-status -status: - compute_from: api.Navigator.onLine compat_features: - - api.Navigator.onLine - - api.Window.offline_event - - api.Window.online_event - - api.WorkerGlobalScope.offline_event - - api.WorkerGlobalScope.online_event - - api.WorkerNavigator.onLine + core: + - api.Navigator.onLine # former compute_from + modifier: + - api.Window.offline_event + - api.Window.online_event + - api.WorkerNavigator.onLine + spare: + - api.WorkerGlobalScope.offline_event + - api.WorkerGlobalScope.online_event diff --git a/features/opacity.yml b/features/opacity.yml index bd874fa7a78..70d75b4318f 100644 --- a/features/opacity.yml +++ b/features/opacity.yml @@ -3,11 +3,11 @@ description: The `opacity` CSS property sets the transparency of an element. spec: https://drafts.csswg.org/css-color-3/#transparency group: css caniuse: css-opacity -status: - compute_from: css.properties.opacity compat_features: - - css.properties.opacity - - css.properties.opacity.percentages - - svg.global_attributes.opacity - - css.types.number - - css.types.number.scientific_notation + core: + - css.properties.opacity # former compute_from + - css.types.number + - svg.global_attributes.opacity + modifier: + - css.properties.opacity.percentages + - css.types.number.scientific_notation diff --git a/features/output.yml b/features/output.yml index 8510d2944e4..03d2f4ad18d 100644 --- a/features/output.yml +++ b/features/output.yml @@ -4,19 +4,20 @@ spec: https://html.spec.whatwg.org/multipage/form-elements.html#the-output-eleme group: - forms - html-elements -status: - compute_from: html.elements.output compat_features: - - api.HTMLOutputElement - - api.HTMLOutputElement.HTMLOutputElement - - api.HTMLOutputElement.defaultValue - - api.HTMLOutputElement.form - - api.HTMLOutputElement.htmlFor - - api.HTMLOutputElement.labels - - api.HTMLOutputElement.name - - api.HTMLOutputElement.type - - api.HTMLOutputElement.value - - html.elements.output - - html.elements.output.for - - html.elements.output.form - - html.elements.output.name + core: + - html.elements.output # former compute_from + - html.elements.output.for + - html.elements.output.form + - html.elements.output.name + modifier: + - api.HTMLOutputElement + - api.HTMLOutputElement.defaultValue + - api.HTMLOutputElement.form + - api.HTMLOutputElement.htmlFor + - api.HTMLOutputElement.labels + - api.HTMLOutputElement.name + - api.HTMLOutputElement.type + - api.HTMLOutputElement.value + spare: + - api.HTMLOutputElement.HTMLOutputElement diff --git a/features/overflow-wrap.yml b/features/overflow-wrap.yml index f1327c7f58c..07d837be6a2 100644 --- a/features/overflow-wrap.yml +++ b/features/overflow-wrap.yml @@ -3,10 +3,10 @@ description: The `overflow-wrap` CSS property breaks a line of text onto multipl spec: https://drafts.csswg.org/css-text-4/#overflow-wrap-property group: text-wrap caniuse: wordwrap -status: - compute_from: css.properties.overflow-wrap compat_features: - - css.properties.overflow-wrap - - css.properties.overflow-wrap.anywhere - - css.properties.overflow-wrap.break-word - - css.properties.overflow-wrap.normal + core: + - css.properties.overflow-wrap # former compute_from + - css.properties.overflow-wrap.break-word + - css.properties.overflow-wrap.normal + modifier: + - css.properties.overflow-wrap.anywhere diff --git a/features/page-setup.yml b/features/page-setup.yml index 7b1ed6d0661..0f476fc882f 100644 --- a/features/page-setup.yml +++ b/features/page-setup.yml @@ -5,27 +5,28 @@ group: - layout - print caniuse: css-paged-media -status: - compute_from: css.at-rules.page.size compat_features: - - css.at-rules.page - - css.at-rules.page.bottom-center - - css.at-rules.page.bottom-left - - css.at-rules.page.bottom-left-corner - - css.at-rules.page.bottom-right - - css.at-rules.page.bottom-right-corner - - css.at-rules.page.left-bottom - - css.at-rules.page.left-middle - - css.at-rules.page.left-top - - css.at-rules.page.right-bottom - - css.at-rules.page.right-middle - - css.at-rules.page.right-top - - css.at-rules.page.size - - css.at-rules.page.size.jis-b4 - - css.at-rules.page.size.jis-b5 - - css.at-rules.page.top-center - - css.at-rules.page.top-left - - css.at-rules.page.top-left-corner - - css.at-rules.page.top-right - - css.at-rules.page.top-right-corner - - css.properties.page + core: + - css.at-rules.page + - css.at-rules.page.size # former compute_from + modifier: + - css.at-rules.page.size.jis-b4 + - css.at-rules.page.size.jis-b5 + spare: + - css.at-rules.page.bottom-center + - css.at-rules.page.bottom-left + - css.at-rules.page.bottom-left-corner + - css.at-rules.page.bottom-right + - css.at-rules.page.bottom-right-corner + - css.at-rules.page.left-bottom + - css.at-rules.page.left-middle + - css.at-rules.page.left-top + - css.at-rules.page.right-bottom + - css.at-rules.page.right-middle + - css.at-rules.page.right-top + - css.at-rules.page.top-center + - css.at-rules.page.top-left + - css.at-rules.page.top-left-corner + - css.at-rules.page.top-right + - css.at-rules.page.top-right-corner + - css.properties.page diff --git a/features/page-transition-events.yml b/features/page-transition-events.yml index ecb8a75c9b3..5adba57d416 100644 --- a/features/page-transition-events.yml +++ b/features/page-transition-events.yml @@ -2,11 +2,11 @@ name: Page transition events description: "The `pageshow` and `pagehide` transition events fire when a document loads or unloads due to a navigation, such as clicking on a link on a page or the back button in a browser." spec: https://html.spec.whatwg.org/multipage/nav-history-apis.html#the-pagetransitionevent-interface caniuse: page-transition-events -status: - compute_from: api.PageTransitionEvent compat_features: - - api.PageTransitionEvent - - api.PageTransitionEvent.PageTransitionEvent - - api.PageTransitionEvent.persisted - - api.Window.pagehide_event - - api.Window.pageshow_event + core: + - api.PageTransitionEvent # former compute_from + modifier: + - api.PageTransitionEvent.PageTransitionEvent + - api.PageTransitionEvent.persisted + - api.Window.pagehide_event + - api.Window.pageshow_event diff --git a/features/page-visibility.yml b/features/page-visibility.yml index eb8564a5740..8294d2b8310 100644 --- a/features/page-visibility.yml +++ b/features/page-visibility.yml @@ -2,9 +2,9 @@ name: Page visibility description: "The `document.visibilityState` and `document.hidden` properties tell you whether the page is visible to the user (for example, it's not minimized or in a background tab)." spec: https://html.spec.whatwg.org/multipage/interaction.html#page-visibility caniuse: pagevisibility -status: - compute_from: api.Document.hidden compat_features: - - api.Document.hidden - - api.Document.visibilityState - - api.Document.visibilitychange_event + core: + - api.Document.hidden # former compute_from + - api.Document.visibilityState + modifier: + - api.Document.visibilitychange_event diff --git a/features/payment-handler.yml b/features/payment-handler.yml index 3a0b9476d8c..3fba2468f99 100644 --- a/features/payment-handler.yml +++ b/features/payment-handler.yml @@ -2,32 +2,32 @@ name: Payment handler description: The payment handler API registers a web application as a payment handler and responds to payment requests in the browser's user interface, rather than redirecting users to a separate site to complete a payment. spec: https://w3c.github.io/web-based-payment-handler/ group: payments -status: - compute_from: api.PaymentManager compat_features: - - api.CanMakePaymentEvent - - api.CanMakePaymentEvent.CanMakePaymentEvent - - api.CanMakePaymentEvent.respondWith - - api.PaymentManager - - api.PaymentManager.enableDelegations - - api.PaymentManager.secure_context_required - - api.PaymentManager.userHint - - api.PaymentRequestEvent - - api.PaymentRequestEvent.PaymentRequestEvent - - api.PaymentRequestEvent.changePaymentMethod - - api.PaymentRequestEvent.changeShippingAddress - - api.PaymentRequestEvent.changeShippingOption - - api.PaymentRequestEvent.methodData - - api.PaymentRequestEvent.modifiers - - api.PaymentRequestEvent.openWindow - - api.PaymentRequestEvent.paymentOptions - - api.PaymentRequestEvent.paymentRequestId - - api.PaymentRequestEvent.paymentRequestOrigin - - api.PaymentRequestEvent.respondWith - - api.PaymentRequestEvent.shippingOptions - - api.PaymentRequestEvent.topOrigin - - api.PaymentRequestEvent.total - - api.Permissions.permission_payment-handler - - api.ServiceWorkerGlobalScope.canmakepayment_event - - api.ServiceWorkerGlobalScope.paymentrequest_event - - api.ServiceWorkerRegistration.paymentManager + core: + - api.CanMakePaymentEvent + - api.CanMakePaymentEvent.CanMakePaymentEvent + - api.CanMakePaymentEvent.respondWith + - api.PaymentManager # former compute_from + - api.PaymentManager.userHint + - api.PaymentRequestEvent + - api.PaymentRequestEvent.PaymentRequestEvent + - api.PaymentRequestEvent.methodData + - api.PaymentRequestEvent.modifiers + - api.PaymentRequestEvent.openWindow + - api.PaymentRequestEvent.paymentRequestId + - api.PaymentRequestEvent.paymentRequestOrigin + - api.PaymentRequestEvent.respondWith + - api.PaymentRequestEvent.topOrigin + - api.PaymentRequestEvent.total + - api.Permissions.permission_payment-handler + - api.ServiceWorkerGlobalScope.canmakepayment_event + - api.ServiceWorkerGlobalScope.paymentrequest_event + - api.ServiceWorkerRegistration.paymentManager + modifier: + - api.PaymentManager.enableDelegations + - api.PaymentManager.secure_context_required + - api.PaymentRequestEvent.changePaymentMethod + - api.PaymentRequestEvent.changeShippingAddress + - api.PaymentRequestEvent.changeShippingOption + - api.PaymentRequestEvent.paymentOptions + - api.PaymentRequestEvent.shippingOptions diff --git a/features/payment-request.yml b/features/payment-request.yml index 87dca1f8617..1415ce25f8a 100644 --- a/features/payment-request.yml +++ b/features/payment-request.yml @@ -2,37 +2,37 @@ name: Payment request description: The `PaymentRequest` API prompts the user to make a payment through the browser's user interface. spec: https://w3c.github.io/payment-request/ group: payments -status: - compute_from: api.PaymentRequest compat_features: - - api.PaymentMethodChangeEvent - - api.PaymentMethodChangeEvent.PaymentMethodChangeEvent - - api.PaymentMethodChangeEvent.methodDetails - - api.PaymentMethodChangeEvent.methodName - - api.PaymentRequest - - api.PaymentRequest.PaymentRequest - - api.PaymentRequest.PaymentRequest.secure_payment_confirmation_method - - api.PaymentRequest.abort - - api.PaymentRequest.canMakePayment - - api.PaymentRequest.id - - api.PaymentRequest.paymentmethodchange_event - - api.PaymentRequest.show - - api.PaymentRequestUpdateEvent - - api.PaymentRequestUpdateEvent.PaymentRequestUpdateEvent - - api.PaymentRequestUpdateEvent.secure_context_required - - api.PaymentRequestUpdateEvent.updateWith - - api.PaymentResponse - - api.PaymentResponse.complete - - api.PaymentResponse.details - - api.PaymentResponse.methodName - - api.PaymentResponse.payerEmail - - api.PaymentResponse.payerName - - api.PaymentResponse.payerPhone - - api.PaymentResponse.payerdetailchange_event - - api.PaymentResponse.requestId - - api.PaymentResponse.retry - - api.PaymentResponse.shippingAddress - - api.PaymentResponse.shippingOption - - api.PaymentResponse.toJSON - - html.elements.iframe.allow.payment - - http.headers.Permissions-Policy.payment + core: + - api.PaymentRequest # former compute_from + - api.PaymentRequest.PaymentRequest + - api.PaymentRequest.abort + - api.PaymentRequest.show + - api.PaymentRequestUpdateEvent + - api.PaymentRequestUpdateEvent.PaymentRequestUpdateEvent + - api.PaymentRequestUpdateEvent.updateWith + - api.PaymentResponse + - api.PaymentResponse.complete + - api.PaymentResponse.details + - api.PaymentResponse.methodName + - api.PaymentResponse.payerEmail + - api.PaymentResponse.payerPhone + - api.PaymentResponse.shippingAddress + - api.PaymentResponse.shippingOption + modifier: + - api.PaymentMethodChangeEvent + - api.PaymentMethodChangeEvent.PaymentMethodChangeEvent + - api.PaymentMethodChangeEvent.methodDetails + - api.PaymentMethodChangeEvent.methodName + - api.PaymentRequest.PaymentRequest.secure_payment_confirmation_method + - api.PaymentRequest.canMakePayment + - api.PaymentRequest.id + - api.PaymentRequest.paymentmethodchange_event + - api.PaymentRequestUpdateEvent.secure_context_required + - api.PaymentResponse.payerName + - api.PaymentResponse.payerdetailchange_event + - api.PaymentResponse.requestId + - api.PaymentResponse.retry + - api.PaymentResponse.toJSON + - html.elements.iframe.allow.payment + - http.headers.Permissions-Policy.payment diff --git a/features/performance.yml b/features/performance.yml index b51bb6c62be..24f2c92f69e 100644 --- a/features/performance.yml +++ b/features/performance.yml @@ -8,48 +8,49 @@ caniuse: - user-timing - high-resolution-time group: performance -status: - compute_from: api.Performance compat_features: - - api.performance - - api.performance.worker_support - - api.Performance - - api.Performance.now - - api.Performance.timeOrigin - - api.Performance.toJSON - - api.Performance.getEntries - - api.Performance.getEntriesByName - - api.Performance.getEntriesByType - - api.Performance.clearMarks - - api.Performance.clearMeasures - - api.Performance.mark - - api.Performance.mark.markOptions_parameter - - api.Performance.mark.returns_performancemark - - api.Performance.measure - - api.Performance.measure.measureOptions_parameter - - api.Performance.measure.returns_performancemeasure - - api.PerformanceEntry - - api.PerformanceEntry.duration - - api.PerformanceEntry.entryType - - api.PerformanceEntry.name - - api.PerformanceEntry.startTime - - api.PerformanceEntry.toJSON - - api.PerformanceEntry.worker_support - - api.PerformanceMark - - api.PerformanceMark.PerformanceMark - - api.PerformanceMark.detail - - api.PerformanceMeasure - - api.PerformanceMeasure.detail - - api.PerformanceObserver - - api.PerformanceObserver.PerformanceObserver - - api.PerformanceObserver.PerformanceObserver.droppedEntriesCount - - api.PerformanceObserver.disconnect - - api.PerformanceObserver.observe - - api.PerformanceObserver.supportedEntryTypes_static - - api.PerformanceObserver.takeRecords - - api.PerformanceObserver.worker_support - - api.PerformanceObserverEntryList - - api.PerformanceObserverEntryList.getEntries - - api.PerformanceObserverEntryList.getEntriesByName - - api.PerformanceObserverEntryList.getEntriesByType - - http.headers.Timing-Allow-Origin + core: + - api.Performance # former compute_from + - api.performance + modifier: + - api.Performance.clearMarks + - api.Performance.clearMeasures + - api.Performance.getEntries + - api.Performance.getEntriesByName + - api.Performance.getEntriesByType + - api.Performance.mark + - api.Performance.mark.markOptions_parameter + - api.Performance.mark.returns_performancemark + - api.Performance.measure + - api.Performance.measure.measureOptions_parameter + - api.Performance.measure.returns_performancemeasure + - api.Performance.now + - api.Performance.timeOrigin + - api.Performance.toJSON + - api.PerformanceEntry + - api.PerformanceEntry.duration + - api.PerformanceEntry.entryType + - api.PerformanceEntry.name + - api.PerformanceEntry.startTime + - api.PerformanceEntry.toJSON + - api.PerformanceEntry.worker_support + - api.PerformanceMark + - api.PerformanceMark.PerformanceMark + - api.PerformanceMark.detail + - api.PerformanceMeasure + - api.PerformanceMeasure.detail + - api.PerformanceObserver + - api.PerformanceObserver.PerformanceObserver + - api.PerformanceObserver.disconnect + - api.PerformanceObserver.observe + - api.PerformanceObserver.supportedEntryTypes_static + - api.PerformanceObserver.takeRecords + - api.PerformanceObserver.worker_support + - api.PerformanceObserverEntryList + - api.PerformanceObserverEntryList.getEntries + - api.PerformanceObserverEntryList.getEntriesByName + - api.PerformanceObserverEntryList.getEntriesByType + - api.performance.worker_support + - http.headers.Timing-Allow-Origin + spare: + - api.PerformanceObserver.PerformanceObserver.droppedEntriesCount diff --git a/features/permissions.yml b/features/permissions.yml index 986d891c721..979afc7601d 100644 --- a/features/permissions.yml +++ b/features/permissions.yml @@ -5,15 +5,16 @@ spec: - https://wicg.github.io/permissions-request/#dom-permissions-request caniuse: permissions-api group: security -status: - compute_from: api.PermissionStatus.state compat_features: - - api.Navigator.permissions - - api.PermissionStatus - - api.PermissionStatus.change_event - - api.PermissionStatus.name - - api.PermissionStatus.state - - api.Permissions - - api.Permissions.query - - api.Permissions.request - - api.WorkerNavigator.permissions + core: + - api.Navigator.permissions + - api.PermissionStatus + - api.PermissionStatus.state # former compute_from + - api.Permissions + - api.Permissions.query + modifier: + - api.PermissionStatus.name + spare: + - api.PermissionStatus.change_event + - api.Permissions.request + - api.WorkerNavigator.permissions diff --git a/features/picture-in-picture.yml b/features/picture-in-picture.yml index 1d0ba26b584..7e573345472 100644 --- a/features/picture-in-picture.yml +++ b/features/picture-in-picture.yml @@ -2,26 +2,26 @@ name: Picture-in-picture (video) description: The picture-in-picture API allow websites to create a floating, always-on-top video window. Also known as PiP or pop-out video. spec: https://w3c.github.io/picture-in-picture/ caniuse: picture-in-picture -status: - compute_from: api.Document.pictureInPictureElement compat_features: - - api.Document.exitPictureInPicture - - api.Document.pictureInPictureElement - - api.Document.pictureInPictureEnabled - - api.HTMLVideoElement.disablePictureInPicture - - api.HTMLVideoElement.enterpictureinpicture_event - - api.HTMLVideoElement.leavepictureinpicture_event - - api.HTMLVideoElement.requestPictureInPicture - - api.PictureInPictureWindow - - api.PictureInPictureWindow.height - - api.PictureInPictureWindow.resize_event - - api.PictureInPictureWindow.width - - api.ShadowRoot.pictureInPictureElement - - html.elements.video.disablepictureinpicture - - api.PictureInPictureEvent - - api.PictureInPictureEvent.PictureInPictureEvent - - api.PictureInPictureEvent.pictureInPictureWindow - - css.at-rules.media.display-mode.picture-in-picture - - css.selectors.picture-in-picture - - html.elements.iframe.allow.picture-in-picture - - http.headers.Permissions-Policy.picture-in-picture + core: + - api.Document.exitPictureInPicture + - api.Document.pictureInPictureElement # former compute_from + - api.Document.pictureInPictureEnabled + - api.HTMLVideoElement.disablePictureInPicture + - api.HTMLVideoElement.enterpictureinpicture_event + - api.HTMLVideoElement.leavepictureinpicture_event + - api.HTMLVideoElement.requestPictureInPicture + - api.PictureInPictureWindow + - api.PictureInPictureWindow.height + - api.PictureInPictureWindow.resize_event + - api.PictureInPictureWindow.width + - api.ShadowRoot.pictureInPictureElement + - html.elements.video.disablepictureinpicture + modifier: + - api.PictureInPictureEvent + - api.PictureInPictureEvent.PictureInPictureEvent + - api.PictureInPictureEvent.pictureInPictureWindow + - css.at-rules.media.display-mode.picture-in-picture + - css.selectors.picture-in-picture + - html.elements.iframe.allow.picture-in-picture + - http.headers.Permissions-Policy.picture-in-picture diff --git a/features/ping.yml b/features/ping.yml index 027756a5586..2d2a8953909 100644 --- a/features/ping.yml +++ b/features/ping.yml @@ -2,12 +2,12 @@ name: ping description: The `ping` attribute for `` elements sets a URL to send a POST request to when the `` is clicked. This is typically used for outbound link reporting. spec: https://html.spec.whatwg.org/multipage/links.html#ping caniuse: ping -status: - compute_from: html.elements.a.ping compat_features: - - api.HTMLAnchorElement.ping - - api.HTMLAreaElement.ping - - api.SVGAElement.ping - - html.elements.a.ping - - html.elements.area.ping - - svg.elements.a.ping + core: + - api.HTMLAnchorElement.ping + - api.HTMLAreaElement.ping + - html.elements.a.ping # former compute_from + - html.elements.area.ping + modifier: + - api.SVGAElement.ping + - svg.elements.a.ping diff --git a/features/pointer-events-api.yml b/features/pointer-events-api.yml index 00a13b01c07..b8352d26f09 100644 --- a/features/pointer-events-api.yml +++ b/features/pointer-events-api.yml @@ -2,44 +2,45 @@ name: Pointer Events description: Pointer events, such as `pointerdown`, and the `PointerEvent` API, represent general pointing inputs, from a wide range of devices, such as a mouse, pen or stylus, or touch with one or more fingers. Not to be confused with the `pointer-events` CSS property. spec: https://w3c.github.io/pointerevents/ caniuse: pointer -status: - compute_from: api.Element.pointerdown_event compat_features: - - api.Element.auxclick_event.type_pointerevent - - api.Element.click_event.type_pointerevent - - api.Element.contextmenu_event.type_pointerevent - - api.Element.gotpointercapture_event - - api.Element.hasPointerCapture - - api.Element.lostpointercapture_event - - api.Element.pointercancel_event - - api.Element.pointerdown_event - - api.Element.pointerenter_event - - api.Element.pointerleave_event - - api.Element.pointermove_event - - api.Element.pointerout_event - - api.Element.pointerover_event - - api.Element.pointerrawupdate_event - - api.Element.pointerup_event - - api.Element.releasePointerCapture - - api.Element.setPointerCapture - - api.Navigator.maxTouchPoints - - api.PointerEvent - - api.PointerEvent.PointerEvent - - api.PointerEvent.PointerEvent.options_altitudeAngle_parameter - - api.PointerEvent.PointerEvent.options_azimuthAngle_parameter - - api.PointerEvent.altitudeAngle - - api.PointerEvent.azimuthAngle - - api.PointerEvent.getCoalescedEvents - - api.PointerEvent.getPredictedEvents - - api.PointerEvent.height - - api.PointerEvent.isPrimary - - api.PointerEvent.persistentDeviceId - - api.PointerEvent.pointerId - - api.PointerEvent.pointerType - - api.PointerEvent.pointerType.fractional_coordinates - - api.PointerEvent.pressure - - api.PointerEvent.tangentialPressure - - api.PointerEvent.tiltX - - api.PointerEvent.tiltY - - api.PointerEvent.twist - - api.PointerEvent.width + core: + - api.Element.pointercancel_event + - api.Element.pointerdown_event # former compute_from + - api.Element.pointerenter_event + - api.Element.pointerleave_event + - api.Element.pointermove_event + - api.Element.pointerout_event + - api.Element.pointerover_event + - api.Element.pointerup_event + - api.Element.releasePointerCapture + - api.Element.setPointerCapture + - api.Navigator.maxTouchPoints + - api.PointerEvent + - api.PointerEvent.PointerEvent + - api.PointerEvent.height + - api.PointerEvent.isPrimary + - api.PointerEvent.pointerId + - api.PointerEvent.pointerType + - api.PointerEvent.pressure + - api.PointerEvent.tiltX + - api.PointerEvent.tiltY + - api.PointerEvent.width + modifier: + - api.Element.gotpointercapture_event + - api.Element.hasPointerCapture + - api.Element.lostpointercapture_event + - api.PointerEvent.tangentialPressure + - api.PointerEvent.twist + spare: + - api.Element.auxclick_event.type_pointerevent + - api.Element.click_event.type_pointerevent + - api.Element.contextmenu_event.type_pointerevent + - api.Element.pointerrawupdate_event + - api.PointerEvent.PointerEvent.options_altitudeAngle_parameter + - api.PointerEvent.PointerEvent.options_azimuthAngle_parameter + - api.PointerEvent.altitudeAngle + - api.PointerEvent.azimuthAngle + - api.PointerEvent.getCoalescedEvents + - api.PointerEvent.getPredictedEvents + - api.PointerEvent.persistentDeviceId + - api.PointerEvent.pointerType.fractional_coordinates diff --git a/features/prefers-color-scheme.yml b/features/prefers-color-scheme.yml index de3fcf287bd..1b557979b52 100644 --- a/features/prefers-color-scheme.yml +++ b/features/prefers-color-scheme.yml @@ -2,9 +2,9 @@ name: prefers-color-scheme media query description: The `prefers-color-scheme` CSS media query sets styles based on the requested color scheme, light or dark. spec: https://drafts.csswg.org/mediaqueries-5/#prefers-color-scheme group: media-queries -status: - compute_from: css.at-rules.media.prefers-color-scheme compat_features: - - css.at-rules.media.prefers-color-scheme - - css.at-rules.media.prefers-color-scheme.respects-inherited-scheme - - http.headers.Sec-CH-Prefers-Color-Scheme + core: + - css.at-rules.media.prefers-color-scheme # former compute_from + spare: + - css.at-rules.media.prefers-color-scheme.respects-inherited-scheme + - http.headers.Sec-CH-Prefers-Color-Scheme diff --git a/features/prefers-reduced-motion.yml b/features/prefers-reduced-motion.yml index 6b2aeead1f7..0be168ee206 100644 --- a/features/prefers-reduced-motion.yml +++ b/features/prefers-reduced-motion.yml @@ -3,8 +3,8 @@ description: The `prefers-reduced-motion` CSS media query sets styles based on w spec: https://drafts.csswg.org/mediaqueries-5/#prefers-reduced-motion caniuse: prefers-reduced-motion group: media-queries -status: - compute_from: css.at-rules.media.prefers-reduced-motion compat_features: - - css.at-rules.media.prefers-reduced-motion - - http.headers.Sec-CH-Prefers-Reduced-Motion + core: + - css.at-rules.media.prefers-reduced-motion # former compute_from + spare: + - http.headers.Sec-CH-Prefers-Reduced-Motion diff --git a/features/presentation-api.yml b/features/presentation-api.yml index 28cac3cd173..6a2cfa1790b 100644 --- a/features/presentation-api.yml +++ b/features/presentation-api.yml @@ -1,45 +1,45 @@ name: Presentation API description: The Presentation API shows or controls content on another display, such as a network-connected TV or projector. spec: https://w3c.github.io/presentation-api/ -status: - compute_from: api.PresentationRequest.PresentationRequest compat_features: - - api.Navigator.presentation - - api.Presentation - - api.Presentation.defaultRequest - - api.Presentation.receiver - - api.PresentationAvailability - - api.PresentationAvailability.change_event - - api.PresentationAvailability.value - - api.PresentationConnection - - api.PresentationConnection.binaryType - - api.PresentationConnection.close - - api.PresentationConnection.close_event - - api.PresentationConnection.connect_event - - api.PresentationConnection.id - - api.PresentationConnection.message_event - - api.PresentationConnection.send - - api.PresentationConnection.state - - api.PresentationConnection.terminate - - api.PresentationConnection.terminate_event - - api.PresentationConnection.url - - api.PresentationConnectionAvailableEvent - - api.PresentationConnectionAvailableEvent.PresentationConnectionAvailableEvent - - api.PresentationConnectionAvailableEvent.connection - - api.PresentationConnectionCloseEvent - - api.PresentationConnectionCloseEvent.PresentationConnectionCloseEvent - - api.PresentationConnectionCloseEvent.message - - api.PresentationConnectionCloseEvent.reason - - api.PresentationConnectionList - - api.PresentationConnectionList.connectionavailable_event - - api.PresentationConnectionList.connections - - api.PresentationReceiver - - api.PresentationReceiver.connectionList - - api.PresentationRequest - - api.PresentationRequest.PresentationRequest - - api.PresentationRequest.connectionavailable_event - - api.PresentationRequest.getAvailability - - api.PresentationRequest.reconnect - - api.PresentationRequest.secure_context_required - - api.PresentationRequest.start - - html.elements.iframe.sandbox.allow-presentation + core: + - api.Navigator.presentation + - api.Presentation + - api.Presentation.defaultRequest + - api.PresentationAvailability + - api.PresentationAvailability.change_event + - api.PresentationAvailability.value + - api.PresentationConnection + - api.PresentationConnection.binaryType + - api.PresentationConnection.id + - api.PresentationConnection.message_event + - api.PresentationConnection.send + - api.PresentationConnection.state + - api.PresentationConnectionAvailableEvent + - api.PresentationConnectionAvailableEvent.PresentationConnectionAvailableEvent + - api.PresentationConnectionAvailableEvent.connection + - api.PresentationRequest + - api.PresentationRequest.PresentationRequest # former compute_from + - api.PresentationRequest.connectionavailable_event + - api.PresentationRequest.getAvailability + - api.PresentationRequest.reconnect + - api.PresentationRequest.start + modifier: + - api.Presentation.receiver + - api.PresentationConnection.close + - api.PresentationConnection.close_event + - api.PresentationConnection.connect_event + - api.PresentationConnection.terminate + - api.PresentationConnection.terminate_event + - api.PresentationConnection.url + - api.PresentationConnectionCloseEvent + - api.PresentationConnectionCloseEvent.PresentationConnectionCloseEvent + - api.PresentationConnectionCloseEvent.message + - api.PresentationConnectionCloseEvent.reason + - api.PresentationConnectionList + - api.PresentationConnectionList.connectionavailable_event + - api.PresentationConnectionList.connections + - api.PresentationReceiver + - api.PresentationReceiver.connectionList + - api.PresentationRequest.secure_context_required + - html.elements.iframe.sandbox.allow-presentation diff --git a/features/progress.yml b/features/progress.yml index 2bf787ea3ab..b5a1af6be2c 100644 --- a/features/progress.yml +++ b/features/progress.yml @@ -5,14 +5,14 @@ group: - forms - html-elements caniuse: progress -status: - compute_from: html.elements.progress compat_features: - - api.HTMLProgressElement - - api.HTMLProgressElement.labels - - api.HTMLProgressElement.max - - api.HTMLProgressElement.position - - api.HTMLProgressElement.value - - html.elements.progress - - html.elements.progress.max - - html.elements.progress.value + core: + - api.HTMLProgressElement + - api.HTMLProgressElement.max + - api.HTMLProgressElement.position + - api.HTMLProgressElement.value + - html.elements.progress # former compute_from + - html.elements.progress.max + - html.elements.progress.value + modifier: + - api.HTMLProgressElement.labels diff --git a/features/promise-any.yml b/features/promise-any.yml index 4c832fb37ab..32d4cc41acb 100644 --- a/features/promise-any.yml +++ b/features/promise-any.yml @@ -3,11 +3,11 @@ description: The `Promise.any()` static method returns a promise that fulfills a snapshot: ecmascript-2021 spec: https://tc39.es/ecma262/multipage/control-abstraction-objects.html#sec-promise.any group: promises -status: - compute_from: javascript.builtins.Promise.any compat_features: - - javascript.builtins.Promise.any - - javascript.builtins.AggregateError - - javascript.builtins.AggregateError.AggregateError - - javascript.builtins.AggregateError.serializable_object - - javascript.builtins.AggregateError.errors + core: + - javascript.builtins.AggregateError + - javascript.builtins.AggregateError.AggregateError + - javascript.builtins.AggregateError.errors + - javascript.builtins.Promise.any # former compute_from + modifier: + - javascript.builtins.AggregateError.serializable_object diff --git a/features/promise.yml b/features/promise.yml index a491ea9a602..53d9aa40462 100644 --- a/features/promise.yml +++ b/features/promise.yml @@ -13,16 +13,17 @@ spec: - https://tc39.es/ecma262/multipage/control-abstraction-objects.html#sec-promise.resolve - https://tc39.es/ecma262/multipage/control-abstraction-objects.html#sec-promise.prototype.then group: promises -status: - compute_from: javascript.builtins.Promise compat_features: - - javascript.builtins.Promise - - javascript.builtins.Promise.@@species - - javascript.builtins.Promise.Promise - - javascript.builtins.Promise.all - - javascript.builtins.Promise.catch - - javascript.builtins.Promise.incumbent_settings_object_tracking - - javascript.builtins.Promise.race - - javascript.builtins.Promise.reject - - javascript.builtins.Promise.resolve - - javascript.builtins.Promise.then + core: + - javascript.builtins.Promise # former compute_from + - javascript.builtins.Promise.Promise + - javascript.builtins.Promise.all + - javascript.builtins.Promise.catch + - javascript.builtins.Promise.race + - javascript.builtins.Promise.reject + - javascript.builtins.Promise.resolve + - javascript.builtins.Promise.then + modifier: + - javascript.builtins.Promise.@@species + spare: + - javascript.builtins.Promise.incumbent_settings_object_tracking diff --git a/features/proxy-reflect.yml b/features/proxy-reflect.yml index eb0bea988fd..12dad9222e1 100644 --- a/features/proxy-reflect.yml +++ b/features/proxy-reflect.yml @@ -4,36 +4,36 @@ spec: https://tc39.es/ecma262/multipage/reflection.html#sec-reflection group: javascript caniuse: proxy snapshot: ecmascript-2015 -status: - compute_from: javascript.builtins.Proxy compat_features: - - javascript.builtins.Proxy - - javascript.builtins.Proxy.Proxy - - javascript.builtins.Proxy.handler.apply - - javascript.builtins.Proxy.handler.construct - - javascript.builtins.Proxy.handler.defineProperty - - javascript.builtins.Proxy.handler.deleteProperty - - javascript.builtins.Proxy.handler.get - - javascript.builtins.Proxy.handler.getOwnPropertyDescriptor - - javascript.builtins.Proxy.handler.getPrototypeOf - - javascript.builtins.Proxy.handler.has - - javascript.builtins.Proxy.handler.isExtensible - - javascript.builtins.Proxy.handler.ownKeys - - javascript.builtins.Proxy.handler.preventExtensions - - javascript.builtins.Proxy.handler.set - - javascript.builtins.Proxy.handler.setPrototypeOf - - javascript.builtins.Proxy.revocable - - javascript.builtins.Reflect - - javascript.builtins.Reflect.apply - - javascript.builtins.Reflect.construct - - javascript.builtins.Reflect.defineProperty - - javascript.builtins.Reflect.deleteProperty - - javascript.builtins.Reflect.get - - javascript.builtins.Reflect.getOwnPropertyDescriptor - - javascript.builtins.Reflect.getPrototypeOf - - javascript.builtins.Reflect.has - - javascript.builtins.Reflect.isExtensible - - javascript.builtins.Reflect.ownKeys - - javascript.builtins.Reflect.preventExtensions - - javascript.builtins.Reflect.set - - javascript.builtins.Reflect.setPrototypeOf + core: + - javascript.builtins.Proxy # former compute_from + - javascript.builtins.Proxy.Proxy + - javascript.builtins.Proxy.handler.apply + - javascript.builtins.Proxy.handler.construct + - javascript.builtins.Proxy.handler.defineProperty + - javascript.builtins.Proxy.handler.deleteProperty + - javascript.builtins.Proxy.handler.get + - javascript.builtins.Proxy.handler.getOwnPropertyDescriptor + - javascript.builtins.Proxy.handler.has + - javascript.builtins.Proxy.handler.ownKeys + - javascript.builtins.Proxy.handler.set + modifier: + - javascript.builtins.Proxy.handler.getPrototypeOf + - javascript.builtins.Proxy.handler.isExtensible + - javascript.builtins.Proxy.handler.preventExtensions + - javascript.builtins.Proxy.handler.setPrototypeOf + - javascript.builtins.Proxy.revocable + - javascript.builtins.Reflect + - javascript.builtins.Reflect.apply + - javascript.builtins.Reflect.construct + - javascript.builtins.Reflect.defineProperty + - javascript.builtins.Reflect.deleteProperty + - javascript.builtins.Reflect.get + - javascript.builtins.Reflect.getOwnPropertyDescriptor + - javascript.builtins.Reflect.getPrototypeOf + - javascript.builtins.Reflect.has + - javascript.builtins.Reflect.isExtensible + - javascript.builtins.Reflect.ownKeys + - javascript.builtins.Reflect.preventExtensions + - javascript.builtins.Reflect.set + - javascript.builtins.Reflect.setPrototypeOf diff --git a/features/push.yml b/features/push.yml index fa60ea542a1..31bc865fa01 100644 --- a/features/push.yml +++ b/features/push.yml @@ -2,39 +2,40 @@ name: Push messages description: The Push API subscribes to and receives server-initiated messages. Subscribers receive pushed messages in the background, even after periods inactive or offline. spec: https://w3c.github.io/push-api/ caniuse: push-api -status: - compute_from: api.PushMessageData compat_features: - - api.Permissions.permission_push - - api.PushEvent - - api.PushEvent.PushEvent - - api.PushEvent.data - - api.PushManager - - api.PushManager.getSubscription - - api.PushManager.permissionState - - api.PushManager.subscribe - - api.PushManager.supportedContentEncodings_static - - api.PushMessageData - - api.PushMessageData.arrayBuffer - - api.PushMessageData.blob - - api.PushMessageData.bytes - - api.PushMessageData.json - - api.PushMessageData.text - - api.PushSubscription - - api.PushSubscription.endpoint - - api.PushSubscription.expirationTime - - api.PushSubscription.getKey - - api.PushSubscription.options - - api.PushSubscription.toJSON - - api.PushSubscription.unsubscribe - - api.PushSubscriptionChangeEvent - - api.PushSubscriptionChangeEvent.PushSubscriptionChangeEvent - - api.PushSubscriptionChangeEvent.newSubscription - - api.PushSubscriptionChangeEvent.oldSubscription - - api.PushSubscriptionOptions - - api.PushSubscriptionOptions.applicationServerKey - - api.PushSubscriptionOptions.userVisibleOnly - - api.ServiceWorkerGlobalScope.push_event - - api.ServiceWorkerGlobalScope.pushsubscriptionchange_event - - api.ServiceWorkerRegistration - - api.ServiceWorkerRegistration.pushManager + core: + - api.PushEvent + - api.PushEvent.PushEvent + - api.PushEvent.data + - api.PushManager + - api.PushManager.getSubscription + - api.PushManager.permissionState + - api.PushManager.subscribe + - api.PushMessageData # former compute_from + - api.PushMessageData.arrayBuffer + - api.PushMessageData.blob + - api.PushMessageData.json + - api.PushMessageData.text + - api.PushSubscription + - api.PushSubscription.endpoint + - api.PushSubscription.getKey + - api.PushSubscription.toJSON + - api.PushSubscription.unsubscribe + - api.ServiceWorkerGlobalScope.push_event + - api.ServiceWorkerRegistration + - api.ServiceWorkerRegistration.pushManager + modifier: + - api.Permissions.permission_push + - api.PushSubscription.expirationTime + - api.PushSubscription.options + - api.PushSubscriptionOptions + - api.PushSubscriptionOptions.applicationServerKey + spare: + - api.PushManager.supportedContentEncodings_static + - api.PushMessageData.bytes + - api.PushSubscriptionChangeEvent + - api.PushSubscriptionChangeEvent.PushSubscriptionChangeEvent + - api.PushSubscriptionChangeEvent.newSubscription + - api.PushSubscriptionChangeEvent.oldSubscription + - api.PushSubscriptionOptions.userVisibleOnly + - api.ServiceWorkerGlobalScope.pushsubscriptionchange_event diff --git a/features/readable-byte-streams.yml b/features/readable-byte-streams.yml index 728205fb3ec..03d703524f5 100644 --- a/features/readable-byte-streams.yml +++ b/features/readable-byte-streams.yml @@ -3,25 +3,24 @@ description: 'A `ReadableStream` constructed with `{ type: "bytes" }` reads byte spec: https://streams.spec.whatwg.org/ caniuse: streams group: streams -status: - compute_from: - - api.ReadableStreamBYOBReader compat_features: - - api.ReadableByteStreamController - - api.ReadableByteStreamController.byobRequest - - api.ReadableByteStreamController.close - - api.ReadableByteStreamController.desiredSize - - api.ReadableByteStreamController.enqueue - - api.ReadableByteStreamController.error - - api.ReadableStreamBYOBReader - - api.ReadableStreamBYOBReader.ReadableStreamBYOBReader - - api.ReadableStreamBYOBReader.cancel - - api.ReadableStreamBYOBReader.closed - - api.ReadableStreamBYOBReader.read - - api.ReadableStreamBYOBReader.releaseLock - - api.ReadableStreamBYOBReader.releaseLock.reject_pending_read_request - - api.ReadableStreamBYOBRequest - - api.ReadableStreamBYOBRequest.respond - - api.ReadableStreamBYOBRequest.respondWithNewView - - api.ReadableStreamBYOBRequest.view - - api.ReadableStreamBYOBReader.read.options_min_parameter + core: + - api.ReadableByteStreamController + - api.ReadableByteStreamController.byobRequest + - api.ReadableByteStreamController.close + - api.ReadableByteStreamController.desiredSize + - api.ReadableByteStreamController.enqueue + - api.ReadableByteStreamController.error + - api.ReadableStreamBYOBReader # former compute_from + - api.ReadableStreamBYOBReader.ReadableStreamBYOBReader + - api.ReadableStreamBYOBReader.cancel + - api.ReadableStreamBYOBReader.closed + - api.ReadableStreamBYOBReader.read + - api.ReadableStreamBYOBReader.releaseLock + - api.ReadableStreamBYOBRequest + - api.ReadableStreamBYOBRequest.respond + - api.ReadableStreamBYOBRequest.respondWithNewView + - api.ReadableStreamBYOBRequest.view + spare: + - api.ReadableStreamBYOBReader.read.options_min_parameter + - api.ReadableStreamBYOBReader.releaseLock.reject_pending_read_request diff --git a/features/referrer-policy.yml b/features/referrer-policy.yml index 4a25b1f462f..4ff5a4d0f83 100644 --- a/features/referrer-policy.yml +++ b/features/referrer-policy.yml @@ -2,70 +2,62 @@ name: Referrer policy description: The `Referrer-Policy` HTTP header and `referrerpolicy` HTML attributes control whether requests have the `Referer` header and what information the header contains. spec: https://w3c.github.io/webappsec-referrer-policy/ caniuse: referrer-policy -status: - compute_from: - - html.elements.a.referrerpolicy - - html.elements.area.referrerpolicy - - html.elements.iframe.referrerpolicy - - html.elements.img.referrerpolicy - - html.elements.link.referrerpolicy - - html.elements.script.referrerpolicy - - http.headers.Referrer-Policy - - http.headers.Referrer-Policy.default_strict-origin-when-cross-origin compat_features: - - api.HTMLAnchorElement.referrerPolicy - - api.HTMLAnchorElement.referrerPolicy.no-referrer-when-downgrade - - api.HTMLAnchorElement.referrerPolicy.origin-when-cross-origin - - api.HTMLAnchorElement.referrerPolicy.unsafe-url - - api.HTMLAreaElement.referrerPolicy - - api.HTMLAreaElement.referrerPolicy.no-referrer-when-downgrade - - api.HTMLAreaElement.referrerPolicy.origin-when-cross-origin - - api.HTMLAreaElement.referrerPolicy.unsafe-url - - api.HTMLIFrameElement.referrerPolicy - - api.HTMLIFrameElement.referrerPolicy.no-referrer-when-downgrade - - api.HTMLIFrameElement.referrerPolicy.origin-when-cross-origin - - api.HTMLIFrameElement.referrerPolicy.unsafe-url - - api.HTMLImageElement.referrerPolicy - - api.HTMLImageElement.referrerPolicy.no-referrer-when-downgrade - - api.HTMLImageElement.referrerPolicy.origin-when-cross-origin - - api.HTMLImageElement.referrerPolicy.unsafe-url - - api.HTMLLinkElement.referrerPolicy - - api.HTMLLinkElement.referrerPolicy.no-referrer-when-downgrade - - api.HTMLLinkElement.referrerPolicy.origin-when-cross-origin - - api.HTMLLinkElement.referrerPolicy.unsafe-url - - api.HTMLScriptElement.referrerPolicy - - api.HTMLScriptElement.referrerPolicy.no-referrer-when-downgrade - - api.HTMLScriptElement.referrerPolicy.origin-when-cross-origin - - api.HTMLScriptElement.referrerPolicy.unsafe-url - - html.elements.a.referrerpolicy - - html.elements.a.referrerpolicy.no-referrer-when-downgrade - - html.elements.a.referrerpolicy.origin-when-cross-origin - - html.elements.a.referrerpolicy.unsafe-url - - html.elements.area.referrerpolicy - - html.elements.area.referrerpolicy.no-referrer-when-downgrade - - html.elements.area.referrerpolicy.origin-when-cross-origin - - html.elements.area.referrerpolicy.unsafe-url - - html.elements.iframe.referrerpolicy - - html.elements.iframe.referrerpolicy.no-referrer-when-downgrade - - html.elements.iframe.referrerpolicy.origin-when-cross-origin - - html.elements.iframe.referrerpolicy.unsafe-url - - html.elements.img.referrerpolicy - - html.elements.img.referrerpolicy.no-referrer-when-downgrade - - html.elements.img.referrerpolicy.origin-when-cross-origin - - html.elements.img.referrerpolicy.unsafe-url - - html.elements.link.referrerpolicy - - html.elements.link.referrerpolicy.no-referrer-when-downgrade - - html.elements.link.referrerpolicy.origin-when-cross-origin - - html.elements.link.referrerpolicy.unsafe-url - - html.elements.script.referrerpolicy - - html.elements.script.referrerpolicy.no-referrer-when-downgrade - - html.elements.script.referrerpolicy.origin-when-cross-origin - - html.elements.script.referrerpolicy.unsafe-url - - http.headers.Referrer-Policy - - http.headers.Referrer-Policy.default_strict-origin-when-cross-origin - - http.headers.Referrer-Policy.no-referrer-when-downgrade - - http.headers.Referrer-Policy.origin-when-cross-origin - - http.headers.Referrer-Policy.same-origin - - http.headers.Referrer-Policy.strict-origin - - http.headers.Referrer-Policy.strict-origin-when-cross-origin - - http.headers.Referrer-Policy.unsafe-url + core: + - api.HTMLAnchorElement.referrerPolicy + - api.HTMLAreaElement.referrerPolicy + - api.HTMLIFrameElement.referrerPolicy + - api.HTMLImageElement.referrerPolicy + - api.HTMLLinkElement.referrerPolicy + - api.HTMLScriptElement.referrerPolicy + - html.elements.a.referrerpolicy # former compute_from + - html.elements.area.referrerpolicy # former compute_from + - html.elements.iframe.referrerpolicy # former compute_from + - html.elements.img.referrerpolicy # former compute_from + - html.elements.link.referrerpolicy # former compute_from + - html.elements.script.referrerpolicy # former compute_from + - http.headers.Referrer-Policy # former compute_from + - http.headers.Referrer-Policy.default_strict-origin-when-cross-origin # former compute_from + - http.headers.Referrer-Policy.same-origin + - http.headers.Referrer-Policy.strict-origin + - http.headers.Referrer-Policy.strict-origin-when-cross-origin + spare: + - api.HTMLAnchorElement.referrerPolicy.no-referrer-when-downgrade + - api.HTMLAnchorElement.referrerPolicy.origin-when-cross-origin + - api.HTMLAnchorElement.referrerPolicy.unsafe-url + - api.HTMLAreaElement.referrerPolicy.no-referrer-when-downgrade + - api.HTMLAreaElement.referrerPolicy.origin-when-cross-origin + - api.HTMLAreaElement.referrerPolicy.unsafe-url + - api.HTMLIFrameElement.referrerPolicy.no-referrer-when-downgrade + - api.HTMLIFrameElement.referrerPolicy.origin-when-cross-origin + - api.HTMLIFrameElement.referrerPolicy.unsafe-url + - api.HTMLImageElement.referrerPolicy.no-referrer-when-downgrade + - api.HTMLImageElement.referrerPolicy.origin-when-cross-origin + - api.HTMLImageElement.referrerPolicy.unsafe-url + - api.HTMLLinkElement.referrerPolicy.no-referrer-when-downgrade + - api.HTMLLinkElement.referrerPolicy.origin-when-cross-origin + - api.HTMLLinkElement.referrerPolicy.unsafe-url + - api.HTMLScriptElement.referrerPolicy.no-referrer-when-downgrade + - api.HTMLScriptElement.referrerPolicy.origin-when-cross-origin + - api.HTMLScriptElement.referrerPolicy.unsafe-url + - html.elements.a.referrerpolicy.no-referrer-when-downgrade + - html.elements.a.referrerpolicy.origin-when-cross-origin + - html.elements.a.referrerpolicy.unsafe-url + - html.elements.area.referrerpolicy.no-referrer-when-downgrade + - html.elements.area.referrerpolicy.origin-when-cross-origin + - html.elements.area.referrerpolicy.unsafe-url + - html.elements.iframe.referrerpolicy.no-referrer-when-downgrade + - html.elements.iframe.referrerpolicy.origin-when-cross-origin + - html.elements.iframe.referrerpolicy.unsafe-url + - html.elements.img.referrerpolicy.no-referrer-when-downgrade + - html.elements.img.referrerpolicy.origin-when-cross-origin + - html.elements.img.referrerpolicy.unsafe-url + - html.elements.link.referrerpolicy.no-referrer-when-downgrade + - html.elements.link.referrerpolicy.origin-when-cross-origin + - html.elements.link.referrerpolicy.unsafe-url + - html.elements.script.referrerpolicy.no-referrer-when-downgrade + - html.elements.script.referrerpolicy.origin-when-cross-origin + - html.elements.script.referrerpolicy.unsafe-url + - http.headers.Referrer-Policy.no-referrer-when-downgrade + - http.headers.Referrer-Policy.origin-when-cross-origin + - http.headers.Referrer-Policy.unsafe-url diff --git a/features/regexp.yml b/features/regexp.yml index ebcfbbd214f..9a25c9d3d65 100644 --- a/features/regexp.yml +++ b/features/regexp.yml @@ -2,58 +2,59 @@ name: Regular expressions description: The `RegExp` object represents a regular expression, a notation for matching text patterns. spec: https://tc39.es/ecma262/multipage/text-processing.html#sec-regexp-regular-expression-objects group: regexps -status: - compute_from: javascript.builtins.RegExp compat_features: - - javascript.builtins.RegExp - - javascript.builtins.RegExp.@@match - - javascript.builtins.RegExp.@@matchAll - - javascript.builtins.RegExp.@@replace - - javascript.builtins.RegExp.@@search - - javascript.builtins.RegExp.@@species - - javascript.builtins.RegExp.@@split - - javascript.builtins.RegExp.dotAll - - javascript.builtins.RegExp.exec - - javascript.builtins.RegExp.flags - - javascript.builtins.RegExp.global - - javascript.builtins.RegExp.global.prototype_accessor - - javascript.builtins.RegExp.hasIndices - - javascript.builtins.RegExp.ignoreCase - - javascript.builtins.RegExp.ignoreCase.prototype_accessor - - javascript.builtins.RegExp.lastIndex - - javascript.builtins.RegExp.multiline - - javascript.builtins.RegExp.multiline.prototype_accessor - - javascript.builtins.RegExp.RegExp - - javascript.builtins.RegExp.source - - javascript.builtins.RegExp.source.empty_regex_string - - javascript.builtins.RegExp.source.escaping - - javascript.builtins.RegExp.source.prototype_accessor - - javascript.builtins.RegExp.sticky - - javascript.builtins.RegExp.sticky.anchored_sticky_flag - - javascript.builtins.RegExp.sticky.prototype_accessor - - javascript.builtins.RegExp.test - - javascript.builtins.RegExp.toString - - javascript.builtins.RegExp.toString.escaping - - javascript.builtins.RegExp.unicode - - javascript.builtins.RegExp.unicodeSets - - javascript.grammar.regular_expression_literals - - javascript.regular_expressions.backreference - - javascript.regular_expressions.capturing_group - - javascript.regular_expressions.character_class - - javascript.regular_expressions.character_class_escape - - javascript.regular_expressions.character_escape - - javascript.regular_expressions.character_escape.unicode - - javascript.regular_expressions.disjunction - - javascript.regular_expressions.input_boundary_assertion - - javascript.regular_expressions.literal_character - - javascript.regular_expressions.lookahead_assertion - - javascript.regular_expressions.lookbehind_assertion - - javascript.regular_expressions.modifier - - javascript.regular_expressions.named_backreference - - javascript.regular_expressions.named_capturing_group - - javascript.regular_expressions.named_capturing_group.duplicate_named_capturing_groups - - javascript.regular_expressions.non_capturing_group - - javascript.regular_expressions.quantifier - - javascript.regular_expressions.unicode_character_class_escape - - javascript.regular_expressions.wildcard - - javascript.regular_expressions.word_boundary_assertion + core: + - javascript.builtins.RegExp # former compute_from + - javascript.builtins.RegExp.RegExp + - javascript.builtins.RegExp.exec + - javascript.builtins.RegExp.global + - javascript.builtins.RegExp.ignoreCase + - javascript.builtins.RegExp.lastIndex + - javascript.builtins.RegExp.multiline + - javascript.builtins.RegExp.source + - javascript.builtins.RegExp.test + - javascript.builtins.RegExp.toString + - javascript.grammar.regular_expression_literals + - javascript.regular_expressions.backreference + - javascript.regular_expressions.capturing_group + - javascript.regular_expressions.character_class + - javascript.regular_expressions.character_class_escape + - javascript.regular_expressions.character_escape + - javascript.regular_expressions.disjunction + - javascript.regular_expressions.input_boundary_assertion + - javascript.regular_expressions.literal_character + - javascript.regular_expressions.lookahead_assertion + - javascript.regular_expressions.non_capturing_group + - javascript.regular_expressions.quantifier + - javascript.regular_expressions.wildcard + - javascript.regular_expressions.word_boundary_assertion + modifier: + - javascript.builtins.RegExp.@@match + - javascript.builtins.RegExp.@@matchAll + - javascript.builtins.RegExp.@@replace + - javascript.builtins.RegExp.@@search + - javascript.builtins.RegExp.@@species + - javascript.builtins.RegExp.@@split + - javascript.builtins.RegExp.dotAll + - javascript.builtins.RegExp.flags + - javascript.builtins.RegExp.global.prototype_accessor + - javascript.builtins.RegExp.hasIndices + - javascript.builtins.RegExp.ignoreCase.prototype_accessor + - javascript.builtins.RegExp.multiline.prototype_accessor + - javascript.builtins.RegExp.source.empty_regex_string + - javascript.builtins.RegExp.source.escaping + - javascript.builtins.RegExp.source.prototype_accessor + - javascript.builtins.RegExp.sticky + - javascript.builtins.RegExp.sticky.anchored_sticky_flag + - javascript.builtins.RegExp.sticky.prototype_accessor + - javascript.builtins.RegExp.toString.escaping + - javascript.builtins.RegExp.unicode + - javascript.builtins.RegExp.unicodeSets + - javascript.regular_expressions.character_escape.unicode + - javascript.regular_expressions.lookbehind_assertion + - javascript.regular_expressions.named_backreference + - javascript.regular_expressions.named_capturing_group + - javascript.regular_expressions.unicode_character_class_escape + spare: + - javascript.regular_expressions.modifier + - javascript.regular_expressions.named_capturing_group.duplicate_named_capturing_groups diff --git a/features/registerprotocolhandler.yml b/features/registerprotocolhandler.yml index 5a115ce0228..ec8ca04b79d 100644 --- a/features/registerprotocolhandler.yml +++ b/features/registerprotocolhandler.yml @@ -1,33 +1,33 @@ name: registerProtocolHandler description: "The `navigator.registerProtocolHandler()` method declares a site's ability to handle an address scheme (also known as a protocol). For example, an email site can register to open `mailto:` URLs or a VoIP site to open `tel:` URLs." spec: https://html.spec.whatwg.org/multipage/system-state.html#custom-handlers -status: - compute_from: api.Navigator.registerProtocolHandler compat_features: - - api.Navigator.registerProtocolHandler - - api.Navigator.registerProtocolHandler.scheme_parameter_bitcoin - - api.Navigator.registerProtocolHandler.scheme_parameter_ftp - - api.Navigator.registerProtocolHandler.scheme_parameter_ftps - - api.Navigator.registerProtocolHandler.scheme_parameter_geo - - api.Navigator.registerProtocolHandler.scheme_parameter_im - - api.Navigator.registerProtocolHandler.scheme_parameter_irc - - api.Navigator.registerProtocolHandler.scheme_parameter_ircs - - api.Navigator.registerProtocolHandler.scheme_parameter_magnet - - api.Navigator.registerProtocolHandler.scheme_parameter_mailto - - api.Navigator.registerProtocolHandler.scheme_parameter_matrix - - api.Navigator.registerProtocolHandler.scheme_parameter_mms - - api.Navigator.registerProtocolHandler.scheme_parameter_news - - api.Navigator.registerProtocolHandler.scheme_parameter_nntp - - api.Navigator.registerProtocolHandler.scheme_parameter_openpgp4fpr - - api.Navigator.registerProtocolHandler.scheme_parameter_sftp - - api.Navigator.registerProtocolHandler.scheme_parameter_sip - - api.Navigator.registerProtocolHandler.scheme_parameter_sms - - api.Navigator.registerProtocolHandler.scheme_parameter_smsto - - api.Navigator.registerProtocolHandler.scheme_parameter_ssh - - api.Navigator.registerProtocolHandler.scheme_parameter_tel - - api.Navigator.registerProtocolHandler.scheme_parameter_urn - - api.Navigator.registerProtocolHandler.scheme_parameter_webcal - - api.Navigator.registerProtocolHandler.scheme_parameter_wtai - - api.Navigator.registerProtocolHandler.scheme_parameter_xmpp - - api.Navigator.registerProtocolHandler.secure_context_required - - api.Navigator.unregisterProtocolHandler + core: + - api.Navigator.registerProtocolHandler # former compute_from + - api.Navigator.registerProtocolHandler.scheme_parameter_mailto + - api.Navigator.registerProtocolHandler.scheme_parameter_mms + - api.Navigator.registerProtocolHandler.scheme_parameter_news + - api.Navigator.registerProtocolHandler.scheme_parameter_nntp + - api.Navigator.registerProtocolHandler.scheme_parameter_sms + - api.Navigator.registerProtocolHandler.scheme_parameter_tel + - api.Navigator.registerProtocolHandler.scheme_parameter_urn + - api.Navigator.registerProtocolHandler.scheme_parameter_webcal + modifier: + - api.Navigator.registerProtocolHandler.scheme_parameter_bitcoin + - api.Navigator.registerProtocolHandler.scheme_parameter_ftp + - api.Navigator.registerProtocolHandler.scheme_parameter_ftps + - api.Navigator.registerProtocolHandler.scheme_parameter_geo + - api.Navigator.registerProtocolHandler.scheme_parameter_im + - api.Navigator.registerProtocolHandler.scheme_parameter_irc + - api.Navigator.registerProtocolHandler.scheme_parameter_ircs + - api.Navigator.registerProtocolHandler.scheme_parameter_magnet + - api.Navigator.registerProtocolHandler.scheme_parameter_matrix + - api.Navigator.registerProtocolHandler.scheme_parameter_openpgp4fpr + - api.Navigator.registerProtocolHandler.scheme_parameter_sftp + - api.Navigator.registerProtocolHandler.scheme_parameter_sip + - api.Navigator.registerProtocolHandler.scheme_parameter_smsto + - api.Navigator.registerProtocolHandler.scheme_parameter_ssh + - api.Navigator.registerProtocolHandler.scheme_parameter_wtai + - api.Navigator.registerProtocolHandler.scheme_parameter_xmpp + - api.Navigator.registerProtocolHandler.secure_context_required + - api.Navigator.unregisterProtocolHandler diff --git a/features/reporting.yml b/features/reporting.yml index a5184863b9a..f092d525a0d 100644 --- a/features/reporting.yml +++ b/features/reporting.yml @@ -2,17 +2,15 @@ name: Reporting API description: The `Reporting-Endpoints` HTTP header and `ReportingObserver()` API send selected reports, such as Content Security Policy (CSP) violation reports or crash reports, to a nominated URL or callback function. spec: https://w3c.github.io/reporting/ group: reporting -status: - compute_from: - - api.ReportingObserver.ReportingObserver - - http.headers.Reporting-Endpoints compat_features: - - api.ReportingObserver - - api.ReportingObserver.ReportingObserver - - api.ReportingObserver.ReportingObserver.options_parameter - - api.ReportingObserver.ReportingObserver.options_parameter.types_property - - api.ReportingObserver.disconnect - - api.ReportingObserver.observe - - api.ReportingObserver.takeRecords - - api.ReportingObserver.worker_support - - http.headers.Reporting-Endpoints + core: + - api.ReportingObserver + - api.ReportingObserver.ReportingObserver # former compute_from + - api.ReportingObserver.ReportingObserver.options_parameter + - api.ReportingObserver.ReportingObserver.options_parameter.types_property + - api.ReportingObserver.disconnect + - api.ReportingObserver.observe + - api.ReportingObserver.takeRecords + - http.headers.Reporting-Endpoints # former compute_from + spare: + - api.ReportingObserver.worker_support diff --git a/features/resource-timing.yml b/features/resource-timing.yml index 13669e63d41..b01f06712e4 100644 --- a/features/resource-timing.yml +++ b/features/resource-timing.yml @@ -3,31 +3,32 @@ description: "`PerformanceResourceTiming` entries report when network events hap spec: https://w3c.github.io/resource-timing/ group: performance caniuse: resource-timing -status: - compute_from: api.PerformanceResourceTiming compat_features: - - api.Performance.clearResourceTimings - - api.Performance.resourcetimingbufferfull_event - - api.Performance.setResourceTimingBufferSize - - api.PerformanceResourceTiming - - api.PerformanceResourceTiming.connectEnd - - api.PerformanceResourceTiming.connectStart - - api.PerformanceResourceTiming.domainLookupEnd - - api.PerformanceResourceTiming.domainLookupStart - - api.PerformanceResourceTiming.fetchStart - - api.PerformanceResourceTiming.initiatorType - - api.PerformanceResourceTiming.redirectEnd - - api.PerformanceResourceTiming.redirectStart - - api.PerformanceResourceTiming.requestStart - - api.PerformanceResourceTiming.responseEnd - - api.PerformanceResourceTiming.responseStart - - api.PerformanceResourceTiming.contentType - - api.PerformanceResourceTiming.deliveryType - - api.PerformanceResourceTiming.firstInterimResponseStart - - api.PerformanceResourceTiming.nextHopProtocol - - api.PerformanceResourceTiming.renderBlockingStatus - - api.PerformanceResourceTiming.responseStatus - - api.PerformanceResourceTiming.secureConnectionStart - - api.PerformanceResourceTiming.toJSON - - api.PerformanceResourceTiming.workerStart - - api.PerformanceResourceTiming.worker_support + core: + - api.PerformanceResourceTiming # former compute_from + modifier: + - api.Performance.clearResourceTimings + - api.Performance.resourcetimingbufferfull_event + - api.Performance.setResourceTimingBufferSize + - api.PerformanceResourceTiming.connectEnd + - api.PerformanceResourceTiming.connectStart + - api.PerformanceResourceTiming.domainLookupEnd + - api.PerformanceResourceTiming.domainLookupStart + - api.PerformanceResourceTiming.fetchStart + - api.PerformanceResourceTiming.initiatorType + - api.PerformanceResourceTiming.nextHopProtocol + - api.PerformanceResourceTiming.redirectEnd + - api.PerformanceResourceTiming.redirectStart + - api.PerformanceResourceTiming.requestStart + - api.PerformanceResourceTiming.responseEnd + - api.PerformanceResourceTiming.responseStart + - api.PerformanceResourceTiming.secureConnectionStart + - api.PerformanceResourceTiming.toJSON + - api.PerformanceResourceTiming.workerStart + spare: + - api.PerformanceResourceTiming.contentType + - api.PerformanceResourceTiming.deliveryType + - api.PerformanceResourceTiming.firstInterimResponseStart + - api.PerformanceResourceTiming.renderBlockingStatus + - api.PerformanceResourceTiming.responseStatus + - api.PerformanceResourceTiming.worker_support diff --git a/features/rgb.yml b/features/rgb.yml index 8b9c7781283..45f1c7cf0db 100644 --- a/features/rgb.yml +++ b/features/rgb.yml @@ -2,13 +2,14 @@ name: RGB description: The `rgb()`, `rgba()`, and hexadecimal (as in `#004488ff`) notations pick colors using red, green, blue, and alpha (transparency) channels. spec: https://drafts.csswg.org/css-color-4/#rgb-functions group: color-types -status: - compute_from: css.types.color.rgb.alpha_parameter compat_features: - - css.types.color.rgb - - css.types.color.rgb.alpha_parameter - - css.types.color.rgb.float_values - - css.types.color.rgb.mixed_type_parameters - - css.types.color.rgb.space_separated_parameters - - css.types.color.rgb_hexadecimal_notation - - css.types.color.rgb_hexadecimal_notation.alpha_hexadecimal_notation + core: + - css.types.color.rgb + - css.types.color.rgb.alpha_parameter # former compute_from + - css.types.color.rgb.space_separated_parameters + - css.types.color.rgb_hexadecimal_notation + - css.types.color.rgb_hexadecimal_notation.alpha_hexadecimal_notation + modifier: + - css.types.color.rgb.float_values + spare: + - css.types.color.rgb.mixed_type_parameters diff --git a/features/ruby-position.yml b/features/ruby-position.yml index 77f8b2a4c52..2787f09d4fa 100644 --- a/features/ruby-position.yml +++ b/features/ruby-position.yml @@ -2,13 +2,10 @@ name: ruby-position description: The `ruby-position` CSS property sets the position of a ruby annotation in relation to its base text. Annotations can display over, under, or interleaved with the base text. spec: https://drafts.csswg.org/css-ruby-1/#rubypos group: ruby -status: - compute_from: - - css.properties.ruby-position - - css.properties.ruby-position.over - - css.properties.ruby-position.under compat_features: - - css.properties.ruby-position - - css.properties.ruby-position.inter-character - - css.properties.ruby-position.over - - css.properties.ruby-position.under + core: + - css.properties.ruby-position # former compute_from + - css.properties.ruby-position.over # former compute_from + - css.properties.ruby-position.under # former compute_from + spare: + - css.properties.ruby-position.inter-character diff --git a/features/screen-capture.yml b/features/screen-capture.yml index d6b4cd84620..8a0f7612aa8 100644 --- a/features/screen-capture.yml +++ b/features/screen-capture.yml @@ -1,21 +1,21 @@ name: Screen capture description: The `navigator.mediaDevices.getDisplayMedia()` method asks the user to choose a screen or portion of a screen (such as a window) to capture as a media stream. spec: https://w3c.github.io/mediacapture-screen-share/ -status: - compute_from: api.MediaDevices.getDisplayMedia compat_features: - - api.CaptureController - - api.CaptureController.CaptureController - - api.CaptureController.setFocusBehavior - - api.MediaDevices.getDisplayMedia - - api.MediaDevices.getDisplayMedia.audio_capture_support - - api.MediaDevices.getDisplayMedia.controller_option - - api.MediaDevices.getDisplayMedia.monitorTypeSurfaces_option - - api.MediaDevices.getDisplayMedia.selfBrowserSurface_option - - api.MediaDevices.getDisplayMedia.surfaceSwitching_option - - api.MediaDevices.getDisplayMedia.systemAudio_option - - api.MediaStreamTrack.applyConstraints.displaySurface_constraint - - api.MediaStreamTrack.applyConstraints.logicalSurface_constraint - - api.MediaStreamTrack.applyConstraints.suppressLocalAudioPlayback_constraint - - html.elements.iframe.allow.display-capture - - http.headers.Permissions-Policy.display-capture + core: + - api.MediaDevices.getDisplayMedia # former compute_from + modifier: + - api.CaptureController + - api.CaptureController.CaptureController + - api.CaptureController.setFocusBehavior + - api.MediaDevices.getDisplayMedia.audio_capture_support + - api.MediaDevices.getDisplayMedia.controller_option + - api.MediaDevices.getDisplayMedia.monitorTypeSurfaces_option + - api.MediaDevices.getDisplayMedia.selfBrowserSurface_option + - api.MediaDevices.getDisplayMedia.surfaceSwitching_option + - api.MediaDevices.getDisplayMedia.systemAudio_option + - api.MediaStreamTrack.applyConstraints.displaySurface_constraint + - api.MediaStreamTrack.applyConstraints.logicalSurface_constraint + - api.MediaStreamTrack.applyConstraints.suppressLocalAudioPlayback_constraint + - html.elements.iframe.allow.display-capture + - http.headers.Permissions-Policy.display-capture diff --git a/features/script.yml b/features/script.yml index 0b1f9aba264..27a8d5b6b62 100644 --- a/features/script.yml +++ b/features/script.yml @@ -2,21 +2,21 @@ name: