@markuplint/ml-spec 5.0.0-rc.0 → 5.0.0-rc.2
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/ARCHITECTURE.ja.md +6 -6
- package/ARCHITECTURE.md +6 -6
- package/CHANGELOG.md +20 -0
- package/README.md +1 -1
- package/docs/aria-algorithms.ja.md +14 -10
- package/docs/aria-algorithms.md +14 -10
- package/docs/maintenance.ja.md +28 -0
- package/docs/maintenance.md +28 -0
- package/docs/type-definitions.ja.md +21 -2
- package/docs/type-definitions.md +21 -2
- package/lib/algorithm/aria/accname/aria-steps.js +1 -2
- package/lib/algorithm/aria/get-aria.js +9 -8
- package/lib/algorithm/aria/get-permitted-roles-spec.js +7 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/types/aria.d.ts +27 -60
- package/lib/types/aria.js +1 -0
- package/lib/types/attributes.d.ts +38 -25
- package/lib/types/attributes.js +1 -0
- package/lib/types/index.d.ts +2 -2
- package/lib/types/permitted-structures.d.ts +9 -1
- package/lib/types/permitted-structures.js +1 -0
- package/lib/utils/is-conditional-attribute-type.d.ts +30 -0
- package/lib/utils/is-conditional-attribute-type.js +29 -0
- package/package.json +14 -12
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
|
|
4
4
|
* and run json-schema-to-typescript to regenerate this file.
|
|
5
5
|
*/
|
|
6
|
-
export type AttributeType = (("<'--*'>" | "<'-moz-appearance'>" | "<'-moz-background-clip'>" | "<'-moz-binding'>" | "<'-moz-border-bottom-colors'>" | "<'-moz-border-left-colors'>" | "<'-moz-border-radius-bottomleft'>" | "<'-moz-border-radius-bottomright'>" | "<'-moz-border-radius-topleft'>" | "<'-moz-border-radius-topright'>" | "<'-moz-border-right-colors'>" | "<'-moz-border-top-colors'>" | "<'-moz-context-properties'>" | "<'-moz-control-character-visibility'>" | "<'-moz-float-edge'>" | "<'-moz-force-broken-image-icon'>" | "<'-moz-image-region'>" | "<'-moz-orient'>" | "<'-moz-osx-font-smoothing'>" | "<'-moz-outline-radius'>" | "<'-moz-outline-radius-bottomleft'>" | "<'-moz-outline-radius-bottomright'>" | "<'-moz-outline-radius-topleft'>" | "<'-moz-outline-radius-topright'>" | "<'-moz-stack-sizing'>" | "<'-moz-text-blink'>" | "<'-moz-user-focus'>" | "<'-moz-user-input'>" | "<'-moz-user-modify'>" | "<'-moz-user-select'>" | "<'-moz-window-dragging'>" | "<'-moz-window-shadow'>" | "<'-ms-accelerator'>" | "<'-ms-block-progression'>" | "<'-ms-content-zoom-chaining'>" | "<'-ms-content-zoom-limit'>" | "<'-ms-content-zoom-limit-max'>" | "<'-ms-content-zoom-limit-min'>" | "<'-ms-content-zoom-snap'>" | "<'-ms-content-zoom-snap-points'>" | "<'-ms-content-zoom-snap-type'>" | "<'-ms-content-zooming'>" | "<'-ms-filter'>" | "<'-ms-flex-align'>" | "<'-ms-flex-item-align'>" | "<'-ms-flex-line-pack'>" | "<'-ms-flex-negative'>" | "<'-ms-flex-order'>" | "<'-ms-flex-pack'>" | "<'-ms-flex-positive'>" | "<'-ms-flex-preferred-size'>" | "<'-ms-flow-from'>" | "<'-ms-flow-into'>" | "<'-ms-grid-column-align'>" | "<'-ms-grid-columns'>" | "<'-ms-grid-row-align'>" | "<'-ms-grid-rows'>" | "<'-ms-high-contrast-adjust'>" | "<'-ms-hyphenate-limit-chars'>" | "<'-ms-hyphenate-limit-last'>" | "<'-ms-hyphenate-limit-lines'>" | "<'-ms-hyphenate-limit-zone'>" | "<'-ms-ime-align'>" | "<'-ms-interpolation-mode'>" | "<'-ms-overflow-style'>" | "<'-ms-scroll-chaining'>" | "<'-ms-scroll-limit'>" | "<'-ms-scroll-limit-x-max'>" | "<'-ms-scroll-limit-x-min'>" | "<'-ms-scroll-limit-y-max'>" | "<'-ms-scroll-limit-y-min'>" | "<'-ms-scroll-rails'>" | "<'-ms-scroll-snap-points-x'>" | "<'-ms-scroll-snap-points-y'>" | "<'-ms-scroll-snap-type'>" | "<'-ms-scroll-snap-x'>" | "<'-ms-scroll-snap-y'>" | "<'-ms-scroll-translation'>" | "<'-ms-scrollbar-3dlight-color'>" | "<'-ms-scrollbar-arrow-color'>" | "<'-ms-scrollbar-base-color'>" | "<'-ms-scrollbar-darkshadow-color'>" | "<'-ms-scrollbar-face-color'>" | "<'-ms-scrollbar-highlight-color'>" | "<'-ms-scrollbar-shadow-color'>" | "<'-ms-scrollbar-track-color'>" | "<'-ms-text-autospace'>" | "<'-ms-touch-select'>" | "<'-ms-user-select'>" | "<'-ms-wrap-flow'>" | "<'-ms-wrap-margin'>" | "<'-ms-wrap-through'>" | "<'-webkit-appearance'>" | "<'-webkit-background-clip'>" | "<'-webkit-border-before'>" | "<'-webkit-border-before-color'>" | "<'-webkit-border-before-style'>" | "<'-webkit-border-before-width'>" | "<'-webkit-box-reflect'>" | "<'-webkit-column-break-after'>" | "<'-webkit-column-break-before'>" | "<'-webkit-column-break-inside'>" | "<'-webkit-font-smoothing'>" | "<'-webkit-line-clamp'>" | "<'-webkit-mask'>" | "<'-webkit-mask-attachment'>" | "<'-webkit-mask-box-image'>" | "<'-webkit-mask-clip'>" | "<'-webkit-mask-composite'>" | "<'-webkit-mask-image'>" | "<'-webkit-mask-origin'>" | "<'-webkit-mask-position'>" | "<'-webkit-mask-position-x'>" | "<'-webkit-mask-position-y'>" | "<'-webkit-mask-repeat'>" | "<'-webkit-mask-repeat-x'>" | "<'-webkit-mask-repeat-y'>" | "<'-webkit-mask-size'>" | "<'-webkit-overflow-scrolling'>" | "<'-webkit-print-color-adjust'>" | "<'-webkit-tap-highlight-color'>" | "<'-webkit-text-fill-color'>" | "<'-webkit-text-security'>" | "<'-webkit-text-stroke'>" | "<'-webkit-text-stroke-color'>" | "<'-webkit-text-stroke-width'>" | "<'-webkit-touch-callout'>" | "<'-webkit-user-drag'>" | "<'-webkit-user-modify'>" | "<'-webkit-user-select'>" | "<'accent-color'>" | "<'align-content'>" | "<'align-items'>" | "<'align-self'>" | "<'align-tracks'>" | "<'alignment-baseline'>" | "<'all'>" | "<'anchor-name'>" | "<'anchor-scope'>" | "<'animation'>" | "<'animation-composition'>" | "<'animation-delay'>" | "<'animation-direction'>" | "<'animation-duration'>" | "<'animation-fill-mode'>" | "<'animation-iteration-count'>" | "<'animation-name'>" | "<'animation-play-state'>" | "<'animation-range'>" | "<'animation-range-end'>" | "<'animation-range-start'>" | "<'animation-timeline'>" | "<'animation-timing-function'>" | "<'appearance'>" | "<'aspect-ratio'>" | "<'azimuth'>" | "<'backdrop-filter'>" | "<'backface-visibility'>" | "<'background'>" | "<'background-attachment'>" | "<'background-blend-mode'>" | "<'background-clip'>" | "<'background-color'>" | "<'background-image'>" | "<'background-origin'>" | "<'background-position'>" | "<'background-position-x'>" | "<'background-position-y'>" | "<'background-repeat'>" | "<'background-size'>" | "<'baseline-shift'>" | "<'behavior'>" | "<'block-size'>" | "<'border'>" | "<'border-block'>" | "<'border-block-color'>" | "<'border-block-end'>" | "<'border-block-end-color'>" | "<'border-block-end-style'>" | "<'border-block-end-width'>" | "<'border-block-start'>" | "<'border-block-start-color'>" | "<'border-block-start-style'>" | "<'border-block-start-width'>" | "<'border-block-style'>" | "<'border-block-width'>" | "<'border-bottom'>" | "<'border-bottom-color'>" | "<'border-bottom-left-radius'>" | "<'border-bottom-right-radius'>" | "<'border-bottom-style'>" | "<'border-bottom-width'>" | "<'border-collapse'>" | "<'border-color'>" | "<'border-end-end-radius'>" | "<'border-end-start-radius'>" | "<'border-image'>" | "<'border-image-outset'>" | "<'border-image-repeat'>" | "<'border-image-slice'>" | "<'border-image-source'>" | "<'border-image-width'>" | "<'border-inline'>" | "<'border-inline-color'>" | "<'border-inline-end'>" | "<'border-inline-end-color'>" | "<'border-inline-end-style'>" | "<'border-inline-end-width'>" | "<'border-inline-start'>" | "<'border-inline-start-color'>" | "<'border-inline-start-style'>" | "<'border-inline-start-width'>" | "<'border-inline-style'>" | "<'border-inline-width'>" | "<'border-left'>" | "<'border-left-color'>" | "<'border-left-style'>" | "<'border-left-width'>" | "<'border-radius'>" | "<'border-right'>" | "<'border-right-color'>" | "<'border-right-style'>" | "<'border-right-width'>" | "<'border-spacing'>" | "<'border-start-end-radius'>" | "<'border-start-start-radius'>" | "<'border-style'>" | "<'border-top'>" | "<'border-top-color'>" | "<'border-top-left-radius'>" | "<'border-top-right-radius'>" | "<'border-top-style'>" | "<'border-top-width'>" | "<'border-width'>" | "<'bottom'>" | "<'box-align'>" | "<'box-decoration-break'>" | "<'box-direction'>" | "<'box-flex'>" | "<'box-flex-group'>" | "<'box-lines'>" | "<'box-ordinal-group'>" | "<'box-orient'>" | "<'box-pack'>" | "<'box-shadow'>" | "<'box-sizing'>" | "<'break-after'>" | "<'break-before'>" | "<'break-inside'>" | "<'caption-side'>" | "<'caret'>" | "<'caret-color'>" | "<'caret-shape'>" | "<'clear'>" | "<'clip'>" | "<'clip-path'>" | "<'clip-rule'>" | "<'color'>" | "<'color-interpolation-filters'>" | "<'color-scheme'>" | "<'column-count'>" | "<'column-fill'>" | "<'column-gap'>" | "<'column-rule'>" | "<'column-rule-color'>" | "<'column-rule-style'>" | "<'column-rule-width'>" | "<'column-span'>" | "<'column-width'>" | "<'columns'>" | "<'contain'>" | "<'contain-intrinsic-block-size'>" | "<'contain-intrinsic-height'>" | "<'contain-intrinsic-inline-size'>" | "<'contain-intrinsic-size'>" | "<'contain-intrinsic-width'>" | "<'container'>" | "<'container-name'>" | "<'container-type'>" | "<'content'>" | "<'content-visibility'>" | "<'counter-increment'>" | "<'counter-reset'>" | "<'counter-set'>" | "<'cue'>" | "<'cue-after'>" | "<'cue-before'>" | "<'cursor'>" | "<'cx'>" | "<'cy'>" | "<'d'>" | "<'direction'>" | "<'display'>" | "<'dominant-baseline'>" | "<'empty-cells'>" | "<'field-sizing'>" | "<'fill'>" | "<'fill-opacity'>" | "<'fill-rule'>" | "<'filter'>" | "<'flex'>" | "<'flex-basis'>" | "<'flex-direction'>" | "<'flex-flow'>" | "<'flex-grow'>" | "<'flex-shrink'>" | "<'flex-wrap'>" | "<'float'>" | "<'font'>" | "<'font-family'>" | "<'font-feature-settings'>" | "<'font-kerning'>" | "<'font-language-override'>" | "<'font-optical-sizing'>" | "<'font-palette'>" | "<'font-size'>" | "<'font-size-adjust'>" | "<'font-smooth'>" | "<'font-stretch'>" | "<'font-style'>" | "<'font-synthesis'>" | "<'font-synthesis-position'>" | "<'font-synthesis-small-caps'>" | "<'font-synthesis-style'>" | "<'font-synthesis-weight'>" | "<'font-variant'>" | "<'font-variant-alternates'>" | "<'font-variant-caps'>" | "<'font-variant-east-asian'>" | "<'font-variant-emoji'>" | "<'font-variant-ligatures'>" | "<'font-variant-numeric'>" | "<'font-variant-position'>" | "<'font-variation-settings'>" | "<'font-weight'>" | "<'forced-color-adjust'>" | "<'gap'>" | "<'glyph-orientation-horizontal'>" | "<'glyph-orientation-vertical'>" | "<'grid'>" | "<'grid-area'>" | "<'grid-auto-columns'>" | "<'grid-auto-flow'>" | "<'grid-auto-rows'>" | "<'grid-column'>" | "<'grid-column-end'>" | "<'grid-column-gap'>" | "<'grid-column-start'>" | "<'grid-gap'>" | "<'grid-row'>" | "<'grid-row-end'>" | "<'grid-row-gap'>" | "<'grid-row-start'>" | "<'grid-template'>" | "<'grid-template-areas'>" | "<'grid-template-columns'>" | "<'grid-template-rows'>" | "<'hanging-punctuation'>" | "<'height'>" | "<'hyphenate-character'>" | "<'hyphenate-limit-chars'>" | "<'hyphens'>" | "<'image-orientation'>" | "<'image-rendering'>" | "<'image-resolution'>" | "<'ime-mode'>" | "<'initial-letter'>" | "<'initial-letter-align'>" | "<'inline-size'>" | "<'input-security'>" | "<'inset'>" | "<'inset-block'>" | "<'inset-block-end'>" | "<'inset-block-start'>" | "<'inset-inline'>" | "<'inset-inline-end'>" | "<'inset-inline-start'>" | "<'interpolate-size'>" | "<'isolation'>" | "<'justify-content'>" | "<'justify-items'>" | "<'justify-self'>" | "<'justify-tracks'>" | "<'kerning'>" | "<'left'>" | "<'letter-spacing'>" | "<'line-break'>" | "<'line-clamp'>" | "<'line-height'>" | "<'line-height-step'>" | "<'list-style'>" | "<'list-style-image'>" | "<'list-style-position'>" | "<'list-style-type'>" | "<'margin'>" | "<'margin-block'>" | "<'margin-block-end'>" | "<'margin-block-start'>" | "<'margin-bottom'>" | "<'margin-inline'>" | "<'margin-inline-end'>" | "<'margin-inline-start'>" | "<'margin-left'>" | "<'margin-right'>" | "<'margin-top'>" | "<'margin-trim'>" | "<'marker'>" | "<'marker-end'>" | "<'marker-mid'>" | "<'marker-start'>" | "<'mask'>" | "<'mask-border'>" | "<'mask-border-mode'>" | "<'mask-border-outset'>" | "<'mask-border-repeat'>" | "<'mask-border-slice'>" | "<'mask-border-source'>" | "<'mask-border-width'>" | "<'mask-clip'>" | "<'mask-composite'>" | "<'mask-image'>" | "<'mask-mode'>" | "<'mask-origin'>" | "<'mask-position'>" | "<'mask-repeat'>" | "<'mask-size'>" | "<'mask-type'>" | "<'masonry-auto-flow'>" | "<'math-depth'>" | "<'math-shift'>" | "<'math-style'>" | "<'max-block-size'>" | "<'max-height'>" | "<'max-inline-size'>" | "<'max-lines'>" | "<'max-width'>" | "<'min-block-size'>" | "<'min-height'>" | "<'min-inline-size'>" | "<'min-width'>" | "<'mix-blend-mode'>" | "<'object-fit'>" | "<'object-position'>" | "<'offset'>" | "<'offset-anchor'>" | "<'offset-distance'>" | "<'offset-path'>" | "<'offset-position'>" | "<'offset-rotate'>" | "<'opacity'>" | "<'order'>" | "<'orphans'>" | "<'outline'>" | "<'outline-color'>" | "<'outline-offset'>" | "<'outline-style'>" | "<'outline-width'>" | "<'overflow'>" | "<'overflow-anchor'>" | "<'overflow-block'>" | "<'overflow-clip-box'>" | "<'overflow-clip-margin'>" | "<'overflow-inline'>" | "<'overflow-wrap'>" | "<'overflow-x'>" | "<'overflow-y'>" | "<'overlay'>" | "<'overscroll-behavior'>" | "<'overscroll-behavior-block'>" | "<'overscroll-behavior-inline'>" | "<'overscroll-behavior-x'>" | "<'overscroll-behavior-y'>" | "<'padding'>" | "<'padding-block'>" | "<'padding-block-end'>" | "<'padding-block-start'>" | "<'padding-bottom'>" | "<'padding-inline'>" | "<'padding-inline-end'>" | "<'padding-inline-start'>" | "<'padding-left'>" | "<'padding-right'>" | "<'padding-top'>" | "<'page'>" | "<'page-break-after'>" | "<'page-break-before'>" | "<'page-break-inside'>" | "<'paint-order'>" | "<'pause'>" | "<'pause-after'>" | "<'pause-before'>" | "<'perspective'>" | "<'perspective-origin'>" | "<'place-content'>" | "<'place-items'>" | "<'place-self'>" | "<'pointer-events'>" | "<'position'>" | "<'position-anchor'>" | "<'position-area'>" | "<'position-try'>" | "<'position-try-fallbacks'>" | "<'position-try-order'>" | "<'position-visibility'>" | "<'print-color-adjust'>" | "<'quotes'>" | "<'r'>" | "<'resize'>" | "<'rest'>" | "<'rest-after'>" | "<'rest-before'>" | "<'right'>" | "<'rotate'>" | "<'row-gap'>" | "<'ruby-align'>" | "<'ruby-merge'>" | "<'ruby-position'>" | "<'rx'>" | "<'ry'>" | "<'scale'>" | "<'scroll-behavior'>" | "<'scroll-margin'>" | "<'scroll-margin-block'>" | "<'scroll-margin-block-end'>" | "<'scroll-margin-block-start'>" | "<'scroll-margin-bottom'>" | "<'scroll-margin-inline'>" | "<'scroll-margin-inline-end'>" | "<'scroll-margin-inline-start'>" | "<'scroll-margin-left'>" | "<'scroll-margin-right'>" | "<'scroll-margin-top'>" | "<'scroll-padding'>" | "<'scroll-padding-block'>" | "<'scroll-padding-block-end'>" | "<'scroll-padding-block-start'>" | "<'scroll-padding-bottom'>" | "<'scroll-padding-inline'>" | "<'scroll-padding-inline-end'>" | "<'scroll-padding-inline-start'>" | "<'scroll-padding-left'>" | "<'scroll-padding-right'>" | "<'scroll-padding-top'>" | "<'scroll-snap-align'>" | "<'scroll-snap-coordinate'>" | "<'scroll-snap-destination'>" | "<'scroll-snap-points-x'>" | "<'scroll-snap-points-y'>" | "<'scroll-snap-stop'>" | "<'scroll-snap-type'>" | "<'scroll-snap-type-x'>" | "<'scroll-snap-type-y'>" | "<'scroll-timeline'>" | "<'scroll-timeline-axis'>" | "<'scroll-timeline-name'>" | "<'scrollbar-color'>" | "<'scrollbar-gutter'>" | "<'scrollbar-width'>" | "<'shape-image-threshold'>" | "<'shape-margin'>" | "<'shape-outside'>" | "<'shape-rendering'>" | "<'speak'>" | "<'speak-as'>" | "<'src'>" | "<'stroke'>" | "<'stroke-dasharray'>" | "<'stroke-dashoffset'>" | "<'stroke-linecap'>" | "<'stroke-linejoin'>" | "<'stroke-miterlimit'>" | "<'stroke-opacity'>" | "<'stroke-width'>" | "<'tab-size'>" | "<'table-layout'>" | "<'text-align'>" | "<'text-align-last'>" | "<'text-anchor'>" | "<'text-combine-upright'>" | "<'text-decoration'>" | "<'text-decoration-color'>" | "<'text-decoration-line'>" | "<'text-decoration-skip'>" | "<'text-decoration-skip-ink'>" | "<'text-decoration-style'>" | "<'text-decoration-thickness'>" | "<'text-emphasis'>" | "<'text-emphasis-color'>" | "<'text-emphasis-position'>" | "<'text-emphasis-style'>" | "<'text-indent'>" | "<'text-justify'>" | "<'text-orientation'>" | "<'text-overflow'>" | "<'text-rendering'>" | "<'text-shadow'>" | "<'text-size-adjust'>" | "<'text-spacing-trim'>" | "<'text-transform'>" | "<'text-underline-offset'>" | "<'text-underline-position'>" | "<'text-wrap'>" | "<'text-wrap-mode'>" | "<'text-wrap-style'>" | "<'timeline-scope'>" | "<'top'>" | "<'touch-action'>" | "<'transform'>" | "<'transform-box'>" | "<'transform-origin'>" | "<'transform-style'>" | "<'transition'>" | "<'transition-behavior'>" | "<'transition-delay'>" | "<'transition-duration'>" | "<'transition-property'>" | "<'transition-timing-function'>" | "<'translate'>" | "<'unicode-bidi'>" | "<'unicode-range'>" | "<'user-select'>" | "<'vector-effect'>" | "<'vertical-align'>" | "<'view-timeline'>" | "<'view-timeline-axis'>" | "<'view-timeline-inset'>" | "<'view-timeline-name'>" | "<'view-transition-name'>" | "<'visibility'>" | "<'voice-balance'>" | "<'voice-duration'>" | "<'voice-family'>" | "<'voice-pitch'>" | "<'voice-range'>" | "<'voice-rate'>" | "<'voice-stress'>" | "<'voice-volume'>" | "<'white-space'>" | "<'white-space-collapse'>" | "<'white-space-trim'>" | "<'widows'>" | "<'width'>" | "<'will-change'>" | "<'word-break'>" | "<'word-spacing'>" | "<'word-wrap'>" | "<'writing-mode'>" | "<'x'>" | "<'y'>" | "<'z-index'>" | "<'zoom'>" | '<(-token>' | '<)-token>' | '<-legacy-gradient>' | '<-legacy-linear-gradient-arguments>' | '<-legacy-linear-gradient>' | '<-legacy-radial-gradient-arguments>' | '<-legacy-radial-gradient-shape>' | '<-legacy-radial-gradient-size>' | '<-legacy-radial-gradient>' | '<-legacy-repeating-linear-gradient>' | '<-legacy-repeating-radial-gradient>' | '<-ms-filter-function-legacy>' | '<-ms-filter-function-list>' | '<-ms-filter-function-progid>' | '<-ms-filter-function>' | '<-non-standard-color>' | '<-non-standard-display>' | '<-non-standard-font>' | '<-non-standard-generic-family>' | '<-non-standard-image-rendering>' | '<-non-standard-overflow>' | '<-non-standard-size>' | '<-webkit-gradient()>' | '<-webkit-gradient-color-stop>' | '<-webkit-gradient-point>' | '<-webkit-gradient-radius>' | '<-webkit-gradient-type>' | '<-webkit-mask-box-repeat>' | '<CDC-token>' | '<CDO-token>' | '<[-token>' | '<]-token>' | '<abs()>' | '<absolute-color-base>' | '<absolute-color-function>' | '<absolute-size>' | '<acos()>' | '<age>' | '<alpha-value>' | '<an-plus-b>' | '<anchor()>' | '<anchor-element>' | '<anchor-name>' | '<anchor-side>' | '<anchor-size()>' | '<anchor-size>' | '<angle-percentage>' | '<angle>' | '<angular-color-hint>' | '<angular-color-stop-list>' | '<angular-color-stop>' | '<animateable-feature>' | '<any-value>' | '<asin()>' | '<at-keyword-token>' | '<atan()>' | '<atan2()>' | '<attachment>' | '<attr()>' | '<attr-fallback>' | '<attr-matcher>' | '<attr-modifier>' | '<attr-name>' | '<attribute-selector>' | '<auto-repeat>' | '<auto-track-list>' | '<axis>' | '<bad-string-token>' | '<bad-url-token>' | '<baseline-position>' | '<basic-shape>' | '<bcp-47>' | '<bg-clip>' | '<bg-image>' | '<bg-layer>' | '<bg-position>' | '<bg-size>' | '<blend-mode>' | '<blur()>' | '<bottom>' | '<box>' | '<brightness()>' | '<calc()>' | '<calc-constant>' | '<calc-product>' | '<calc-sum>' | '<calc-value>' | '<cf-final-image>' | '<cf-mixing-image>' | '<circle()>' | '<clamp()>' | '<class-selector>' | '<clip-source>' | '<cmyk-component>' | '<colon-token>' | '<color()>' | '<color-base>' | '<color-function>' | '<color-interpolation-method>' | '<color-mix()>' | '<color-space>' | '<color-stop-angle>' | '<color-stop-length>' | '<color-stop-list>' | '<color-stop>' | '<color>' | '<colorspace-params>' | '<combinator>' | '<comma-token>' | '<common-lig-values>' | '<compat-auto>' | '<complex-real-selector-list>' | '<complex-real-selector>' | '<complex-selector-list>' | '<complex-selector-unit>' | '<complex-selector>' | '<composite-style>' | '<compositing-operator>' | '<compound-selector-list>' | '<compound-selector>' | '<conic-gradient()>' | '<container-condition>' | '<container-name>' | '<content-distribution>' | '<content-list>' | '<content-position>' | '<content-replacement>' | '<contextual-alt-values>' | '<contrast()>' | '<coord-box>' | '<cos()>' | '<counter()>' | '<counter-name>' | '<counter-style-name>' | '<counter-style>' | '<counter>' | '<counters()>' | '<cross-fade()>' | '<cubic-bezier-timing-function>' | '<custom-color-space>' | '<custom-ident>' | '<custom-property-name>' | '<dashed-ident>' | '<decibel>' | '<declaration-list>' | '<declaration-value>' | '<declaration>' | '<delim-token>' | '<deprecated-system-color>' | '<device-cmyk()>' | '<dimension-token>' | '<dimension>' | '<discretionary-lig-values>' | '<display-box>' | '<display-inside>' | '<display-internal>' | '<display-legacy>' | '<display-listitem>' | '<display-outside>' | '<drop-shadow()>' | '<easing-function>' | '<east-asian-variant-values>' | '<east-asian-width-values>' | '<element()>' | '<ellipse()>' | '<ending-shape>' | '<env()>' | '<exp()>' | '<explicit-track-list>' | '<family-name>' | '<feature-tag-value>' | '<feature-type>' | '<feature-value-block-list>' | '<feature-value-block>' | '<feature-value-declaration-list>' | '<feature-value-declaration>' | '<feature-value-name>' | '<fill-rule>' | '<filter-function-list>' | '<filter-function>' | '<final-bg-layer>' | '<fixed-breadth>' | '<fixed-repeat>' | '<fixed-size>' | '<flex>' | '<font-stretch-absolute>' | '<font-variant-css21>' | '<font-variant-css2>' | '<font-weight-absolute>' | '<font-width-css3>' | '<forgiving-relative-selector-list>' | '<forgiving-selector-list>' | '<frequency-percentage>' | '<frequency>' | '<function-token>' | '<gender>' | '<general-enclosed>' | '<generic-complete>' | '<generic-family>' | '<generic-incomplete>' | '<generic-name>' | '<generic-script-specific>' | '<generic-voice>' | '<geometry-box>' | '<gradient>' | '<grayscale()>' | '<grid-line>' | '<hash-token>' | '<hex-color>' | '<historical-lig-values>' | '<hsl()>' | '<hsla()>' | '<hue-interpolation-method>' | '<hue-rotate()>' | '<hue>' | '<hwb()>' | '<hypot()>' | '<id-selector>' | '<ident-token>' | '<ident>' | '<image()>' | '<image-set()>' | '<image-set-option>' | '<image-src>' | '<image-tags>' | '<image>' | '<inflexible-breadth>' | '<inset()>' | '<inset-area>' | '<integer>' | '<invert()>' | '<keyframe-block-list>' | '<keyframe-block>' | '<keyframe-selector>' | '<keyframes-name>' | '<lab()>' | '<layer()>' | '<layer-name>' | '<lch()>' | '<leader()>' | '<leader-type>' | '<left>' | '<legacy-device-cmyk-syntax>' | '<legacy-pseudo-element-selector>' | '<length-percentage>' | '<length>' | '<light-dark()>' | '<line-name-list>' | '<line-names>' | '<line-style>' | '<line-width>' | '<linear-color-hint>' | '<linear-color-stop>' | '<linear-gradient()>' | '<log()>' | '<mask-layer>' | '<mask-position>' | '<mask-reference>' | '<mask-source>' | '<masking-mode>' | '<matrix()>' | '<matrix3d()>' | '<max()>' | '<media-and>' | '<media-condition-without-or>' | '<media-condition>' | '<media-feature>' | '<media-in-parens>' | '<media-not>' | '<media-or>' | '<media-query-list>' | '<media-query>' | '<media-type>' | '<mf-boolean>' | '<mf-name>' | '<mf-plain>' | '<mf-range>' | '<mf-value>' | '<min()>' | '<minmax()>' | '<mod()>' | '<modern-device-cmyk-syntax>' | '<name-repeat>' | '<named-color>' | '<namespace-prefix>' | '<ns-prefix>' | '<nth>' | '<number-one-or-greater>' | '<number-percentage>' | '<number-token>' | '<number-zero-one>' | '<number>' | '<numeric-figure-values>' | '<numeric-fraction-values>' | '<numeric-spacing-values>' | '<offset-path>' | '<oklab()>' | '<oklch()>' | '<opacity()>' | '<outline-radius>' | '<overflow-position>' | '<page-body>' | '<page-margin-box-type>' | '<page-margin-box>' | '<page-selector-list>' | '<page-selector>' | '<page-size>' | '<paint()>' | '<paint>' | '<palette-identifier>' | '<path()>' | '<percentage-token>' | '<percentage>' | '<perspective()>' | '<polar-color-space>' | '<polygon()>' | '<position-area>' | '<position>' | '<pow()>' | '<predefined-rgb-params>' | '<predefined-rgb>' | '<pseudo-class-selector>' | '<pseudo-compound-selector>' | '<pseudo-element-selector>' | '<pseudo-page>' | '<query-in-parens>' | '<quote>' | '<radial-gradient()>' | '<ratio>' | '<ray()>' | '<ray-size>' | '<rect()>' | '<rectangular-color-space>' | '<relative-real-selector-list>' | '<relative-real-selector>' | '<relative-selector-list>' | '<relative-selector>' | '<relative-size>' | '<rem()>' | '<repeat-style>' | '<repeating-conic-gradient()>' | '<repeating-linear-gradient()>' | '<repeating-radial-gradient()>' | '<resolution>' | '<reversed-counter-name>' | '<rgb()>' | '<rgba()>' | '<right>' | '<rotate()>' | '<rotate3d()>' | '<rotateX()>' | '<rotateY()>' | '<rotateZ()>' | '<round()>' | '<rounding-strategy>' | '<saturate()>' | '<scale()>' | '<scale3d()>' | '<scaleX()>' | '<scaleY()>' | '<scaleZ()>' | '<scope-end>' | '<scope-start>' | '<scroll()>' | '<scroller>' | '<selector-list>' | '<self-position>' | '<semicolon-token>' | '<semitones>' | '<sepia()>' | '<shadow-t>' | '<shadow>' | '<shape-box>' | '<shape-radius>' | '<shape>' | '<side-or-corner>' | '<sign()>' | '<simple-selector-list>' | '<simple-selector>' | '<sin()>' | '<single-animation-composition>' | '<single-animation-direction>' | '<single-animation-fill-mode>' | '<single-animation-iteration-count>' | '<single-animation-play-state>' | '<single-animation-timeline>' | '<single-animation>' | '<single-transition-property>' | '<single-transition>' | '<size-feature>' | '<size>' | '<skew()>' | '<skewX()>' | '<skewY()>' | '<sqrt()>' | '<step-position>' | '<step-timing-function>' | '<string-token>' | '<string>' | '<style-condition>' | '<style-feature>' | '<style-in-parens>' | '<style-query>' | '<subclass-selector>' | '<supports-condition>' | '<supports-decl>' | '<supports-feature>' | '<supports-in-parens>' | '<supports-selector-fn>' | '<svg-length>' | '<svg-writing-mode>' | '<symbol>' | '<system-color>' | '<system-family-name>' | '<tan()>' | '<target-counter()>' | '<target-counters()>' | '<target-text()>' | '<target>' | '<time-percentage>' | '<time>' | '<timeline-range-name>' | '<top>' | '<track-breadth>' | '<track-list>' | '<track-repeat>' | '<track-size>' | '<transform-function>' | '<transform-list>' | '<transition-behavior-value>' | '<translate()>' | '<translate3d()>' | '<translateX()>' | '<translateY()>' | '<translateZ()>' | '<try-size>' | '<try-tactic>' | '<type-or-unit>' | '<type-selector>' | '<urange>' | '<url-modifier>' | '<url-token>' | '<url>' | '<var()>' | '<view()>' | '<viewport-length>' | '<visual-box>' | '<whitespace-token>' | '<wq-name>' | '<x>' | '<xywh()>' | '<xyz-params>' | '<xyz-space>' | '<y>' | '<zero>' | '<{-token>' | '<}-token>') | ("<'color-profile'>" | "<'color-rendering'>" | "<'enable-background'>" | '<animatable-value>' | '<begin-value-list>' | '<class-list>' | '<clock-value>' | '<color-matrix>' | '<css-declaration-list>' | '<dasharray>' | '<end-value-list>' | '<key-points>' | '<key-splines>' | '<key-times>' | '<list-of-lengths>' | '<list-of-numbers>' | '<list-of-percentages>' | '<list-of-svg-feature-string>' | '<list-of-value>' | '<number-optional-number>' | '<origin>' | '<points>' | '<preserve-aspect-ratio>' | '<rotate>' | '<svg-font-size-adjust>' | '<svg-font-size>' | '<svg-path>' | '<system-language>' | '<text-coordinate>' | '<view-box>' | 'AbsoluteURL' | 'Accept' | 'Any' | 'AutoComplete' | 'BCP47' | 'BaseURL' | 'BrowsingContextName' | 'BrowsingContextNameOrKeyword' | 'CustomElementName' | 'DOMID' | 'DateTime' | 'FunctionBody' | 'HTTPSchemaURL' | 'HashName' | 'IconSize' | 'Int' | 'ItemProp' | 'JSON' | 'LinkTypeForAnchorAndAreaElement' | 'LinkTypeForFormElement' | 'LinkTypeForLinkElement' | 'LinkTypeForLinkElementInBody' | 'MIMEType' | 'NavigableTargetName' | 'NavigableTargetNameOrKeyword' | 'NoEmptyAny' | 'Number' | 'OneCodePointChar' | 'OneLineAny' | 'Pattern' | 'SerializedPermissionsPolicy' | 'SourceSizeList' | 'Srcset' | 'TabIndex' | 'URL' | 'Uint' | 'ValidCustomCommand' | 'XMLName' | 'Zero') | 'Boolean') | List | Enum | Number | Directive;
|
|
6
|
+
export type AttributeType = (("<'--*'>" | "<'-moz-appearance'>" | "<'-moz-background-clip'>" | "<'-moz-binding'>" | "<'-moz-border-bottom-colors'>" | "<'-moz-border-left-colors'>" | "<'-moz-border-radius-bottomleft'>" | "<'-moz-border-radius-bottomright'>" | "<'-moz-border-radius-topleft'>" | "<'-moz-border-radius-topright'>" | "<'-moz-border-right-colors'>" | "<'-moz-border-top-colors'>" | "<'-moz-context-properties'>" | "<'-moz-control-character-visibility'>" | "<'-moz-float-edge'>" | "<'-moz-force-broken-image-icon'>" | "<'-moz-orient'>" | "<'-moz-osx-font-smoothing'>" | "<'-moz-outline-radius'>" | "<'-moz-outline-radius-bottomleft'>" | "<'-moz-outline-radius-bottomright'>" | "<'-moz-outline-radius-topleft'>" | "<'-moz-outline-radius-topright'>" | "<'-moz-stack-sizing'>" | "<'-moz-text-blink'>" | "<'-moz-user-focus'>" | "<'-moz-user-input'>" | "<'-moz-user-modify'>" | "<'-moz-user-select'>" | "<'-moz-window-dragging'>" | "<'-moz-window-shadow'>" | "<'-ms-accelerator'>" | "<'-ms-block-progression'>" | "<'-ms-content-zoom-chaining'>" | "<'-ms-content-zoom-limit'>" | "<'-ms-content-zoom-limit-max'>" | "<'-ms-content-zoom-limit-min'>" | "<'-ms-content-zoom-snap'>" | "<'-ms-content-zoom-snap-points'>" | "<'-ms-content-zoom-snap-type'>" | "<'-ms-content-zooming'>" | "<'-ms-filter'>" | "<'-ms-flex-align'>" | "<'-ms-flex-item-align'>" | "<'-ms-flex-line-pack'>" | "<'-ms-flex-negative'>" | "<'-ms-flex-order'>" | "<'-ms-flex-pack'>" | "<'-ms-flex-positive'>" | "<'-ms-flex-preferred-size'>" | "<'-ms-flow-from'>" | "<'-ms-flow-into'>" | "<'-ms-grid-column-align'>" | "<'-ms-grid-columns'>" | "<'-ms-grid-row-align'>" | "<'-ms-grid-rows'>" | "<'-ms-high-contrast-adjust'>" | "<'-ms-hyphenate-limit-chars'>" | "<'-ms-hyphenate-limit-last'>" | "<'-ms-hyphenate-limit-lines'>" | "<'-ms-hyphenate-limit-zone'>" | "<'-ms-ime-align'>" | "<'-ms-interpolation-mode'>" | "<'-ms-overflow-style'>" | "<'-ms-scroll-chaining'>" | "<'-ms-scroll-limit'>" | "<'-ms-scroll-limit-x-max'>" | "<'-ms-scroll-limit-x-min'>" | "<'-ms-scroll-limit-y-max'>" | "<'-ms-scroll-limit-y-min'>" | "<'-ms-scroll-rails'>" | "<'-ms-scroll-snap-points-x'>" | "<'-ms-scroll-snap-points-y'>" | "<'-ms-scroll-snap-type'>" | "<'-ms-scroll-snap-x'>" | "<'-ms-scroll-snap-y'>" | "<'-ms-scroll-translation'>" | "<'-ms-scrollbar-3dlight-color'>" | "<'-ms-scrollbar-arrow-color'>" | "<'-ms-scrollbar-base-color'>" | "<'-ms-scrollbar-darkshadow-color'>" | "<'-ms-scrollbar-face-color'>" | "<'-ms-scrollbar-highlight-color'>" | "<'-ms-scrollbar-shadow-color'>" | "<'-ms-scrollbar-track-color'>" | "<'-ms-text-autospace'>" | "<'-ms-touch-select'>" | "<'-ms-user-select'>" | "<'-ms-wrap-flow'>" | "<'-ms-wrap-margin'>" | "<'-ms-wrap-through'>" | "<'-webkit-appearance'>" | "<'-webkit-background-clip'>" | "<'-webkit-border-before'>" | "<'-webkit-border-before-color'>" | "<'-webkit-border-before-style'>" | "<'-webkit-border-before-width'>" | "<'-webkit-box-reflect'>" | "<'-webkit-column-break-after'>" | "<'-webkit-column-break-before'>" | "<'-webkit-column-break-inside'>" | "<'-webkit-font-smoothing'>" | "<'-webkit-line-clamp'>" | "<'-webkit-mask'>" | "<'-webkit-mask-attachment'>" | "<'-webkit-mask-box-image'>" | "<'-webkit-mask-clip'>" | "<'-webkit-mask-composite'>" | "<'-webkit-mask-image'>" | "<'-webkit-mask-origin'>" | "<'-webkit-mask-position'>" | "<'-webkit-mask-position-x'>" | "<'-webkit-mask-position-y'>" | "<'-webkit-mask-repeat'>" | "<'-webkit-mask-repeat-x'>" | "<'-webkit-mask-repeat-y'>" | "<'-webkit-mask-size'>" | "<'-webkit-overflow-scrolling'>" | "<'-webkit-print-color-adjust'>" | "<'-webkit-tap-highlight-color'>" | "<'-webkit-text-fill-color'>" | "<'-webkit-text-security'>" | "<'-webkit-text-stroke'>" | "<'-webkit-text-stroke-color'>" | "<'-webkit-text-stroke-width'>" | "<'-webkit-touch-callout'>" | "<'-webkit-user-drag'>" | "<'-webkit-user-modify'>" | "<'-webkit-user-select'>" | "<'accent-color'>" | "<'align-content'>" | "<'align-items'>" | "<'align-self'>" | "<'align-tracks'>" | "<'alignment-baseline'>" | "<'all'>" | "<'anchor-name'>" | "<'anchor-scope'>" | "<'animation'>" | "<'animation-composition'>" | "<'animation-delay'>" | "<'animation-direction'>" | "<'animation-duration'>" | "<'animation-fill-mode'>" | "<'animation-iteration-count'>" | "<'animation-name'>" | "<'animation-play-state'>" | "<'animation-range'>" | "<'animation-range-end'>" | "<'animation-range-start'>" | "<'animation-timeline'>" | "<'animation-timing-function'>" | "<'animation-trigger'>" | "<'appearance'>" | "<'aspect-ratio'>" | "<'backdrop-filter'>" | "<'backface-visibility'>" | "<'background'>" | "<'background-attachment'>" | "<'background-blend-mode'>" | "<'background-clip'>" | "<'background-color'>" | "<'background-image'>" | "<'background-origin'>" | "<'background-position'>" | "<'background-position-x'>" | "<'background-position-y'>" | "<'background-repeat'>" | "<'background-size'>" | "<'baseline-shift'>" | "<'baseline-source'>" | "<'behavior'>" | "<'block-size'>" | "<'border'>" | "<'border-block'>" | "<'border-block-color'>" | "<'border-block-end'>" | "<'border-block-end-color'>" | "<'border-block-end-style'>" | "<'border-block-end-width'>" | "<'border-block-start'>" | "<'border-block-start-color'>" | "<'border-block-start-style'>" | "<'border-block-start-width'>" | "<'border-block-style'>" | "<'border-block-width'>" | "<'border-bottom'>" | "<'border-bottom-color'>" | "<'border-bottom-left-radius'>" | "<'border-bottom-right-radius'>" | "<'border-bottom-style'>" | "<'border-bottom-width'>" | "<'border-collapse'>" | "<'border-color'>" | "<'border-end-end-radius'>" | "<'border-end-start-radius'>" | "<'border-image'>" | "<'border-image-outset'>" | "<'border-image-repeat'>" | "<'border-image-slice'>" | "<'border-image-source'>" | "<'border-image-width'>" | "<'border-inline'>" | "<'border-inline-color'>" | "<'border-inline-end'>" | "<'border-inline-end-color'>" | "<'border-inline-end-style'>" | "<'border-inline-end-width'>" | "<'border-inline-start'>" | "<'border-inline-start-color'>" | "<'border-inline-start-style'>" | "<'border-inline-start-width'>" | "<'border-inline-style'>" | "<'border-inline-width'>" | "<'border-left'>" | "<'border-left-color'>" | "<'border-left-style'>" | "<'border-left-width'>" | "<'border-radius'>" | "<'border-right'>" | "<'border-right-color'>" | "<'border-right-style'>" | "<'border-right-width'>" | "<'border-spacing'>" | "<'border-start-end-radius'>" | "<'border-start-start-radius'>" | "<'border-style'>" | "<'border-top'>" | "<'border-top-color'>" | "<'border-top-left-radius'>" | "<'border-top-right-radius'>" | "<'border-top-style'>" | "<'border-top-width'>" | "<'border-width'>" | "<'bottom'>" | "<'box-align'>" | "<'box-decoration-break'>" | "<'box-direction'>" | "<'box-flex'>" | "<'box-flex-group'>" | "<'box-lines'>" | "<'box-ordinal-group'>" | "<'box-orient'>" | "<'box-pack'>" | "<'box-shadow'>" | "<'box-sizing'>" | "<'break-after'>" | "<'break-before'>" | "<'break-inside'>" | "<'caption-side'>" | "<'caret'>" | "<'caret-animation'>" | "<'caret-color'>" | "<'caret-shape'>" | "<'clear'>" | "<'clip'>" | "<'clip-path'>" | "<'clip-rule'>" | "<'color'>" | "<'color-interpolation-filters'>" | "<'color-scheme'>" | "<'column-count'>" | "<'column-fill'>" | "<'column-gap'>" | "<'column-height'>" | "<'column-rule'>" | "<'column-rule-color'>" | "<'column-rule-style'>" | "<'column-rule-width'>" | "<'column-span'>" | "<'column-width'>" | "<'column-wrap'>" | "<'columns'>" | "<'contain'>" | "<'contain-intrinsic-block-size'>" | "<'contain-intrinsic-height'>" | "<'contain-intrinsic-inline-size'>" | "<'contain-intrinsic-size'>" | "<'contain-intrinsic-width'>" | "<'container'>" | "<'container-name'>" | "<'container-type'>" | "<'content'>" | "<'content-visibility'>" | "<'corner-block-end-shape'>" | "<'corner-block-start-shape'>" | "<'corner-bottom-left-shape'>" | "<'corner-bottom-right-shape'>" | "<'corner-bottom-shape'>" | "<'corner-end-end-shape'>" | "<'corner-end-start-shape'>" | "<'corner-inline-end-shape'>" | "<'corner-inline-start-shape'>" | "<'corner-left-shape'>" | "<'corner-right-shape'>" | "<'corner-shape'>" | "<'corner-start-end-shape'>" | "<'corner-start-start-shape'>" | "<'corner-top-left-shape'>" | "<'corner-top-right-shape'>" | "<'corner-top-shape'>" | "<'counter-increment'>" | "<'counter-reset'>" | "<'counter-set'>" | "<'cue'>" | "<'cue-after'>" | "<'cue-before'>" | "<'cursor'>" | "<'cx'>" | "<'cy'>" | "<'d'>" | "<'direction'>" | "<'display'>" | "<'dominant-baseline'>" | "<'dynamic-range-limit'>" | "<'empty-cells'>" | "<'field-sizing'>" | "<'fill'>" | "<'fill-opacity'>" | "<'fill-rule'>" | "<'filter'>" | "<'flex'>" | "<'flex-basis'>" | "<'flex-direction'>" | "<'flex-flow'>" | "<'flex-grow'>" | "<'flex-shrink'>" | "<'flex-wrap'>" | "<'float'>" | "<'flood-color'>" | "<'flood-opacity'>" | "<'font'>" | "<'font-family'>" | "<'font-feature-settings'>" | "<'font-kerning'>" | "<'font-language-override'>" | "<'font-optical-sizing'>" | "<'font-palette'>" | "<'font-size'>" | "<'font-size-adjust'>" | "<'font-smooth'>" | "<'font-stretch'>" | "<'font-style'>" | "<'font-synthesis'>" | "<'font-synthesis-position'>" | "<'font-synthesis-small-caps'>" | "<'font-synthesis-style'>" | "<'font-synthesis-weight'>" | "<'font-variant'>" | "<'font-variant-alternates'>" | "<'font-variant-caps'>" | "<'font-variant-east-asian'>" | "<'font-variant-emoji'>" | "<'font-variant-ligatures'>" | "<'font-variant-numeric'>" | "<'font-variant-position'>" | "<'font-variation-settings'>" | "<'font-weight'>" | "<'font-width'>" | "<'forced-color-adjust'>" | "<'gap'>" | "<'glyph-orientation-horizontal'>" | "<'glyph-orientation-vertical'>" | "<'grid'>" | "<'grid-area'>" | "<'grid-auto-columns'>" | "<'grid-auto-flow'>" | "<'grid-auto-rows'>" | "<'grid-column'>" | "<'grid-column-end'>" | "<'grid-column-gap'>" | "<'grid-column-start'>" | "<'grid-gap'>" | "<'grid-row'>" | "<'grid-row-end'>" | "<'grid-row-gap'>" | "<'grid-row-start'>" | "<'grid-template'>" | "<'grid-template-areas'>" | "<'grid-template-columns'>" | "<'grid-template-rows'>" | "<'hanging-punctuation'>" | "<'height'>" | "<'hyphenate-character'>" | "<'hyphenate-limit-chars'>" | "<'hyphens'>" | "<'image-orientation'>" | "<'image-rendering'>" | "<'image-resolution'>" | "<'ime-mode'>" | "<'initial-letter'>" | "<'initial-letter-align'>" | "<'inline-size'>" | "<'inset'>" | "<'inset-block'>" | "<'inset-block-end'>" | "<'inset-block-start'>" | "<'inset-inline'>" | "<'inset-inline-end'>" | "<'inset-inline-start'>" | "<'interactivity'>" | "<'interest-delay'>" | "<'interest-delay-end'>" | "<'interest-delay-start'>" | "<'interpolate-size'>" | "<'isolation'>" | "<'justify-content'>" | "<'justify-items'>" | "<'justify-self'>" | "<'justify-tracks'>" | "<'kerning'>" | "<'left'>" | "<'letter-spacing'>" | "<'lighting-color'>" | "<'line-break'>" | "<'line-clamp'>" | "<'line-height'>" | "<'line-height-step'>" | "<'list-style'>" | "<'list-style-image'>" | "<'list-style-position'>" | "<'list-style-type'>" | "<'margin'>" | "<'margin-block'>" | "<'margin-block-end'>" | "<'margin-block-start'>" | "<'margin-bottom'>" | "<'margin-inline'>" | "<'margin-inline-end'>" | "<'margin-inline-start'>" | "<'margin-left'>" | "<'margin-right'>" | "<'margin-top'>" | "<'margin-trim'>" | "<'marker'>" | "<'marker-end'>" | "<'marker-mid'>" | "<'marker-start'>" | "<'mask'>" | "<'mask-border'>" | "<'mask-border-mode'>" | "<'mask-border-outset'>" | "<'mask-border-repeat'>" | "<'mask-border-slice'>" | "<'mask-border-source'>" | "<'mask-border-width'>" | "<'mask-clip'>" | "<'mask-composite'>" | "<'mask-image'>" | "<'mask-mode'>" | "<'mask-origin'>" | "<'mask-position'>" | "<'mask-repeat'>" | "<'mask-size'>" | "<'mask-type'>" | "<'masonry-auto-flow'>" | "<'math-depth'>" | "<'math-shift'>" | "<'math-style'>" | "<'max-block-size'>" | "<'max-height'>" | "<'max-inline-size'>" | "<'max-lines'>" | "<'max-width'>" | "<'min-block-size'>" | "<'min-height'>" | "<'min-inline-size'>" | "<'min-width'>" | "<'mix-blend-mode'>" | "<'object-fit'>" | "<'object-position'>" | "<'object-view-box'>" | "<'offset'>" | "<'offset-anchor'>" | "<'offset-distance'>" | "<'offset-path'>" | "<'offset-position'>" | "<'offset-rotate'>" | "<'opacity'>" | "<'order'>" | "<'orphans'>" | "<'outline'>" | "<'outline-color'>" | "<'outline-offset'>" | "<'outline-style'>" | "<'outline-width'>" | "<'overflow'>" | "<'overflow-anchor'>" | "<'overflow-block'>" | "<'overflow-clip-box'>" | "<'overflow-clip-margin'>" | "<'overflow-inline'>" | "<'overflow-wrap'>" | "<'overflow-x'>" | "<'overflow-y'>" | "<'overlay'>" | "<'overscroll-behavior'>" | "<'overscroll-behavior-block'>" | "<'overscroll-behavior-inline'>" | "<'overscroll-behavior-x'>" | "<'overscroll-behavior-y'>" | "<'padding'>" | "<'padding-block'>" | "<'padding-block-end'>" | "<'padding-block-start'>" | "<'padding-bottom'>" | "<'padding-inline'>" | "<'padding-inline-end'>" | "<'padding-inline-start'>" | "<'padding-left'>" | "<'padding-right'>" | "<'padding-top'>" | "<'page'>" | "<'page-break-after'>" | "<'page-break-before'>" | "<'page-break-inside'>" | "<'paint-order'>" | "<'pause'>" | "<'pause-after'>" | "<'pause-before'>" | "<'perspective'>" | "<'perspective-origin'>" | "<'place-content'>" | "<'place-items'>" | "<'place-self'>" | "<'pointer-events'>" | "<'position'>" | "<'position-anchor'>" | "<'position-area'>" | "<'position-try'>" | "<'position-try-fallbacks'>" | "<'position-try-options'>" | "<'position-try-order'>" | "<'position-visibility'>" | "<'print-color-adjust'>" | "<'quotes'>" | "<'r'>" | "<'reading-flow'>" | "<'reading-order'>" | "<'resize'>" | "<'rest'>" | "<'rest-after'>" | "<'rest-before'>" | "<'right'>" | "<'rotate'>" | "<'row-gap'>" | "<'ruby-align'>" | "<'ruby-merge'>" | "<'ruby-overhang'>" | "<'ruby-position'>" | "<'rx'>" | "<'ry'>" | "<'scale'>" | "<'scroll-behavior'>" | "<'scroll-initial-target'>" | "<'scroll-margin'>" | "<'scroll-margin-block'>" | "<'scroll-margin-block-end'>" | "<'scroll-margin-block-start'>" | "<'scroll-margin-bottom'>" | "<'scroll-margin-inline'>" | "<'scroll-margin-inline-end'>" | "<'scroll-margin-inline-start'>" | "<'scroll-margin-left'>" | "<'scroll-margin-right'>" | "<'scroll-margin-top'>" | "<'scroll-marker-group'>" | "<'scroll-padding'>" | "<'scroll-padding-block'>" | "<'scroll-padding-block-end'>" | "<'scroll-padding-block-start'>" | "<'scroll-padding-bottom'>" | "<'scroll-padding-inline'>" | "<'scroll-padding-inline-end'>" | "<'scroll-padding-inline-start'>" | "<'scroll-padding-left'>" | "<'scroll-padding-right'>" | "<'scroll-padding-top'>" | "<'scroll-snap-align'>" | "<'scroll-snap-coordinate'>" | "<'scroll-snap-destination'>" | "<'scroll-snap-points-x'>" | "<'scroll-snap-points-y'>" | "<'scroll-snap-stop'>" | "<'scroll-snap-type'>" | "<'scroll-snap-type-x'>" | "<'scroll-snap-type-y'>" | "<'scroll-target-group'>" | "<'scroll-timeline'>" | "<'scroll-timeline-axis'>" | "<'scroll-timeline-name'>" | "<'scrollbar-color'>" | "<'scrollbar-gutter'>" | "<'scrollbar-width'>" | "<'shape-image-threshold'>" | "<'shape-margin'>" | "<'shape-outside'>" | "<'shape-rendering'>" | "<'speak'>" | "<'speak-as'>" | "<'stop-color'>" | "<'stop-opacity'>" | "<'stroke'>" | "<'stroke-color'>" | "<'stroke-dasharray'>" | "<'stroke-dashoffset'>" | "<'stroke-linecap'>" | "<'stroke-linejoin'>" | "<'stroke-miterlimit'>" | "<'stroke-opacity'>" | "<'stroke-width'>" | "<'tab-size'>" | "<'table-layout'>" | "<'text-align'>" | "<'text-align-last'>" | "<'text-anchor'>" | "<'text-autospace'>" | "<'text-box'>" | "<'text-box-edge'>" | "<'text-box-trim'>" | "<'text-combine-upright'>" | "<'text-decoration'>" | "<'text-decoration-color'>" | "<'text-decoration-inset'>" | "<'text-decoration-line'>" | "<'text-decoration-skip'>" | "<'text-decoration-skip-ink'>" | "<'text-decoration-style'>" | "<'text-decoration-thickness'>" | "<'text-emphasis'>" | "<'text-emphasis-color'>" | "<'text-emphasis-position'>" | "<'text-emphasis-style'>" | "<'text-indent'>" | "<'text-justify'>" | "<'text-orientation'>" | "<'text-overflow'>" | "<'text-rendering'>" | "<'text-shadow'>" | "<'text-size-adjust'>" | "<'text-spacing-trim'>" | "<'text-transform'>" | "<'text-underline-offset'>" | "<'text-underline-position'>" | "<'text-wrap'>" | "<'text-wrap-mode'>" | "<'text-wrap-style'>" | "<'timeline-scope'>" | "<'timeline-trigger'>" | "<'timeline-trigger-exit-range'>" | "<'timeline-trigger-exit-range-end'>" | "<'timeline-trigger-exit-range-start'>" | "<'timeline-trigger-name'>" | "<'timeline-trigger-range'>" | "<'timeline-trigger-range-end'>" | "<'timeline-trigger-range-start'>" | "<'timeline-trigger-source'>" | "<'top'>" | "<'touch-action'>" | "<'transform'>" | "<'transform-box'>" | "<'transform-origin'>" | "<'transform-style'>" | "<'transition'>" | "<'transition-behavior'>" | "<'transition-delay'>" | "<'transition-duration'>" | "<'transition-property'>" | "<'transition-timing-function'>" | "<'translate'>" | "<'trigger-scope'>" | "<'unicode-bidi'>" | "<'user-select'>" | "<'vector-effect'>" | "<'vertical-align'>" | "<'view-timeline'>" | "<'view-timeline-axis'>" | "<'view-timeline-inset'>" | "<'view-timeline-name'>" | "<'view-transition-class'>" | "<'view-transition-name'>" | "<'visibility'>" | "<'voice-balance'>" | "<'voice-duration'>" | "<'voice-family'>" | "<'voice-pitch'>" | "<'voice-range'>" | "<'voice-rate'>" | "<'voice-stress'>" | "<'voice-volume'>" | "<'white-space'>" | "<'white-space-collapse'>" | "<'white-space-trim'>" | "<'widows'>" | "<'width'>" | "<'will-change'>" | "<'word-break'>" | "<'word-spacing'>" | "<'word-wrap'>" | "<'writing-mode'>" | "<'x'>" | "<'y'>" | "<'z-index'>" | "<'zoom'>" | "<(-token>" | "<)-token>" | "<-legacy-gradient>" | "<-legacy-linear-gradient-arguments>" | "<-legacy-linear-gradient>" | "<-legacy-radial-gradient-arguments>" | "<-legacy-radial-gradient-shape>" | "<-legacy-radial-gradient-size>" | "<-legacy-radial-gradient>" | "<-legacy-repeating-linear-gradient>" | "<-legacy-repeating-radial-gradient>" | "<-ms-filter-function-legacy>" | "<-ms-filter-function-list>" | "<-ms-filter-function-progid>" | "<-ms-filter-function>" | "<-non-standard-color>" | "<-non-standard-display>" | "<-non-standard-font>" | "<-non-standard-generic-family>" | "<-non-standard-image-rendering>" | "<-non-standard-overflow>" | "<-non-standard-size>" | "<-webkit-gradient()>" | "<-webkit-gradient-color-stop>" | "<-webkit-gradient-point>" | "<-webkit-gradient-radius>" | "<-webkit-gradient-type>" | "<-webkit-mask-box-repeat>" | "<CDC-token>" | "<CDO-token>" | "<[-token>" | "<]-token>" | "<abs()>" | "<absolute-size>" | "<acos()>" | "<age>" | "<alpha-value>" | "<an+b>" | "<an-plus-b>" | "<anchor()>" | "<anchor-name>" | "<anchor-side>" | "<anchor-size()>" | "<anchor-size>" | "<angle-percentage>" | "<angle>" | "<angular-color-hint>" | "<angular-color-stop-list>" | "<angular-color-stop>" | "<animateable-feature>" | "<animation-action>" | "<any-value>" | "<asin()>" | "<at-keyword-token>" | "<atan()>" | "<atan2()>" | "<attachment>" | "<attr()>" | "<attr-fallback>" | "<attr-matcher>" | "<attr-modifier>" | "<attr-name>" | "<attr-type>" | "<attr-unit>" | "<attribute-selector>" | "<auto-repeat>" | "<auto-track-list>" | "<autospace>" | "<axis>" | "<bad-string-token>" | "<bad-url-token>" | "<baseline-position>" | "<basic-shape-rect>" | "<basic-shape>" | "<bcp-47>" | "<bg-clip>" | "<bg-image>" | "<bg-layer>" | "<bg-position>" | "<bg-size>" | "<blend-mode>" | "<blur()>" | "<bottom>" | "<brightness()>" | "<calc()>" | "<calc-constant>" | "<calc-product>" | "<calc-size()>" | "<calc-size-basis>" | "<calc-sum>" | "<calc-value>" | "<cf-final-image>" | "<cf-mixing-image>" | "<circle()>" | "<clamp()>" | "<class-selector>" | "<clip-source>" | "<cmyk-component>" | "<colon-token>" | "<color()>" | "<color-base>" | "<color-function>" | "<color-interpolation-method>" | "<color-mix()>" | "<color-space>" | "<color-stop-angle>" | "<color-stop-length>" | "<color-stop-list>" | "<color-stop>" | "<color>" | "<colorspace-params>" | "<combinator>" | "<comma-token>" | "<common-lig-values>" | "<compat-auto>" | "<compat-special>" | "<complex-real-selector-list>" | "<complex-real-selector>" | "<complex-selector-list>" | "<complex-selector-unit>" | "<complex-selector>" | "<composite-style>" | "<compositing-operator>" | "<compound-selector-list>" | "<compound-selector>" | "<conic-gradient()>" | "<conic-gradient-syntax>" | "<container-condition>" | "<container-name>" | "<container-query>" | "<content-distribution>" | "<content-list>" | "<content-position>" | "<content-replacement>" | "<contextual-alt-values>" | "<contrast()>" | "<coord-box>" | "<corner-shape-value>" | "<cos()>" | "<counter()>" | "<counter-name>" | "<counter-style-name>" | "<counter-style>" | "<counter>" | "<counters()>" | "<cross-fade()>" | "<cubic-bezier()>" | "<cubic-bezier-easing-function>" | "<cursor-predefined>" | "<custom-color-space>" | "<custom-ident>" | "<custom-params>" | "<custom-property-name>" | "<dasharray>" | "<dashed-ident>" | "<dashndashdigit-ident>" | "<decibel>" | "<declaration-list>" | "<declaration-value>" | "<declaration>" | "<delim-token>" | "<deprecated-system-color>" | "<device-cmyk()>" | "<dimension-token>" | "<dimension>" | "<discretionary-lig-values>" | "<display-box>" | "<display-inside>" | "<display-internal>" | "<display-legacy>" | "<display-listitem>" | "<display-outside>" | "<drop-shadow()>" | "<dynamic-range-limit-mix()>" | "<easing-function>" | "<east-asian-variant-values>" | "<east-asian-width-values>" | "<element()>" | "<ellipse()>" | "<env()>" | "<exp()>" | "<explicit-track-list>" | "<family-name>" | "<feature-tag-value>" | "<feature-type>" | "<feature-value-block-list>" | "<feature-value-block>" | "<feature-value-declaration-list>" | "<feature-value-declaration>" | "<feature-value-name>" | "<filter-function>" | "<filter-value-list>" | "<final-bg-layer>" | "<fit-content()>" | "<fixed-breadth>" | "<fixed-repeat>" | "<fixed-size>" | "<flex>" | "<font-stretch-absolute>" | "<font-variant-css2>" | "<font-weight-absolute>" | "<font-width-css3>" | "<forgiving-relative-selector-list>" | "<forgiving-selector-list>" | "<form-control-identifier>" | "<frequency-percentage>" | "<frequency>" | "<function-token>" | "<gender>" | "<general-enclosed>" | "<generic-complete>" | "<generic-family>" | "<generic-incomplete>" | "<generic-script-specific>" | "<generic-voice>" | "<geometry-box>" | "<gradient>" | "<grayscale()>" | "<grid-line>" | "<hash-token>" | "<hex-color>" | "<historical-lig-values>" | "<hsl()>" | "<hsla()>" | "<hue-interpolation-method>" | "<hue-rotate()>" | "<hue>" | "<hwb()>" | "<hypot()>" | "<id-selector>" | "<ident-token>" | "<ident>" | "<image()>" | "<image-set()>" | "<image-set-option>" | "<image-src>" | "<image-tags>" | "<image>" | "<inflexible-breadth>" | "<inset()>" | "<inset-area>" | "<integer>" | "<intrinsic-size-keyword>" | "<invert()>" | "<keyframe-block>" | "<keyframe-selector>" | "<keyframes-name>" | "<lab()>" | "<layer()>" | "<layer-name>" | "<lch()>" | "<leader()>" | "<leader-type>" | "<left>" | "<legacy-device-cmyk-syntax>" | "<legacy-pseudo-element-selector>" | "<length-percentage>" | "<length>" | "<light-dark()>" | "<line-name-list>" | "<line-names>" | "<line-style>" | "<line-width>" | "<linear()>" | "<linear-color-hint>" | "<linear-color-stop>" | "<linear-easing-function>" | "<linear-gradient()>" | "<linear-gradient-syntax>" | "<log()>" | "<mask-layer>" | "<mask-position>" | "<mask-reference>" | "<mask-source>" | "<masking-mode>" | "<matrix()>" | "<matrix3d()>" | "<max()>" | "<media-and>" | "<media-condition-without-or>" | "<media-condition>" | "<media-feature>" | "<media-in-parens>" | "<media-not>" | "<media-or>" | "<media-query-list>" | "<media-query>" | "<media-type>" | "<mf-boolean>" | "<mf-name>" | "<mf-plain>" | "<mf-range>" | "<mf-value>" | "<min()>" | "<minmax()>" | "<mod()>" | "<modern-device-cmyk-syntax>" | "<n-dimension>" | "<name-repeat>" | "<named-color>" | "<namespace-prefix>" | "<ndash-dimension>" | "<ndashdigit-dimension>" | "<ndashdigit-ident>" | "<ns-prefix>" | "<number-one-or-greater>" | "<number-percentage>" | "<number-token>" | "<number-zero-one>" | "<number>" | "<numeric-figure-values>" | "<numeric-fraction-values>" | "<numeric-spacing-values>" | "<offset-path>" | "<oklab()>" | "<oklch()>" | "<opacity()>" | "<opacity-value>" | "<outline-line-style>" | "<outline-radius>" | "<overflow-position>" | "<page-body>" | "<page-margin-box-type>" | "<page-margin-box>" | "<page-selector-list>" | "<page-selector>" | "<page-size>" | "<paint()>" | "<paint-box>" | "<paint>" | "<palette-identifier>" | "<palette-mix()>" | "<path()>" | "<percentage-token>" | "<percentage>" | "<perspective()>" | "<polar-color-space>" | "<polygon()>" | "<position-area>" | "<position>" | "<pow()>" | "<predefined-rgb-params>" | "<predefined-rgb>" | "<pseudo-class-selector>" | "<pseudo-compound-selector>" | "<pseudo-element-selector>" | "<pseudo-page>" | "<query-in-parens>" | "<quote>" | "<radial-extent>" | "<radial-gradient()>" | "<radial-gradient-syntax>" | "<radial-shape>" | "<radial-size>" | "<ratio>" | "<ray()>" | "<ray-size>" | "<rect()>" | "<rectangular-color-space>" | "<relative-real-selector-list>" | "<relative-real-selector>" | "<relative-selector-list>" | "<relative-selector>" | "<relative-size>" | "<rem()>" | "<repeat-style>" | "<repeating-conic-gradient()>" | "<repeating-linear-gradient()>" | "<repeating-radial-gradient()>" | "<resolution>" | "<reversed-counter-name>" | "<rgb()>" | "<rgba()>" | "<right>" | "<rotate()>" | "<rotate3d()>" | "<rotateX()>" | "<rotateY()>" | "<rotateZ()>" | "<round()>" | "<rounding-strategy>" | "<saturate()>" | "<scale()>" | "<scale3d()>" | "<scaleX()>" | "<scaleY()>" | "<scaleZ()>" | "<scope-end>" | "<scope-start>" | "<scroll()>" | "<scroll-state-feature>" | "<scroll-state-in-parens>" | "<scroll-state-query>" | "<scroller>" | "<selector-list>" | "<self-position>" | "<semicolon-token>" | "<semitones>" | "<sepia()>" | "<shadow-t>" | "<shadow>" | "<shape-box>" | "<shape>" | "<side-or-corner>" | "<sign()>" | "<signed-integer>" | "<signless-integer>" | "<simple-selector-list>" | "<simple-selector>" | "<sin()>" | "<single-animation-composition>" | "<single-animation-direction>" | "<single-animation-fill-mode>" | "<single-animation-iteration-count>" | "<single-animation-play-state>" | "<single-animation-timeline>" | "<single-animation>" | "<single-transition-property>" | "<single-transition>" | "<size-feature>" | "<size>" | "<skew()>" | "<skewX()>" | "<skewY()>" | "<sqrt()>" | "<step-easing-function>" | "<step-position>" | "<steps()>" | "<string-token>" | "<string>" | "<style-condition>" | "<style-feature>" | "<style-in-parens>" | "<style-query>" | "<subclass-selector>" | "<superellipse()>" | "<supports-condition>" | "<supports-decl>" | "<supports-feature>" | "<supports-in-parens>" | "<supports-selector-fn>" | "<svg-length>" | "<svg-writing-mode>" | "<symbol>" | "<symbols()>" | "<symbols-type>" | "<syntax-combinator>" | "<syntax-component>" | "<syntax-multiplier>" | "<syntax-single-component>" | "<syntax-string>" | "<syntax-type-name>" | "<syntax>" | "<system-color>" | "<system-family-name>" | "<tan()>" | "<target-counter()>" | "<target-counters()>" | "<target-text()>" | "<target>" | "<text-edge>" | "<time-percentage>" | "<time>" | "<timeline-range-name>" | "<top>" | "<track-breadth>" | "<track-list>" | "<track-repeat>" | "<track-size>" | "<transform-function>" | "<transform-list>" | "<transition-behavior-value>" | "<translate()>" | "<translate3d()>" | "<translateX()>" | "<translateY()>" | "<translateZ()>" | "<try-size>" | "<try-tactic>" | "<type-or-unit>" | "<type-selector>" | "<urange>" | "<url-modifier>" | "<url-token>" | "<url>" | "<var()>" | "<view()>" | "<viewport-length>" | "<visual-box>" | "<whitespace-token>" | "<wq-name>" | "<x>" | "<xywh()>" | "<xyz-params>" | "<xyz-space>" | "<xyz>" | "<y>" | "<zero>" | "<{-token>" | "<}-token>") | ("<'color-profile'>" | "<'color-rendering'>" | "<'enable-background'>" | "<animatable-value>" | "<begin-value-list>" | "<class-list>" | "<clock-value>" | "<color-matrix>" | "<css-declaration-list>" | "<dasharray>" | "<end-value-list>" | "<key-points>" | "<key-splines>" | "<key-times>" | "<list-of-lengths>" | "<list-of-numbers>" | "<list-of-percentages>" | "<list-of-svg-feature-string>" | "<list-of-value>" | "<number-optional-number>" | "<origin>" | "<points>" | "<preserve-aspect-ratio>" | "<rotate>" | "<svg-font-size-adjust>" | "<svg-font-size>" | "<svg-path>" | "<system-language>" | "<text-coordinate>" | "<view-box>" | "AbsoluteURL" | "Accept" | "Any" | "AutoComplete" | "BCP47" | "BaseURL" | "BrowsingContextName" | "BrowsingContextNameOrKeyword" | "CustomElementName" | "DOMID" | "DateString" | "DateTime" | "Email" | "FunctionBody" | "HTTPSchemaURL" | "HashName" | "IconSize" | "Int" | "ItemProp" | "JSON" | "LinkTypeForAnchorAndAreaElement" | "LinkTypeForFormElement" | "LinkTypeForLinkElement" | "LinkTypeForLinkElementInBody" | "LocalDateTimeString" | "MIMEType" | "MonthString" | "NavigableTargetName" | "NavigableTargetNameOrKeyword" | "NoEmptyAny" | "Number" | "OneCodePointChar" | "OneLineAny" | "Pattern" | "SRIHash" | "SerializedPermissionsPolicy" | "SimpleColor" | "SourceSizeList" | "Srcset" | "TabIndex" | "TimeString" | "URL" | "Uint" | "ValidCustomCommand" | "WeekString" | "XMLName" | "Zero") | "Boolean") | List | Enum | Number | Directive | Pattern;
|
|
7
7
|
export type AttributeCondition = string | [string, string, ...string[]];
|
|
8
8
|
export interface AttributesSchema {
|
|
9
9
|
tag: string;
|
|
@@ -11,73 +11,73 @@ export interface AttributesSchema {
|
|
|
11
11
|
attributes: Attributes;
|
|
12
12
|
}
|
|
13
13
|
export interface GlobalAttributes {
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
"#HTMLGlobalAttrs"?: boolean;
|
|
15
|
+
"#GlobalEventAttrs"?: boolean | ("onabort" | "onauxclick" | "onbeforeinput" | "onbeforematch" | "onbeforetoggle" | "onblur" | "oncancel" | "oncanplay" | "oncanplaythrough" | "onchange" | "onclick" | "onclose" | "oncommand" | "oncompositionend" | "oncompositionstart" | "oncompositionupdate" | "oncontextlost" | "oncontextmenu" | "oncontextrestored" | "oncopy" | "oncuechange" | "oncut" | "ondblclick" | "ondrag" | "ondragend" | "ondragenter" | "ondragleave" | "ondragover" | "ondragstart" | "ondrop" | "ondurationchange" | "onemptied" | "onended" | "onerror" | "onfocus" | "onfocusin" | "onfocusout" | "onformdata" | "oninput" | "oninvalid" | "onkeydown" | "onkeypress" | "onkeyup" | "onload" | "onloadeddata" | "onloadedmetadata" | "onloadstart" | "onmousedown" | "onmouseenter" | "onmouseleave" | "onmousemove" | "onmouseout" | "onmouseover" | "onmouseup" | "onpaste" | "onpause" | "onplay" | "onplaying" | "onprogress" | "onratechange" | "onreset" | "onresize" | "onscroll" | "onscrollend" | "onsecuritypolicyviolation" | "onseeked" | "onseeking" | "onselect" | "onslotchange" | "onstalled" | "onsubmit" | "onsuspend" | "ontimeupdate" | "ontoggle" | "onunload" | "onvolumechange" | "onwaiting" | "onwebkitanimationend" | "onwebkitanimationiteration" | "onwebkitanimationstart" | "onwebkittransitionend" | "onwheel" | "onanimationstart" | "onanimationiteration" | "onanimationend" | "onanimationcancel" | "ontransitionrun" | "ontransitionstart" | "ontransitionend" | "ontransitioncancel")[];
|
|
16
16
|
/**
|
|
17
17
|
* @minItems 0
|
|
18
18
|
*/
|
|
19
|
-
|
|
19
|
+
"#HTMLLinkAndFetchingAttrs"?: ("crossorigin" | "download" | "href" | "hreflang" | "integrity" | "loading" | "media" | "ping" | "referrerpolicy" | "rel" | "target" | "type" | "fetchpriority")[];
|
|
20
20
|
/**
|
|
21
21
|
* @minItems 0
|
|
22
22
|
*/
|
|
23
|
-
|
|
23
|
+
"#HTMLEmbededAndMediaContentAttrs"?: ("autoplay" | "controls" | "height" | "loop" | "muted" | "preload" | "sizes" | "src" | "srcset" | "width")[];
|
|
24
24
|
/**
|
|
25
25
|
* @minItems 0
|
|
26
26
|
*/
|
|
27
|
-
|
|
27
|
+
"#HTMLFormControlElementAttrs"?: ("autocomplete" | "dirname" | "disabled" | "form" | "formaction" | "formenctype" | "formmethod" | "formnovalidate" | "formtarget" | "maxlength" | "minlength" | "name" | "readonly" | "required")[];
|
|
28
28
|
/**
|
|
29
29
|
* @minItems 0
|
|
30
30
|
*/
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
"#HTMLTableCellElementAttrs"?: ("colspan" | "headers" | "rowspan")[];
|
|
32
|
+
"#ARIAAttrs"?: boolean;
|
|
33
33
|
/**
|
|
34
34
|
* @minItems 0
|
|
35
35
|
*/
|
|
36
|
-
|
|
36
|
+
"#SVGAnimationAdditionAttrs"?: ("additive" | "accumulate")[];
|
|
37
37
|
/**
|
|
38
38
|
* @minItems 0
|
|
39
39
|
*/
|
|
40
|
-
|
|
40
|
+
"#SVGAnimationAttributeTargetAttrs"?: ("attributeName" | "attributeType")[];
|
|
41
41
|
/**
|
|
42
42
|
* @minItems 0
|
|
43
43
|
*/
|
|
44
|
-
|
|
44
|
+
"#SVGAnimationEventAttrs"?: ("onbegin" | "onend" | "onrepeat")[];
|
|
45
45
|
/**
|
|
46
46
|
* @minItems 0
|
|
47
47
|
*/
|
|
48
|
-
|
|
48
|
+
"#SVGAnimationTargetElementAttrs"?: ("href" | "xlink:href")[];
|
|
49
49
|
/**
|
|
50
50
|
* @minItems 0
|
|
51
51
|
*/
|
|
52
|
-
|
|
52
|
+
"#SVGAnimationTimingAttrs"?: ("begin" | "dur" | "end" | "min" | "max" | "restart" | "repeatCount" | "repeatDur" | "fill")[];
|
|
53
53
|
/**
|
|
54
54
|
* @minItems 0
|
|
55
55
|
*/
|
|
56
|
-
|
|
56
|
+
"#SVGAnimationValueAttrs"?: ("calcMode" | "values" | "keyTimes" | "keySplines" | "from" | "to" | "by" | "accelerate" | "decelerate" | "autoReverse" | "speed")[];
|
|
57
57
|
/**
|
|
58
58
|
* @minItems 0
|
|
59
59
|
*/
|
|
60
|
-
|
|
60
|
+
"#SVGConditionalProcessingAttrs"?: ("requiredExtensions" | "systemLanguage" | "requiredFeatures")[];
|
|
61
61
|
/**
|
|
62
62
|
* @minItems 0
|
|
63
63
|
*/
|
|
64
|
-
|
|
64
|
+
"#SVGCoreAttrs"?: ("id" | "tabindex" | "autofocus" | "lang" | "xml:space" | "class" | "style" | "xmlns" | "xml:lang" | "xml:base")[];
|
|
65
65
|
/**
|
|
66
66
|
* @minItems 0
|
|
67
67
|
*/
|
|
68
|
-
|
|
68
|
+
"#SVGFilterPrimitiveAttrs"?: ("x" | "y" | "width" | "height" | "result" | "in")[];
|
|
69
69
|
/**
|
|
70
70
|
* @minItems 0
|
|
71
71
|
*/
|
|
72
|
-
|
|
72
|
+
"#SVGPresentationAttrs"?: ("cx" | "cy" | "height" | "width" | "x" | "y" | "r" | "rx" | "ry" | "d" | "fill" | "transform" | "patternTransform" | "gradientTransform" | "alignment-baseline" | "baseline-shift" | "clip-path" | "clip-rule" | "color" | "color-interpolation" | "color-interpolation-filters" | "cursor" | "direction" | "display" | "dominant-baseline" | "fill-opacity" | "fill-rule" | "filter" | "flood-color" | "flood-opacity" | "font" | "font-family" | "font-size" | "font-size-adjust" | "font-stretch" | "font-style" | "font-variant" | "font-weight" | "glyph-orientation-horizontal" | "glyph-orientation-vertical" | "image-rendering" | "isolation" | "letter-spacing" | "lighting-color" | "marker" | "marker-end" | "marker-mid" | "marker-start" | "mask" | "mask-type" | "opacity" | "overflow" | "paint-order" | "pointer-events" | "shape-rendering" | "stop-color" | "stop-opacity" | "stroke" | "stroke-dasharray" | "stroke-dashoffset" | "stroke-linecap" | "stroke-linejoin" | "stroke-miterlimit" | "stroke-opacity" | "stroke-width" | "text-anchor" | "text-decoration" | "text-overflow" | "text-rendering" | "transform-origin" | "unicode-bidi" | "vector-effect" | "visibility" | "white-space" | "word-spacing" | "writing-mode" | "clip" | "color-profile" | "color-rendering" | "enable-background" | "kerning")[];
|
|
73
73
|
/**
|
|
74
74
|
* @minItems 0
|
|
75
75
|
*/
|
|
76
|
-
|
|
76
|
+
"#SVGTransferFunctionAttrs"?: ("type" | "tableValues" | "slope" | "intercept" | "amplitude" | "exponent" | "offset")[];
|
|
77
77
|
/**
|
|
78
78
|
* @minItems 0
|
|
79
79
|
*/
|
|
80
|
-
|
|
80
|
+
"#XLinkAttrs"?: ("xlink:href" | "xlink:title" | "xlink:actuate" | "xlink:arcrole" | "xlink:role" | "xlink:show" | "xlink:type")[];
|
|
81
81
|
}
|
|
82
82
|
export interface Attributes {
|
|
83
83
|
[k: string]: AttributeJSON;
|
|
@@ -87,7 +87,7 @@ export interface Attributes {
|
|
|
87
87
|
* via the `patternProperty` ".*".
|
|
88
88
|
*/
|
|
89
89
|
export interface AttributeJSON {
|
|
90
|
-
type?: AttributeType | [AttributeType, ...AttributeType[]];
|
|
90
|
+
type?: AttributeType | [AttributeType, ...AttributeType[]] | [ConditionalAttributeType, ...ConditionalAttributeType[]];
|
|
91
91
|
defaultValue?: string;
|
|
92
92
|
deprecated?: boolean;
|
|
93
93
|
required?: boolean | AttributeCondition;
|
|
@@ -103,17 +103,17 @@ export interface AttributeJSON {
|
|
|
103
103
|
* - [Comma-separated tokens](https://html.spec.whatwg.org/multipage/common-microsyntaxes.html#comma-separated-tokens)
|
|
104
104
|
*/
|
|
105
105
|
export interface List {
|
|
106
|
-
token: ("<'color-profile'>" | "<'color-rendering'>" | "<'enable-background'>" |
|
|
106
|
+
token: ("<'color-profile'>" | "<'color-rendering'>" | "<'enable-background'>" | "<animatable-value>" | "<begin-value-list>" | "<class-list>" | "<clock-value>" | "<color-matrix>" | "<css-declaration-list>" | "<dasharray>" | "<end-value-list>" | "<key-points>" | "<key-splines>" | "<key-times>" | "<list-of-lengths>" | "<list-of-numbers>" | "<list-of-percentages>" | "<list-of-svg-feature-string>" | "<list-of-value>" | "<number-optional-number>" | "<origin>" | "<points>" | "<preserve-aspect-ratio>" | "<rotate>" | "<svg-font-size-adjust>" | "<svg-font-size>" | "<svg-path>" | "<system-language>" | "<text-coordinate>" | "<view-box>" | "AbsoluteURL" | "Accept" | "Any" | "AutoComplete" | "BCP47" | "BaseURL" | "BrowsingContextName" | "BrowsingContextNameOrKeyword" | "CustomElementName" | "DOMID" | "DateString" | "DateTime" | "Email" | "FunctionBody" | "HTTPSchemaURL" | "HashName" | "IconSize" | "Int" | "ItemProp" | "JSON" | "LinkTypeForAnchorAndAreaElement" | "LinkTypeForFormElement" | "LinkTypeForLinkElement" | "LinkTypeForLinkElementInBody" | "LocalDateTimeString" | "MIMEType" | "MonthString" | "NavigableTargetName" | "NavigableTargetNameOrKeyword" | "NoEmptyAny" | "Number" | "OneCodePointChar" | "OneLineAny" | "Pattern" | "SRIHash" | "SerializedPermissionsPolicy" | "SimpleColor" | "SourceSizeList" | "Srcset" | "TabIndex" | "TimeString" | "URL" | "Uint" | "ValidCustomCommand" | "WeekString" | "XMLName" | "Zero") | Enum;
|
|
107
107
|
disallowToSurroundBySpaces?: boolean;
|
|
108
108
|
allowEmpty?: boolean;
|
|
109
109
|
ordered?: boolean;
|
|
110
110
|
unique?: boolean;
|
|
111
111
|
caseInsensitive?: boolean;
|
|
112
|
-
number?: (
|
|
112
|
+
number?: ("zeroOrMore" | "oneOrMore") | {
|
|
113
113
|
min: number;
|
|
114
114
|
max: number;
|
|
115
115
|
};
|
|
116
|
-
separator:
|
|
116
|
+
separator: "space" | "comma";
|
|
117
117
|
}
|
|
118
118
|
/**
|
|
119
119
|
* [Enumerated attributes](https://html.spec.whatwg.org/multipage/common-microsyntaxes.html#enumerated-attribute)
|
|
@@ -135,7 +135,7 @@ export interface Enum {
|
|
|
135
135
|
* [Numbers](https://html.spec.whatwg.org/dev/common-microsyntaxes.html#numbers)
|
|
136
136
|
*/
|
|
137
137
|
export interface Number {
|
|
138
|
-
type:
|
|
138
|
+
type: "float" | "integer";
|
|
139
139
|
gt?: number;
|
|
140
140
|
gte?: number;
|
|
141
141
|
lt?: number;
|
|
@@ -153,3 +153,16 @@ export interface Directive {
|
|
|
153
153
|
token: AttributeType;
|
|
154
154
|
ref?: string;
|
|
155
155
|
}
|
|
156
|
+
/**
|
|
157
|
+
* Validates a value against a regular expression pattern or an exact string match. Use a `/regex/flags` literal form to match a regex, or a plain string for exact equality.
|
|
158
|
+
*/
|
|
159
|
+
export interface Pattern {
|
|
160
|
+
pattern: string;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Declares that an attribute value type depends on a condition (a CSS selector) matched against the owning element. Used when an attribute's valid values differ based on the value of another attribute — for example, `<input value>` is `<'color'>` when `type=color`, or a `URL` when `type=url`. Shipped type-only in v5.0 (#3685); validation logic is deferred to #3598 and #3189.
|
|
164
|
+
*/
|
|
165
|
+
export interface ConditionalAttributeType {
|
|
166
|
+
condition: AttributeCondition;
|
|
167
|
+
type: AttributeType | [AttributeType, ...AttributeType[]];
|
|
168
|
+
}
|
package/lib/types/attributes.js
CHANGED
package/lib/types/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ARIA } from './aria.js';
|
|
2
|
-
import type { AttributeJSON, AttributeType, GlobalAttributes } from './attributes.js';
|
|
2
|
+
import type { AttributeJSON, AttributeType, ConditionalAttributeType, GlobalAttributes } from './attributes.js';
|
|
3
3
|
import type { ContentModel, Category } from './permitted-structures.js';
|
|
4
4
|
import type { ariaVersions } from '../utils/aria-version.js';
|
|
5
5
|
import type { NamespaceURI } from '@markuplint/ml-ast';
|
|
@@ -195,7 +195,7 @@ type ElementCondition = {
|
|
|
195
195
|
*/
|
|
196
196
|
export type Attribute = {
|
|
197
197
|
readonly name: string;
|
|
198
|
-
readonly type: ReadonlyDeep<AttributeType> | readonly ReadonlyDeep<AttributeType>[];
|
|
198
|
+
readonly type: ReadonlyDeep<AttributeType> | readonly ReadonlyDeep<AttributeType>[] | readonly ReadonlyDeep<ConditionalAttributeType>[];
|
|
199
199
|
readonly description?: string;
|
|
200
200
|
readonly caseSensitive?: true;
|
|
201
201
|
readonly experimental?: boolean;
|
|
@@ -6,13 +6,21 @@
|
|
|
6
6
|
export type PermittedContentPattern = PermittedContentRequire | PermittedContentOptional | PermittedContentOneOrMore | PermittedContentZeroOrMore | PermittedContentChoice | PermittedContentTransparent;
|
|
7
7
|
export type Model = ContentType | ContentType[];
|
|
8
8
|
export type ContentType = string | Category;
|
|
9
|
-
export type Category =
|
|
9
|
+
export type Category = "#text" | "#nonEmptyText" | "#phrasing" | "#flow" | "#interactive" | "#heading" | "#sectioning" | "#metadata" | "#embedded" | "#palpable" | "#script-supporting" | "#SVGAnimation" | "#SVGBasicShapes" | "#SVGContainer" | "#SVGDescriptive" | "#SVGFilterPrimitive" | "#SVGFont" | "#SVGGradient" | "#SVGGraphics" | "#SVGGraphicsReferencing" | "#SVGLightSource" | "#SVGNeverRendered" | "#SVGNone" | "#SVGPaintServer" | "#SVGRenderable" | "#SVGShape" | "#SVGStructural" | "#SVGStructurallyExternal" | "#SVGTextContent" | "#SVGTextContentChild" | "#MathMLPresentation" | "#MathMLScript" | "#MathMLTabular";
|
|
10
10
|
export interface ContentModelsSchema {
|
|
11
11
|
__contentModel?: ContentModel;
|
|
12
12
|
}
|
|
13
13
|
export interface ContentModel {
|
|
14
14
|
contents: PermittedContentPattern[] | boolean;
|
|
15
15
|
descendantOf?: string;
|
|
16
|
+
/**
|
|
17
|
+
* Elements that this element must NOT appear as a descendant of. Each entry is a CSS selector matching forbidden ancestor elements.
|
|
18
|
+
*/
|
|
19
|
+
forbiddenAncestors?: string[];
|
|
20
|
+
/**
|
|
21
|
+
* Attributes that must be unique among sibling elements of the same type. If this element has one of these attributes, no other sibling element of the same type may also have it. Example: `["default"]` for `<track>` — only one `<track>` per parent may have `default`.
|
|
22
|
+
*/
|
|
23
|
+
uniqueAttrs?: string[];
|
|
16
24
|
conditional?: {
|
|
17
25
|
condition: string;
|
|
18
26
|
contents: PermittedContentPattern[] | boolean;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { ConditionalAttributeType } from '../types/attributes.js';
|
|
2
|
+
import type { Attribute } from '../types/index.js';
|
|
3
|
+
import type { ReadonlyDeep } from 'type-fest';
|
|
4
|
+
/**
|
|
5
|
+
* Narrows an `Attribute['type']` value to `readonly ConditionalAttributeType[]` (#3685).
|
|
6
|
+
*
|
|
7
|
+
* `Attribute['type']` is the union `AttributeType | readonly AttributeType[] | readonly ConditionalAttributeType[]`.
|
|
8
|
+
* The three variants are mutually exclusive at the spec author level: an attribute
|
|
9
|
+
* either declares a single/tuple of `AttributeType` values, or it declares conditional
|
|
10
|
+
* types that depend on another attribute's value — never a mix.
|
|
11
|
+
*
|
|
12
|
+
* Discrimination: every non-conditional `AttributeType` object variant (`List`, `Enum`,
|
|
13
|
+
* `Number`, `Directive`) lacks a `condition` key, whereas `ConditionalAttributeType`
|
|
14
|
+
* requires it. Checking the first array element is sufficient because the schema
|
|
15
|
+
* forbids mixing the two shapes within a single `type` value.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```ts
|
|
19
|
+
* isConditionalAttributeTypeArray('URL') // false — single AttributeType
|
|
20
|
+
* isConditionalAttributeTypeArray(['URL', 'Any']) // false — AttributeType tuple
|
|
21
|
+
* isConditionalAttributeTypeArray([{ enum: ['on', 'off'] }]) // false — Enum
|
|
22
|
+
* isConditionalAttributeTypeArray([{ condition: "[type='color' i]", type: "<'color'>" }]) // true
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @param type - The `Attribute['type']` value to test; may be a scalar `AttributeType`,
|
|
26
|
+
* an array of `AttributeType`, or an array of `ConditionalAttributeType`
|
|
27
|
+
* @returns `true` if `type` is a non-empty array whose first entry is a
|
|
28
|
+
* `ConditionalAttributeType` (has a `condition` key); `false` otherwise
|
|
29
|
+
*/
|
|
30
|
+
export declare function isConditionalAttributeTypeArray(type: Attribute['type']): type is readonly ReadonlyDeep<ConditionalAttributeType>[];
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Narrows an `Attribute['type']` value to `readonly ConditionalAttributeType[]` (#3685).
|
|
3
|
+
*
|
|
4
|
+
* `Attribute['type']` is the union `AttributeType | readonly AttributeType[] | readonly ConditionalAttributeType[]`.
|
|
5
|
+
* The three variants are mutually exclusive at the spec author level: an attribute
|
|
6
|
+
* either declares a single/tuple of `AttributeType` values, or it declares conditional
|
|
7
|
+
* types that depend on another attribute's value — never a mix.
|
|
8
|
+
*
|
|
9
|
+
* Discrimination: every non-conditional `AttributeType` object variant (`List`, `Enum`,
|
|
10
|
+
* `Number`, `Directive`) lacks a `condition` key, whereas `ConditionalAttributeType`
|
|
11
|
+
* requires it. Checking the first array element is sufficient because the schema
|
|
12
|
+
* forbids mixing the two shapes within a single `type` value.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* isConditionalAttributeTypeArray('URL') // false — single AttributeType
|
|
17
|
+
* isConditionalAttributeTypeArray(['URL', 'Any']) // false — AttributeType tuple
|
|
18
|
+
* isConditionalAttributeTypeArray([{ enum: ['on', 'off'] }]) // false — Enum
|
|
19
|
+
* isConditionalAttributeTypeArray([{ condition: "[type='color' i]", type: "<'color'>" }]) // true
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @param type - The `Attribute['type']` value to test; may be a scalar `AttributeType`,
|
|
23
|
+
* an array of `AttributeType`, or an array of `ConditionalAttributeType`
|
|
24
|
+
* @returns `true` if `type` is a non-empty array whose first entry is a
|
|
25
|
+
* `ConditionalAttributeType` (has a `condition` key); `false` otherwise
|
|
26
|
+
*/
|
|
27
|
+
export function isConditionalAttributeTypeArray(type) {
|
|
28
|
+
return Array.isArray(type) && type.length > 0 && typeof type[0] === 'object' && 'condition' in type[0];
|
|
29
|
+
}
|