Files
khadhroony-solana-project/config/schemas/composite.schema.json
2026-08-15 21:25:08 +02:00

63 lines
1.4 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "KSP composite configuration",
"type": "object",
"additionalProperties": false,
"required": ["format_version", "default_profile", "profiles"],
"properties": {
"format_version": {
"const": 1
},
"default_profile": {
"type": "string",
"minLength": 1
},
"profiles": {
"type": "array",
"minItems": 1,
"items": {
"$ref": "#/$defs/composite_profile"
}
}
},
"$defs": {
"composite_profile": {
"type": "object",
"additionalProperties": false,
"required": ["profile_id", "documents"],
"properties": {
"profile_id": {
"type": "string",
"minLength": 1
},
"documents": {
"type": "array",
"minItems": 1,
"items": {
"$ref": "#/$defs/document_reference"
}
}
}
},
"document_reference": {
"type": "object",
"additionalProperties": false,
"required": ["component_id", "file_id"],
"properties": {
"component_id": {
"type": "string",
"minLength": 1
},
"file_id": {
"type": "string",
"pattern": "^cfg\\.std\\.[a-z0-9][a-z0-9._-]*$"
},
"profile_id": {
"type": "string",
"minLength": 1
}
}
}
}
}