111 lines
2.4 KiB
JSON
111 lines
2.4 KiB
JSON
{
|
|
"additionalProperties": false,
|
|
"definitions": {
|
|
"Rule": {
|
|
"description": "Filtering rule as regex or string.",
|
|
"anyOf": [
|
|
{
|
|
"instanceof": "RegExp",
|
|
"tsType": "RegExp"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"minLength": 1
|
|
}
|
|
]
|
|
},
|
|
"Rules": {
|
|
"description": "Filtering rules.",
|
|
"anyOf": [
|
|
{
|
|
"type": "array",
|
|
"items": {
|
|
"description": "A rule condition.",
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/Rule"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"$ref": "#/definitions/Rule"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"properties": {
|
|
"test": {
|
|
"description": "Include all assets that pass test assertion.",
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/Rules"
|
|
}
|
|
]
|
|
},
|
|
"include": {
|
|
"description": "Include all assets matching any of these conditions.",
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/Rules"
|
|
}
|
|
]
|
|
},
|
|
"exclude": {
|
|
"description": "Exclude all assets matching any of these conditions.",
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/Rules"
|
|
}
|
|
]
|
|
},
|
|
"algorithm": {
|
|
"description": "The compression algorithm/function.",
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"instanceof": "Function"
|
|
}
|
|
]
|
|
},
|
|
"compressionOptions": {
|
|
"description": "Compression options for `algorithm`.",
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"threshold": {
|
|
"description": "Only assets bigger than this size are processed. In bytes.",
|
|
"type": "number"
|
|
},
|
|
"minRatio": {
|
|
"description": "Only assets that compress better than this ratio are processed (`minRatio = Compressed Size / Original Size`).",
|
|
"type": "number"
|
|
},
|
|
"deleteOriginalAssets": {
|
|
"description": "Whether to delete the original assets or not.",
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"enum": ["keep-source-map"]
|
|
}
|
|
]
|
|
},
|
|
"filename": {
|
|
"description": "The target asset filename.",
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"instanceof": "Function"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|