diff --git a/modulecheck/module.json b/modulecheck/module.json index 39923206e34221ae7c716653cd6c1a6879e8b806..2849bdad28e81aafba74fd6abf52897c325731a6 100644 --- a/modulecheck/module.json +++ b/modulecheck/module.json @@ -15,34 +15,73 @@ "module": { "description": "Indicates the configuration of a .hap file. The module configuration is valid only for the current .hap file.", "type": "object", - "required": [ - "name", - "type", - "deviceTypes", - "deliveryWithInstall", - "pages" + "allOf": [ + { + "if": { + "properties": { + "type": { + "const": "har" + } + }, + "then": { + "propertyNames": { + "enum": [ + "name", + "type", + "srcEntrance", + "description", + "process", + "mainElement", + "deviceTypes", + "installationFree", + "virtualMachine", + "uiSyntax", + "metadata", + "abilities", + "extensionAbilities", + "requestPermissions", + "definePermissions" + ] + }, + "required": [ + "name", + "type", + "deviceTypes" + ] + } + }, + "else": { + "propertyNames": { + "enum": [ + "name", + "type", + "srcEntrance", + "description", + "process", + "mainElement", + "deviceTypes", + "deliveryWithInstall", + "installationFree", + "virtualMachine", + "uiSyntax", + "pages", + "metadata", + "abilities", + "extensionAbilities", + "requestPermissions", + "definePermissions" + ] + }, + "required": [ + "name", + "type", + "deviceTypes", + "deliveryWithInstall", + "pages" + ] + } + } ], - "propertyNames": { - "enum": [ - "name", - "type", - "srcEntrance", - "description", - "process", - "mainElement", - "deviceTypes", - "deliveryWithInstall", - "installationFree", - "virtualMachine", - "uiSyntax", - "pages", - "metadata", - "abilities", - "extensionAbilities", - "requestPermissions", - "definePermissions" - ] - }, "properties": { "name": { "description": "Indicates the module name.", @@ -89,9 +128,7 @@ "tablet", "tv", "wearable", - "liteWearable", "car", - "smartVision", "router" ] }