script/win/modulecheck/appStartup.json
2025-01-21 14:32:39 +08:00

85 lines
2.3 KiB
JSON

{
"title": "JSON schema for app_startup.json",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"additionalProperties": false,
"required": [
"startupTasks",
"configEntry"
],
"propertyNames": {
"enum": [
"startupTasks",
"configEntry"
]
},
"properties": {
"startupTasks": {
"type": "array",
"uniqueItems": true,
"items": {
"type": "object",
"propertyNames": {
"enum": [
"name",
"srcEntry",
"dependencies",
"excludeFromAutoStart",
"runOnThread",
"waitOnMainThread"
]
},
"required": [
"name",
"srcEntry"
],
"properties": {
"name": {
"description": "Indicates the name of the startup task.",
"type": "string",
"pattern": "^[a-zA-Z][0-9a-zA-Z_.]+$",
"maxLength": 127
},
"srcEntry": {
"description": "Indicates the js code path corresponding to the startup task.",
"type": "string",
"maxLength": 127
},
"dependencies": {
"description": "Indicates the dependencies of the startup task.",
"type": "array",
"uniqueItems": true,
"items": {
"type": "string"
},
"default": []
},
"excludeFromAutoStart": {
"description": "Indicates whether the startup task is excluded from automatic start.",
"type": "boolean",
"default": false
},
"runOnThread": {
"description": "Indicates the running thread of the startup task.",
"type": "string",
"enum": [
"mainThread",
"taskPool"
],
"default": "mainThread"
},
"waitOnMainThread": {
"description": "Indicates whether the startup task block the main thread.",
"type": "boolean",
"default": true
}
}
}
},
"configEntry": {
"description": "Indicates the js code path corresponding to the startup config.",
"type": "string",
"maxLength": 127
}
}
}