123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394 |
- {
- "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",
- "color",
- "discrete",
- "eachOfShorthandPropertiesExceptUnicodeBiDiAndDirection",
- "filterList",
- "fontStretch",
- "fontWeight",
- "integer",
- "length",
- "lpc",
- "numberOrLength",
- "number",
- "position",
- "rectangle",
- "repeatableListOfSimpleListOfLpc",
- "shadowList",
- "simpleListOfLpc",
- "simpleListOfLpcDifferenceLpc",
- "transform",
- "visibility"
- ]
- },
- "percentages": {
- "enum": [
- "blockSizeOfContainingBlock",
- "dependsOnLayoutModel",
- "inlineSizeOfContainingBlock",
- "lengthsAsPercentages",
- "logicalHeightOfContainingBlock",
- "logicalWidthOfContainingBlock",
- "maxZoomFactor",
- "minZoomFactor",
- "no",
- "referToBorderBox",
- "referToContainingBlockHeight",
- "referToDimensionOfBorderBox",
- "referToDimensionOfContentArea",
- "referToElementFontSize",
- "referToFlexContainersInnerMainSize",
- "referToHeightOfBackgroundPositioningAreaMinusBackgroundImageHeight",
- "referToLineBoxWidth",
- "referToLineHeight",
- "referToParentElementsFontSize",
- "referToSizeOfBackgroundPositioningAreaMinusBackgroundImageSize",
- "referToSizeOfBorderImage",
- "referToSizeOfBoundingBox",
- "referToSizeOfContainingBlock",
- "referToSizeOfElement",
- "referToSizeOfFont",
- "referToSizeOfMaskBorderImage",
- "referToSizeOfMaskPaintingArea",
- "referToTotalPathLength",
- "referToWidthAndHeightOfElement",
- "referToWidthOfAffectedGlyph",
- "referToWidthOfBackgroundPositioningAreaMinusBackgroundImageHeight",
- "referToWidthOfContainingBlock",
- "referToWidthOrHeightOfBorderImageArea",
- "referToReferenceBoxWhenSpecifiedOtherwiseBorderBox",
- "regardingHeightOfGeneratedBoxContainingBlockPercentages0",
- "regardingHeightOfGeneratedBoxContainingBlockPercentagesNone",
- "regardingHeightOfGeneratedBoxContainingBlockPercentagesRelativeToContainingBlock",
- "relativeToBackgroundPositioningArea",
- "relativeToMaskBorderImageArea",
- "relativeToScrollContainerPaddingBoxAxis",
- "relativeToTheScrollContainersScrollport",
- "relativeToWidthAndHeight"
- ]
- },
- "computed": {
- "enum": [
- "absoluteLength",
- "absoluteLength0ForNone",
- "absoluteLength0IfColumnRuleStyleNoneOrHidden",
- "absoluteLengthOr0IfBorderBottomStyleNoneOrHidden",
- "absoluteLengthOr0IfBorderLeftStyleNoneOrHidden",
- "absoluteLengthOr0IfBorderRightStyleNoneOrHidden",
- "absoluteLengthOr0IfBorderTopStyleNoneOrHidden",
- "absoluteLengthOrAsSpecified",
- "absoluteLengthOrKeyword",
- "absoluteLengthOrNone",
- "absoluteLengthOrNormal",
- "absoluteLengthOrPercentage",
- "absoluteLengthsSpecifiedColorAsSpecified",
- "absoluteLengthZeroIfBorderStyleNoneOrHidden",
- "absoluteLengthZeroOrLarger",
- "absoluteURIOrNone",
- "angleRoundedToNextQuarter",
- "asAutoOrColor",
- "asDefinedForBasicShapeWithAbsoluteURIOtherwiseAsSpecified",
- "asLength",
- "asSpecified",
- "asSpecifiedAppliesToEachProperty",
- "asSpecifiedExceptMatchParent",
- "asSpecifiedExceptPositionedFloatingAndRootElementsKeywordMaybeDifferent",
- "asSpecifiedRelativeToAbsoluteLengths",
- "asSpecifiedURLsAbsolute",
- "asSpecifiedWithExceptionOfResolution",
- "asSpecifiedWithLengthsAbsoluteAndNormalComputingToZeroExceptMultiColumn",
- "asSpecifiedWithVarsSubstituted",
- "autoOnAbsolutelyPositionedElementsValueOfAlignItemsOnParent",
- "autoOrRectangle",
- "colorPlusThreeAbsoluteLengths",
- "computedColor",
- "consistsOfTwoDimensionKeywords",
- "consistsOfTwoKeywordsForOriginAndOffsets",
- "forLengthAbsoluteValueOtherwisePercentage",
- "invertForTranslucentColorRGBAOtherwiseRGB",
- "keywordOrNumericalValueBolderLighterTransformedToRealValue",
- "keywordPlusIntegerIfDigits",
- "lengthAbsolutePercentageAsSpecifiedOtherwiseAuto",
- "listEachItemConsistingOfAbsoluteLengthPercentageAndOrigin",
- "listEachItemHasTwoKeywordsOnePerDimension",
- "listEachItemTwoKeywordsOriginOffsets",
- "noneOrImageWithAbsoluteURI",
- "normalizedAngle",
- "normalOnElementsForPseudosNoneAbsoluteURIStringOrAsSpecified",
- "oneToFourPercentagesOrAbsoluteLengthsPlusFill",
- "optimumMinAndMaxValueOfAbsoluteLengthPercentageOrNormal",
- "optimumValueOfAbsoluteLengthOrNormal",
- "percentageAsSpecifiedAbsoluteLengthOrNone",
- "percentageAsSpecifiedOrAbsoluteLength",
- "percentageAutoOrAbsoluteLength",
- "percentageOrAbsoluteLengthPlusKeywords",
- "sameAsBoxOffsets",
- "sameAsMaxWidthAndMaxHeight",
- "sameAsMinWidthAndMinHeight",
- "sameAsWidthAndHeight",
- "specifiedIntegerOrAbsoluteLength",
- "specifiedValueClipped0To1",
- "specifiedValueNumberClipped0To1",
- "translucentValuesRGBAOtherwiseRGB",
- "twoAbsoluteLengthOrPercentages",
- "twoAbsoluteLengths"
- ]
- },
- "appliesto": {
- "enum": [
- "absolutelyPositionedElements",
- "allElements",
- "allElementsAcceptingWidthOrHeight",
- "allElementsAndPseudos",
- "allElementsButNonReplacedAndTableColumns",
- "allElementsButNonReplacedAndTableRows",
- "allElementsCreatingNativeWindows",
- "allElementsExceptGeneratedContentOrPseudoElements",
- "allElementsExceptInternalTableDisplayTypes",
- "allElementsExceptNonReplacedInlineElementsTableRowsColumnsRowColumnGroups",
- "allElementsExceptTableDisplayTypes",
- "allElementsExceptTableElementsWhenCollapse",
- "allElementsExceptTableRowColumnGroupsTableRowsColumns",
- "allElementsExceptTableRowGroupsRowsColumnGroupsAndColumns",
- "allElementsNoEffectIfDisplayNone",
- "allElementsSomeValuesNoEffectOnNonInlineElements",
- "allElementsSVGContainerElements",
- "allElementsSVGContainerGraphicsAndGraphicsReferencingElements",
- "allElementsThatCanReferenceImages",
- "allElementsUAsNotRequiredWhenCollapse",
- "anyElementEffectOnProgressAndMeter",
- "beforeAndAfterPseudos",
- "blockContainerElements",
- "blockContainers",
- "blockContainersExceptMultiColumnContainers",
- "blockContainersExceptTableWrappers",
- "blockContainersFlexContainersGridContainers",
- "blockElementsInNormalFlow",
- "blockLevelElements",
- "blockLevelBoxesAndAbsolutelyPositionedBoxesAndGridItems",
- "boxElements",
- "childrenOfBoxElements",
- "directChildrenOfElementsWithDisplayMozBoxMozInlineBox",
- "elementsWithDisplayBoxOrInlineBox",
- "elementsWithDisplayMarker",
- "elementsWithDisplayMozBoxMozInlineBox",
- "elementsWithOverflowNotVisibleAndReplacedElements",
- "exclusionElements",
- "firstLetterPseudoElementsAndInlineLevelFirstChildren",
- "flexContainers",
- "flexItemsAndAbsolutelyPositionedFlexContainerChildren",
- "flexItemsAndInFlowPseudos",
- "flexItemsGridItemsAndAbsolutelyPositionedBoxes",
- "floats",
- "gridContainers",
- "gridItemsAndBoxesWithinGridContainer",
- "iframeElements",
- "images",
- "inFlowBlockLevelElements",
- "inFlowChildrenOfBoxElements",
- "inlineLevelAndTableCellElements",
- "listItems",
- "maskElements",
- "multicolElements",
- "multiColumnElementsFlexContainersGridContainers",
- "multilineFlexContainers",
- "nonReplacedBlockAndInlineBlockElements",
- "nonReplacedBlockElements",
- "nonReplacedElements",
- "nonReplacedInlineElements",
- "positionedElements",
- "replacedElements",
- "rubyAnnotationsContainers",
- "rubyBasesAnnotationsBaseAnnotationContainers",
- "sameAsMargin",
- "sameAsWidthAndHeight",
- "scrollContainers",
- "scrollingBoxes",
- "tableCaptionElements",
- "tableCellElements",
- "tableElements",
- "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",
- "media",
- "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"
- }
- }
- }
- }
|