aboutsummaryrefslogtreecommitdiffstats
path: root/vanilla/node_modules/mdn-data/css/properties.schema.json
diff options
context:
space:
mode:
authorAdam Mathes <adam@adammathes.com>2026-02-13 21:34:48 -0800
committerAdam Mathes <adam@adammathes.com>2026-02-13 21:34:48 -0800
commit76cb9c2a39d477a64824a985ade40507e3bbade1 (patch)
tree41e997aa9c6f538d3a136af61dae9424db2005a9 /vanilla/node_modules/mdn-data/css/properties.schema.json
parent819a39a21ac992b1393244a4c283bbb125208c69 (diff)
downloadneko-76cb9c2a39d477a64824a985ade40507e3bbade1.tar.gz
neko-76cb9c2a39d477a64824a985ade40507e3bbade1.tar.bz2
neko-76cb9c2a39d477a64824a985ade40507e3bbade1.zip
feat(vanilla): add testing infrastructure and tests (NK-wjnczv)
Diffstat (limited to 'vanilla/node_modules/mdn-data/css/properties.schema.json')
-rw-r--r--vanilla/node_modules/mdn-data/css/properties.schema.json449
1 files changed, 449 insertions, 0 deletions
diff --git a/vanilla/node_modules/mdn-data/css/properties.schema.json b/vanilla/node_modules/mdn-data/css/properties.schema.json
new file mode 100644
index 0000000..d9ca646
--- /dev/null
+++ b/vanilla/node_modules/mdn-data/css/properties.schema.json
@@ -0,0 +1,449 @@
+{
+ "definitions": {
+ "propertyList": {
+ "type": "array",
+ "minItems": 1,
+ "uniqueItems": true,
+ "items": {
+ "type": "string",
+ "property-reference": {
+ "comment": "property-reference is an extension to the JSON schema validator. Here it jumps to the root level of the hierarchy and tests if a value is an existing key there (i.e a defined property). See test/validate-schema.js for implementation details.",
+ "$data": "/"
+ }
+ }
+ },
+ "animationType": {
+ "enum": [
+ "angleBasicShapeOrPath",
+ "angleOrBasicShapeOrPath",
+ "basicShapeOtherwiseNo",
+ "byComputedValueType",
+ "byComputedValueTypeNormalAnimatesAsObliqueZeroDeg",
+ "color",
+ "discrete",
+ "discreteButVisibleForDurationWhenAnimatedHidden",
+ "discreteButVisibleForDurationWhenAnimatedNone",
+ "eachOfShorthandPropertiesExceptUnicodeBiDiAndDirection",
+ "filterList",
+ "fontStretch",
+ "fontWeight",
+ "integer",
+ "length",
+ "lpc",
+ "notAnimatable",
+ "numberOrLength",
+ "number",
+ "position",
+ "rectangle",
+ "repeatableList",
+ "shadowList",
+ "simpleListOfLpc",
+ "simpleListOfLpcDifferenceLpc",
+ "transform",
+ "visibility"
+ ]
+ },
+ "percentages": {
+ "enum": [
+ "blockSizeOfContainingBlock",
+ "dependsOnLayoutModel",
+ "inlineSizeOfContainingBlock",
+ "lengthsAsPercentages",
+ "logicalHeightOfContainingBlock",
+ "logicalWidthOfContainingBlock",
+ "logicalHeightOrWidthOfContainingBlock",
+ "mapToRange0To1",
+ "maxZoomFactor",
+ "minZoomFactor",
+ "no",
+ "referToBorderBox",
+ "referToContainingBlockHeight",
+ "referToDimensionOfBorderBox",
+ "referToDimensionOfContentArea",
+ "referToElementFontSize",
+ "referToFlexContainersInnerMainSize",
+ "referToHeightOfBackgroundPositioningAreaMinusBackgroundImageHeight",
+ "referToLineBoxWidth",
+ "referToLineHeight",
+ "referToParentElementsFontSize",
+ "referToSizeOfBackgroundPositioningAreaMinusBackgroundImageSize",
+ "referToSizeOfBorderImage",
+ "referToSizeOfBoundingBox",
+ "referToSizeOfContainingBlock",
+ "referToSizeOfElement",
+ "referToSizeOfFont",
+ "referToSizeOfMaskBorderImage",
+ "referToSizeOfMaskPaintingArea",
+ "referToSVGViewportHeight",
+ "referToSVGViewportSize",
+ "referToSVGViewportWidth",
+ "referToSVGViewportDiagonal",
+ "referToTotalPathLength",
+ "referToWidthAndHeightOfElement",
+ "referToWidthOfAffectedGlyph",
+ "referToWidthOfBackgroundPositioningAreaMinusBackgroundImageWidth",
+ "referToWidthOfContainingBlock",
+ "referToWidthOrHeightOfBorderImageArea",
+ "referToReferenceBoxWhenSpecifiedOtherwiseBorderBox",
+ "regardingHeightOfGeneratedBoxContainingBlockPercentages0",
+ "regardingHeightOfGeneratedBoxContainingBlockPercentagesNone",
+ "regardingHeightOfGeneratedBoxContainingBlockPercentagesRelativeToContainingBlock",
+ "relativeToBackgroundPositioningArea",
+ "relativeToCorrespondingDimensionOfRelevantScrollport",
+ "relativeToMaskBorderImageArea",
+ "relativeToScrollContainerPaddingBoxAxis",
+ "relativeToTheScrollContainersScrollport",
+ "relativeToTimelineRangeIfSpecifiedOtherwiseEntireTimeline",
+ "relativeToWidthAndHeight"
+ ]
+ },
+ "computed": {
+ "enum": [
+ "absoluteLength",
+ "absoluteLength0ForNone",
+ "absoluteLength0IfColumnRuleStyleNoneOrHidden",
+ "absoluteLengthOr0IfBorderBottomStyleNoneOrHidden",
+ "absoluteLengthOr0IfBorderLeftStyleNoneOrHidden",
+ "absoluteLengthOr0IfBorderRightStyleNoneOrHidden",
+ "absoluteLengthOr0IfBorderTopStyleNoneOrHidden",
+ "absoluteLengthOrAsSpecified",
+ "absoluteLengthOrKeyword",
+ "absoluteLengthOrNone",
+ "absoluteLengthOrNormal",
+ "absoluteLengthOrPercentage",
+ "absoluteLengthOrPercentageNumbersConverted",
+ "absoluteLengthsSpecifiedColorAsSpecified",
+ "absoluteLengthZeroIfBorderStyleNoneOrHidden",
+ "absoluteLengthZeroOrLarger",
+ "absoluteURIOrNone",
+ "angleRoundedToNextQuarter",
+ "asAutoOrColor",
+ "asColorOrAbsoluteURL",
+ "asDefinedForBasicShapeWithAbsoluteURIOtherwiseAsSpecified",
+ "asLength",
+ "asLonghands",
+ "asSpecified",
+ "asSpecifiedAppliesToEachProperty",
+ "asSpecifiedButVisibleOrClipReplacedToAutoOrHiddenIfOtherValueDifferent",
+ "asSpecifiedExceptMatchParent",
+ "asSpecifiedExceptPositionedFloatingAndRootElementsKeywordMaybeDifferent",
+ "asSpecifiedRelativeToAbsoluteLengths",
+ "asSpecifiedURLsAbsolute",
+ "asSpecifiedWithExceptionOfResolution",
+ "asSpecifiedWithLengthsAbsoluteAndNormalComputingToZeroExceptMultiColumn",
+ "asSpecifiedWithLengthValuesComputed",
+ "asSpecifiedWithVarsSubstituted",
+ "autoOnAbsolutelyPositionedElementsValueOfAlignItemsOnParent",
+ "autoOrRectangle",
+ "colorPlusThreeAbsoluteLengths",
+ "computedColor",
+ "consistsOfTwoDimensionKeywords",
+ "consistsOfTwoKeywordsForOriginAndOffsets",
+ "forLengthAbsoluteValueOtherwisePercentage",
+ "autoForTranslucentColorRGBAOtherwiseRGB",
+ "keywordOrNumericalValueBolderLighterTransformedToRealValue",
+ "keywordPlusIntegerIfDigits",
+ "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
+ "listEachItemConsistingOfAbsoluteLengthPercentageAndOrigin",
+ "listEachItemConsistingOfAbsoluteLengthPercentageOrKeyword",
+ "listEachItemConsistingOfNormalLengthPercentageOrNameLengthPercentage",
+ "listEachItemConsistingOfPairsOfAutoOrLengthPercentage",
+ "listEachItemHasTwoKeywordsOnePerDimension",
+ "listEachItemIdentifierOrNoneAuto",
+ "listEachItemTwoKeywordsOriginOffsets",
+ "noneOrImageWithAbsoluteURI",
+ "noneOrOrderedListOfIdentifiers",
+ "normalizedAngle",
+ "normalOnElementsForPseudosNoneAbsoluteURIStringOrAsSpecified",
+ "oneToFourPercentagesOrAbsoluteLengthsPlusFill",
+ "optimumValueOfAbsoluteLengthOrNormal",
+ "percentageAsSpecifiedAbsoluteLengthOrNone",
+ "percentageAsSpecifiedOrAbsoluteLength",
+ "percentageAutoOrAbsoluteLength",
+ "percentageOrAbsoluteLengthPlusKeywords",
+ "sameAsBoxOffsets",
+ "sameAsMaxWidthAndMaxHeight",
+ "sameAsMinWidthAndMinHeight",
+ "sameAsWidthAndHeight",
+ "specifiedIntegerOrAbsoluteLength",
+ "specifiedValueClipped0To1",
+ "specifiedValueNumberClipped0To1",
+ "theComputedLengthAndVisualBox",
+ "theKeywordListStyleImageNoneOrComputedValue",
+ "translucentValuesRGBAOtherwiseRGB",
+ "twoAbsoluteLengthOrPercentages",
+ "twoAbsoluteLengths"
+ ]
+ },
+ "appliesto": {
+ "enum": [
+ "absolutelyPositionedElements",
+ "allElements",
+ "allElementsAcceptingWidthOrHeight",
+ "allElementsAndPseudos",
+ "allElementsAndText",
+ "allElementsButNonReplacedAndTableColumns",
+ "allElementsButNonReplacedAndTableRows",
+ "allElementsCreatingNativeWindows",
+ "allElementsExceptGeneratedContentOrPseudoElements",
+ "allElementsExceptInlineBoxesAndInternalRubyOrTableBoxes",
+ "allElementsExceptInternalTableDisplayTypes",
+ "allElementsExceptNonReplacedInlineElementsTableRowsColumnsRowColumnGroups",
+ "allElementsExceptTableDisplayTypes",
+ "allElementsExceptTableElementsWhenCollapse",
+ "allElementsExceptTableRowColumnGroupsTableRowsColumns",
+ "allElementsExceptTableRowGroupsRowsColumnGroupsAndColumns",
+ "allElementsNoEffectIfDisplayNone",
+ "allElementsSomeValuesNoEffectOnNonInlineElements",
+ "allElementsSVGContainerElements",
+ "allElementsSVGContainerGraphicsAndGraphicsReferencingElements",
+ "allElementsThatCanReferenceImages",
+ "allElementsThatGenerateAPrincipalBox",
+ "allElementsTreeAbidingPseudoElementsPageMarginBoxes",
+ "allElementsUAsNotRequiredWhenCollapse",
+ "anyElementEffectOnProgressAndMeter",
+ "asLonghands",
+ "beforeAndAfterPseudos",
+ "blockContainerElements",
+ "blockContainers",
+ "blockContainersAndMultiColumnContainers",
+ "blockContainersExceptMultiColumnContainers",
+ "blockContainersExceptTableWrappers",
+ "blockContainersFlexContainersGridContainers",
+ "blockContainersFlexContainersGridContainersInlineBoxesTableRowsSVGTextContentElements",
+ "blockContainersMultiColumnContainersFlexContainersGridContainers",
+ "blockElementsInNormalFlow",
+ "blockLevelElements",
+ "blockLevelBoxesAndAbsolutelyPositionedBoxesAndGridItems",
+ "boxElements",
+ "childrenOfBoxElements",
+ "directChildrenOfElementsWithDisplayMozBoxMozInlineBox",
+ "elementsForWhichLayoutContainmentCanApply",
+ "elementsForWhichSizeContainmentCanApply",
+ "elementsThatAcceptInput",
+ "elementsWithDefaultPreferredSize",
+ "elementsWithDisplayBoxOrInlineBox",
+ "elementsWithDisplayMarker",
+ "elementsWithDisplayMozBoxMozInlineBox",
+ "elementsWithOverflowNotVisibleAndReplacedElements",
+ "exclusionElements",
+ "firstLetterPseudoElementsAndInlineLevelFirstChildren",
+ "flexContainers",
+ "flexItemsAndAbsolutelyPositionedFlexContainerChildren",
+ "flexItemsAndInFlowPseudos",
+ "flexItemsGridItemsAbsolutelyPositionedContainerChildren",
+ "flexItemsGridItemsAndAbsolutelyPositionedBoxes",
+ "floats",
+ "gridContainers",
+ "gridContainersWithMasonryLayout",
+ "gridContainersWithMasonryLayoutInTheirBlockAxis",
+ "gridContainersWithMasonryLayoutInTheirInlineAxis",
+ "gridItemsAndBoxesWithinGridContainer",
+ "iframeElements",
+ "images",
+ "inFlowBlockLevelElements",
+ "inFlowChildrenOfBoxElements",
+ "inlineBoxesAndBlockContainers",
+ "inlineLevelAndTableCellElements",
+ "limitedSVGElements",
+ "limitedSVGElementsCircle",
+ "limitedSVGElementsEllipse",
+ "limitedSVGElementsEllipseRect",
+ "limitedSVGElementsFilterPrimitives",
+ "limitedSVGElementsGeometry",
+ "limitedSVGElementsGraphics",
+ "limitedSVGElementsGraphicsAndUse",
+ "limitedSVGElementsPath",
+ "limitedSVGElementsShapes",
+ "limitedSVGElementsShapesAndTextContent",
+ "limitedSVGElementsShapeText",
+ "limitedSVGElementsTextContent",
+ "listItems",
+ "maskElements",
+ "multicolElements",
+ "multiColumnElementsFlexContainersGridContainers",
+ "multilineFlexContainers",
+ "nonReplacedBlockAndInlineBlockElements",
+ "nonReplacedBlockElements",
+ "nonReplacedElements",
+ "nonReplacedInlineElements",
+ "positionedElements",
+ "positionedElementsWithADefaultAnchorElement",
+ "replacedElements",
+ "rubyAnnotationsContainers",
+ "rubyBasesAnnotationsBaseAnnotationContainers",
+ "sameAsMargin",
+ "sameAsWidthAndHeight",
+ "scrollContainers",
+ "scrollingBoxes",
+ "sensitiveTextInputs",
+ "tableCaptionElements",
+ "tableCellElements",
+ "tableElements",
+ "textAndBlockContainers",
+ "textElements",
+ "textFields",
+ "transformableElements",
+ "xulImageElements"
+ ]
+ },
+ "alsoApplyTo": {
+ "type": "array",
+ "minItems": 1,
+ "uniqueItems": true,
+ "items": {
+ "enum": [
+ "::first-letter",
+ "::first-line",
+ "::placeholder"
+ ]
+ }
+ },
+ "order": {
+ "enum": [
+ "canonicalOrder",
+ "lengthOrPercentageBeforeKeywordIfBothPresent",
+ "lengthOrPercentageBeforeKeywords",
+ "oneOrTwoValuesLengthAbsoluteKeywordsPercentages",
+ "orderOfAppearance",
+ "percentagesOrLengthsFollowedByFill",
+ "perGrammar",
+ "uniqueOrder"
+ ]
+ },
+ "status": {
+ "enum": [
+ "standard",
+ "nonstandard",
+ "experimental",
+ "obsolete"
+ ]
+ },
+ "mdn_url": {
+ "type": "string",
+ "pattern": "^https://developer.mozilla.org/docs/"
+ }
+ },
+ "type": "object",
+ "additionalProperties": {
+ "type": "object",
+ "additionalProperties": false,
+ "required": [
+ "syntax",
+ "inherited",
+ "animationType",
+ "percentages",
+ "groups",
+ "initial",
+ "appliesto",
+ "computed",
+ "order",
+ "status"
+ ],
+ "properties": {
+ "syntax": {
+ "type": "string"
+ },
+ "media": {
+ "oneOf": [
+ {
+ "type": "string",
+ "enum": [
+ "all",
+ "aural",
+ "continuous",
+ "interactive",
+ "none",
+ "noPracticalMedia",
+ "paged",
+ "visual",
+ "visualInContinuousMediaNoEffectInOverflowColumns"
+ ]
+ },
+ {
+ "type": "array",
+ "minItems": 2,
+ "uniqueItems": true,
+ "items": {
+ "type": "string",
+ "enum": [
+ "interactive",
+ "paged",
+ "visual"
+ ]
+ }
+ }
+ ]
+ },
+ "inherited": {
+ "type": "boolean"
+ },
+ "animationType": {
+ "oneOf": [
+ {
+ "$ref": "#/definitions/animationType"
+ },
+ {
+ "$ref": "#/definitions/propertyList"
+ }
+ ]
+ },
+ "percentages": {
+ "oneOf": [
+ {
+ "$ref": "#/definitions/percentages"
+ },
+ {
+ "$ref": "#/definitions/propertyList"
+ }
+ ]
+ },
+ "groups": {
+ "type": "array",
+ "minitems": 1,
+ "uniqueItems": true,
+ "items": {
+ "$ref": "definitions.json#/groupList"
+ }
+ },
+ "initial": {
+ "oneOf": [
+ {
+ "type": "string"
+ },
+ {
+ "$ref": "#/definitions/propertyList"
+ }
+ ]
+ },
+ "appliesto": {
+ "$ref": "#/definitions/appliesto"
+ },
+ "alsoAppliesTo": {
+ "$ref": "#/definitions/alsoApplyTo"
+ },
+ "computed": {
+ "oneOf": [
+ {
+ "$ref": "#/definitions/computed"
+ },
+ {
+ "$ref": "#/definitions/propertyList"
+ }
+ ]
+ },
+ "order": {
+ "$ref": "#/definitions/order"
+ },
+ "stacking": {
+ "type": "boolean"
+ },
+ "status": {
+ "$ref": "#/definitions/status"
+ },
+ "mdn_url": {
+ "$ref": "#/definitions/mdn_url"
+ }
+ }
+ }
+}