@webref/css 7.1.4 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,17 @@ Webref adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html),
7
7
  applied to data. A new major version is released whenever a breaking change is
8
8
  made to the data structure.
9
9
 
10
+ ## v8.0.0 - 2025-10-17
11
+
12
+ ### Breaking change
13
+
14
+ Subsidiary at-rules are now reported at the root level, scoped to their parent at-rule through a `for` property.
15
+
16
+ ### How to upgrade
17
+
18
+ Unless you're processing at-rules and only expecting unscoped ones, upgrade from version 7 should not require any code update. If you need to list only unscoped at-rules, filter out those that have a `for` property.
19
+
20
+
10
21
  ## v7.0.11 - 2025-09-04
11
22
 
12
23
  CSS extracts are now consolidated into a single file.
package/README.md CHANGED
@@ -51,6 +51,7 @@ const ast = definitionSyntax.parse(properties['flex'].syntax);
51
51
  Additional keys may be set depending on the type of the CSS feature. For example:
52
52
 
53
53
  - At-rules have a `descriptors` key that contains the list of descriptors defined for the given at-rule. That list may not be exhaustive. For example, it does not contain descriptors that are only implicitly defined in specs, such as families of properties that some at-rules (e.g, `@position-try`) accept as descriptors.
54
+ - At-rule that are scoped to another at-rules have a `for` key that contains the list of scoping at-rules.
54
55
  - Functions and types that are scoped to a property or other feature have a `for` key that contains the list of scoping features for that feature. A scoping feature may be a property, a function or a type. When the scoping feature is a type, its name in the `for` key is enclosed between `<` and `>`.
55
56
  - Properties have a `styleDeclaration` key that contains the list of IDL attribute names that the property generates. A number of other keys may be set to describe the property's initial value, animation type and other parameters.
56
57
 
package/css.json CHANGED
@@ -6,6 +6,16 @@
6
6
  "descriptors": [],
7
7
  "extended": []
8
8
  },
9
+ {
10
+ "descriptors": [],
11
+ "name": "@annotation",
12
+ "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-annotation",
13
+ "for": [
14
+ "@font-feature-values"
15
+ ],
16
+ "syntax": "@annotation { <declaration-list> }",
17
+ "extended": []
18
+ },
9
19
  {
10
20
  "name": "@apply",
11
21
  "href": "https://drafts.csswg.org/css-mixins-1/#at-ruledef-apply",
@@ -48,6 +58,16 @@
48
58
  "syntax": "@bottom-right-corner { <declaration-list> };",
49
59
  "extended": []
50
60
  },
61
+ {
62
+ "descriptors": [],
63
+ "name": "@character-variant",
64
+ "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-character-variant",
65
+ "for": [
66
+ "@font-feature-values"
67
+ ],
68
+ "syntax": "@character-variant { <declaration-list> }",
69
+ "extended": []
70
+ },
51
71
  {
52
72
  "name": "@charset",
53
73
  "prose": "However, there is no actual at-rule named @charset. When a stylesheet is actually parsed, any occurrences of an @charset rule must be treated as an unrecognized rule, and thus dropped as invalid when the stylesheet is grammar-checked.",
@@ -438,55 +458,6 @@
438
458
  "name": "@font-feature-values",
439
459
  "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values",
440
460
  "descriptors": [
441
- {
442
- "name": "@annotation",
443
- "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-annotation",
444
- "type": "at-rule",
445
- "for": "@font-feature-values",
446
- "syntax": "@annotation { <declaration-list> }"
447
- },
448
- {
449
- "name": "@character-variant",
450
- "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-character-variant",
451
- "type": "at-rule",
452
- "for": "@font-feature-values",
453
- "syntax": "@character-variant { <declaration-list> }"
454
- },
455
- {
456
- "name": "@historical-forms",
457
- "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-historical-forms",
458
- "type": "at-rule",
459
- "for": "@font-feature-values",
460
- "syntax": "@historical-forms { <declaration-list> }"
461
- },
462
- {
463
- "name": "@ornaments",
464
- "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-ornaments",
465
- "type": "at-rule",
466
- "for": "@font-feature-values",
467
- "syntax": "@ornaments { <declaration-list> }"
468
- },
469
- {
470
- "name": "@styleset",
471
- "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-styleset",
472
- "type": "at-rule",
473
- "for": "@font-feature-values",
474
- "syntax": "@styleset { <declaration-list> }"
475
- },
476
- {
477
- "name": "@stylistic",
478
- "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-stylistic",
479
- "type": "at-rule",
480
- "for": "@font-feature-values",
481
- "syntax": "@stylistic { <declaration-list> }"
482
- },
483
- {
484
- "name": "@swash",
485
- "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-swash",
486
- "type": "at-rule",
487
- "for": "@font-feature-values",
488
- "syntax": "@swash { <declaration-list> }"
489
- },
490
461
  {
491
462
  "name": "font-display",
492
463
  "href": "https://drafts.csswg.org/css-fonts-4/#descdef-font-feature-values-font-display",
@@ -543,6 +514,16 @@
543
514
  "syntax": "@function <function-token> <function-parameter>#? ) [ returns <css-type> ]? { <declaration-rule-list> }",
544
515
  "extended": []
545
516
  },
517
+ {
518
+ "descriptors": [],
519
+ "name": "@historical-forms",
520
+ "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-historical-forms",
521
+ "for": [
522
+ "@font-feature-values"
523
+ ],
524
+ "syntax": "@historical-forms { <declaration-list> }",
525
+ "extended": []
526
+ },
546
527
  {
547
528
  "name": "@import",
548
529
  "prose": "The @import rule allows users to import style rules from other style sheets. If an @import rule refers to a valid stylesheet, user agents must treat the contents of the stylesheet as if they were written in place of the @import rule, with two exceptions:",
@@ -892,6 +873,16 @@
892
873
  "syntax": "@namespace <namespace-prefix>? [ <string> | <url> ] ;",
893
874
  "extended": []
894
875
  },
876
+ {
877
+ "descriptors": [],
878
+ "name": "@ornaments",
879
+ "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-ornaments",
880
+ "for": [
881
+ "@font-feature-values"
882
+ ],
883
+ "syntax": "@ornaments { <declaration-list> }",
884
+ "extended": []
885
+ },
895
886
  {
896
887
  "name": "@page",
897
888
  "prose": "Authors can specify various aspects of a page box, such as its dimensions, orientation, and margins, within an @page rule. @page rules are allowed wherever rule-sets are allowed. An @page rule consists of the keyword @page, an optional comma-separated list of page selectors and a block of declarations (said to be in the page context). An @page rule can also contain other at-rules, interleaved between declarations. The current level of this specification only allows margin at-rules inside @page.",
@@ -1006,6 +997,26 @@
1006
997
  "descriptors": [],
1007
998
  "extended": []
1008
999
  },
1000
+ {
1001
+ "descriptors": [],
1002
+ "name": "@styleset",
1003
+ "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-styleset",
1004
+ "for": [
1005
+ "@font-feature-values"
1006
+ ],
1007
+ "syntax": "@styleset { <declaration-list> }",
1008
+ "extended": []
1009
+ },
1010
+ {
1011
+ "descriptors": [],
1012
+ "name": "@stylistic",
1013
+ "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-stylistic",
1014
+ "for": [
1015
+ "@font-feature-values"
1016
+ ],
1017
+ "syntax": "@stylistic { <declaration-list> }",
1018
+ "extended": []
1019
+ },
1009
1020
  {
1010
1021
  "name": "@supports",
1011
1022
  "prose": "The @supports rule is a conditional group rule whose condition tests whether the user agent supports CSS property:value pairs. Authors can use it to write style sheets that use new features when available but degrade gracefully when those features are not supported. These queries are called CSS feature queries or (colloquially) supports queries.",
@@ -1014,6 +1025,24 @@
1014
1025
  "syntax": "@supports <supports-condition> { <rule-list> }",
1015
1026
  "extended": []
1016
1027
  },
1028
+ {
1029
+ "name": "@supports-condition",
1030
+ "prose": "The @supports-condition at-rule is a conditional group rule that allows authors to define and name a supports query for later reuse, creating a named supports condition. This enables complex or frequently-used feature queries to be referenced by name, improving maintainability and readability.",
1031
+ "href": "https://drafts.csswg.org/css-conditional-5/#at-ruledef-supports-condition",
1032
+ "descriptors": [],
1033
+ "syntax": "@supports-condition <supports-condition-name> { <block-contents> }",
1034
+ "extended": []
1035
+ },
1036
+ {
1037
+ "descriptors": [],
1038
+ "name": "@swash",
1039
+ "href": "https://drafts.csswg.org/css-fonts-4/#at-ruledef-font-feature-values-swash",
1040
+ "for": [
1041
+ "@font-feature-values"
1042
+ ],
1043
+ "syntax": "@swash { <declaration-list> }",
1044
+ "extended": []
1045
+ },
1017
1046
  {
1018
1047
  "name": "@top-center",
1019
1048
  "href": "https://drafts.csswg.org/css-page-3/#at-ruledef-top-center",
@@ -18925,10 +18954,16 @@
18925
18954
  "syntax": "not <supports-in-parens> | <supports-in-parens> [ and <supports-in-parens> ]* | <supports-in-parens> [ or <supports-in-parens> ]*",
18926
18955
  "extended": []
18927
18956
  },
18957
+ {
18958
+ "name": "supports-condition-name",
18959
+ "prose": "Where <supports-condition-name> is an <extension-name> that defines the name of the supports query.",
18960
+ "href": "https://drafts.csswg.org/css-conditional-5/#typedef-supports-condition-name",
18961
+ "extended": []
18962
+ },
18928
18963
  {
18929
18964
  "name": "supports-decl",
18930
- "href": "https://drafts.csswg.org/css-conditional-3/#typedef-supports-decl",
18931
- "syntax": "( <declaration> )",
18965
+ "href": "https://drafts.csswg.org/css-conditional-5/#typedef-supports-decl",
18966
+ "syntax": "( [ <declaration> | <supports-condition-name> ] )",
18932
18967
  "extended": []
18933
18968
  },
18934
18969
  {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@webref/css",
3
3
  "description": "CSS definitions of the web platform",
4
- "version": "7.1.4",
4
+ "version": "8.0.0",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/w3c/webref.git"