From 5a694f853dbbd60458d50a9ccf9ee52f40d4ba52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philip=20J=C3=A4genstedt?= Date: Wed, 15 May 2024 17:47:42 +0200 Subject: [PATCH 1/4] Split custom elements into two features Fixes https://github.com/web-platform-dx/web-features/issues/1088. --- features/autonomous-custom-elements.dist.yml | 26 +++++++++++++++++++ features/autonomous-custom-elements.yml | 11 ++++++++ features/custom-elements.dist.yml | 23 ---------------- features/custom-elements.yml | 5 ---- .../customized-built-in-elements.dist.yml | 20 ++++++++++++++ features/customized-built-in-elements.yml | 9 +++++++ 6 files changed, 66 insertions(+), 28 deletions(-) create mode 100644 features/autonomous-custom-elements.dist.yml create mode 100644 features/autonomous-custom-elements.yml delete mode 100644 features/custom-elements.dist.yml delete mode 100644 features/custom-elements.yml create mode 100644 features/customized-built-in-elements.dist.yml create mode 100644 features/customized-built-in-elements.yml diff --git a/features/autonomous-custom-elements.dist.yml b/features/autonomous-custom-elements.dist.yml new file mode 100644 index 00000000000..85e44d89cab --- /dev/null +++ b/features/autonomous-custom-elements.dist.yml @@ -0,0 +1,26 @@ +# Generated from: autonomous-custom-elements.yml +# Do not edit this file by hand. Edit the source file instead! + +name: Autonomous custom elements +description: Autonomous custom elements are HTML elements with behavior that you define. +spec: https://html.spec.whatwg.org/multipage/custom-elements.html#autonomous-custom-element +group: html +status: + baseline: high + baseline_low_date: 2020-01-15 + baseline_high_date: 2022-07-15 + support: + chrome: "54" + chrome_android: "54" + edge: "79" + firefox: "63" + firefox_android: "63" + safari: "10.1" + safari_ios: "10.3" +# Note that https://caniuse.com/custom-elementsv1 covers both autonomous custom +# elements and customized built-in elements, so it is not linked here. +compat_features: + - api.CustomElementRegistry + - api.CustomElementRegistry.define + - api.Window.customElements + - css.selectors.defined diff --git a/features/autonomous-custom-elements.yml b/features/autonomous-custom-elements.yml new file mode 100644 index 00000000000..791b93841db --- /dev/null +++ b/features/autonomous-custom-elements.yml @@ -0,0 +1,11 @@ +name: Autonomous custom elements +description: Autonomous custom elements are HTML elements with behavior that you define. +spec: https://html.spec.whatwg.org/multipage/custom-elements.html#autonomous-custom-element +group: html +# Note that https://caniuse.com/custom-elementsv1 covers both autonomous custom +# elements and customized built-in elements, so it is not linked here. +compat_features: + - api.CustomElementRegistry + - api.CustomElementRegistry.define + - api.Window.customElements + - css.selectors.defined diff --git a/features/custom-elements.dist.yml b/features/custom-elements.dist.yml deleted file mode 100644 index 8830cae853e..00000000000 --- a/features/custom-elements.dist.yml +++ /dev/null @@ -1,23 +0,0 @@ -# Generated from: custom-elements.yml -# Do not edit this file by hand. Edit the source file instead! - -name: Custom elements -description: Custom elements are HTML elements with behavior that you define. -spec: https://html.spec.whatwg.org/multipage/custom-elements.html -group: html -caniuse: custom-elementsv1 -status: - baseline: false - support: - chrome: "73" - chrome_android: "73" - edge: "79" -compat_features: - - api.CustomElementRegistry - - api.CustomElementRegistry.builtin_element_support - - api.CustomElementRegistry.define - - api.Window.customElements - - css.selectors.defined - - css.selectors.host - - css.selectors.host-context - - css.selectors.part diff --git a/features/custom-elements.yml b/features/custom-elements.yml deleted file mode 100644 index 439d6310ec7..00000000000 --- a/features/custom-elements.yml +++ /dev/null @@ -1,5 +0,0 @@ -name: Custom elements -description: Custom elements are HTML elements with behavior that you define. -spec: https://html.spec.whatwg.org/multipage/custom-elements.html -group: html -caniuse: custom-elementsv1 diff --git a/features/customized-built-in-elements.dist.yml b/features/customized-built-in-elements.dist.yml new file mode 100644 index 00000000000..c5d38775edd --- /dev/null +++ b/features/customized-built-in-elements.dist.yml @@ -0,0 +1,20 @@ +# Generated from: customized-built-in-elements.yml +# Do not edit this file by hand. Edit the source file instead! + +name: Customized built-in elements +description: Customized built-in elements are HTML elements with behavior that you define. +spec: https://html.spec.whatwg.org/multipage/custom-elements.html#customized-built-in-element +group: html +status: + baseline: false + support: + chrome: "67" + chrome_android: "67" + edge: "79" + firefox: "63" + firefox_android: "63" +# Note that https://caniuse.com/custom-elementsv1 covers both autonomous custom +# elements and customized built-in elements, so it is not linked here. +compat_features: + - api.CustomElementRegistry.builtin_element_support + - html.global_attributes.is diff --git a/features/customized-built-in-elements.yml b/features/customized-built-in-elements.yml new file mode 100644 index 00000000000..9bc75c57289 --- /dev/null +++ b/features/customized-built-in-elements.yml @@ -0,0 +1,9 @@ +name: Customized built-in elements +description: Customized built-in elements are HTML elements with behavior that you define. +spec: https://html.spec.whatwg.org/multipage/custom-elements.html#customized-built-in-element +group: html +# Note that https://caniuse.com/custom-elementsv1 covers both autonomous custom +# elements and customized built-in elements, so it is not linked here. +compat_features: + - api.CustomElementRegistry.builtin_element_support + - html.global_attributes.is From 313175e3c42aed183a66b155a4b371a2219f4a0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philip=20J=C3=A4genstedt?= Date: Wed, 15 May 2024 21:24:37 +0200 Subject: [PATCH 2/4] Apply suggestions from code review Co-authored-by: Daniel D. Beck --- features/autonomous-custom-elements.yml | 2 +- features/customized-built-in-elements.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/features/autonomous-custom-elements.yml b/features/autonomous-custom-elements.yml index 791b93841db..98c4952fe9a 100644 --- a/features/autonomous-custom-elements.yml +++ b/features/autonomous-custom-elements.yml @@ -1,5 +1,5 @@ name: Autonomous custom elements -description: Autonomous custom elements are HTML elements with behavior that you define. +description: Autonomous custom elements are HTML elements with a hyphenated tag name (like ``) that have behaviors you define. spec: https://html.spec.whatwg.org/multipage/custom-elements.html#autonomous-custom-element group: html # Note that https://caniuse.com/custom-elementsv1 covers both autonomous custom diff --git a/features/customized-built-in-elements.yml b/features/customized-built-in-elements.yml index 9bc75c57289..449ead2291b 100644 --- a/features/customized-built-in-elements.yml +++ b/features/customized-built-in-elements.yml @@ -1,5 +1,5 @@ name: Customized built-in elements -description: Customized built-in elements are HTML elements with behavior that you define. +description: Customized built-in elements are HTML elements that extend built-in elements using the `is` attribute, to add new behaviors that you define. spec: https://html.spec.whatwg.org/multipage/custom-elements.html#customized-built-in-element group: html # Note that https://caniuse.com/custom-elementsv1 covers both autonomous custom From 7e09bddd7dc991b4cec200c9dd8d27e4b4cd9057 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philip=20J=C3=A4genstedt?= Date: Wed, 15 May 2024 21:27:52 +0200 Subject: [PATCH 3/4] Update dist --- features/autonomous-custom-elements.dist.yml | 2 +- features/customized-built-in-elements.dist.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/features/autonomous-custom-elements.dist.yml b/features/autonomous-custom-elements.dist.yml index 85e44d89cab..3281e2acbc4 100644 --- a/features/autonomous-custom-elements.dist.yml +++ b/features/autonomous-custom-elements.dist.yml @@ -2,7 +2,7 @@ # Do not edit this file by hand. Edit the source file instead! name: Autonomous custom elements -description: Autonomous custom elements are HTML elements with behavior that you define. +description: Autonomous custom elements are HTML elements with a hyphenated tag name (like ``) that have behaviors you define. spec: https://html.spec.whatwg.org/multipage/custom-elements.html#autonomous-custom-element group: html status: diff --git a/features/customized-built-in-elements.dist.yml b/features/customized-built-in-elements.dist.yml index c5d38775edd..68761b33d2d 100644 --- a/features/customized-built-in-elements.dist.yml +++ b/features/customized-built-in-elements.dist.yml @@ -2,7 +2,7 @@ # Do not edit this file by hand. Edit the source file instead! name: Customized built-in elements -description: Customized built-in elements are HTML elements with behavior that you define. +description: Customized built-in elements are HTML elements that extend built-in elements using the `is` attribute, to add new behaviors that you define. spec: https://html.spec.whatwg.org/multipage/custom-elements.html#customized-built-in-element group: html status: From fd6762201daf80e776c1bd268e6e19112ea4c7f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philip=20J=C3=A4genstedt?= Date: Wed, 15 May 2024 21:29:29 +0200 Subject: [PATCH 4/4] Add group --- features/autonomous-custom-elements.dist.yml | 2 +- features/autonomous-custom-elements.yml | 2 +- features/customized-built-in-elements.dist.yml | 2 +- features/customized-built-in-elements.yml | 2 +- groups/custom-elements.yml | 3 +++ 5 files changed, 7 insertions(+), 4 deletions(-) create mode 100644 groups/custom-elements.yml diff --git a/features/autonomous-custom-elements.dist.yml b/features/autonomous-custom-elements.dist.yml index 3281e2acbc4..b77bc048dd5 100644 --- a/features/autonomous-custom-elements.dist.yml +++ b/features/autonomous-custom-elements.dist.yml @@ -4,7 +4,7 @@ name: Autonomous custom elements description: Autonomous custom elements are HTML elements with a hyphenated tag name (like ``) that have behaviors you define. spec: https://html.spec.whatwg.org/multipage/custom-elements.html#autonomous-custom-element -group: html +group: custom-elements status: baseline: high baseline_low_date: 2020-01-15 diff --git a/features/autonomous-custom-elements.yml b/features/autonomous-custom-elements.yml index 98c4952fe9a..bb36d6bde84 100644 --- a/features/autonomous-custom-elements.yml +++ b/features/autonomous-custom-elements.yml @@ -1,7 +1,7 @@ name: Autonomous custom elements description: Autonomous custom elements are HTML elements with a hyphenated tag name (like ``) that have behaviors you define. spec: https://html.spec.whatwg.org/multipage/custom-elements.html#autonomous-custom-element -group: html +group: custom-elements # Note that https://caniuse.com/custom-elementsv1 covers both autonomous custom # elements and customized built-in elements, so it is not linked here. compat_features: diff --git a/features/customized-built-in-elements.dist.yml b/features/customized-built-in-elements.dist.yml index 68761b33d2d..ff1618ab289 100644 --- a/features/customized-built-in-elements.dist.yml +++ b/features/customized-built-in-elements.dist.yml @@ -4,7 +4,7 @@ name: Customized built-in elements description: Customized built-in elements are HTML elements that extend built-in elements using the `is` attribute, to add new behaviors that you define. spec: https://html.spec.whatwg.org/multipage/custom-elements.html#customized-built-in-element -group: html +group: custom-elements status: baseline: false support: diff --git a/features/customized-built-in-elements.yml b/features/customized-built-in-elements.yml index 449ead2291b..06eccbc9592 100644 --- a/features/customized-built-in-elements.yml +++ b/features/customized-built-in-elements.yml @@ -1,7 +1,7 @@ name: Customized built-in elements description: Customized built-in elements are HTML elements that extend built-in elements using the `is` attribute, to add new behaviors that you define. spec: https://html.spec.whatwg.org/multipage/custom-elements.html#customized-built-in-element -group: html +group: custom-elements # Note that https://caniuse.com/custom-elementsv1 covers both autonomous custom # elements and customized built-in elements, so it is not linked here. compat_features: diff --git a/groups/custom-elements.yml b/groups/custom-elements.yml new file mode 100644 index 00000000000..5be4b56844b --- /dev/null +++ b/groups/custom-elements.yml @@ -0,0 +1,3 @@ +# https://html.spec.whatwg.org/multipage/custom-elements.html +name: Custom elements +parent: html