| { |
| "$schema": "http://json-schema.org/draft-04/schema#", |
| "$comment": "This should be kept in sync with the validator in packages/flutter_tools/lib/src/flutter_manifest.dart", |
| "title": "pubspec.yaml", |
| "type": "object", |
| "additionalProperties": true, |
| "properties": { |
| "name": { "type": "string" }, |
| "flutter": { |
| "oneOf": [ |
| { "type": "object" }, |
| { "type": "null" } |
| ], |
| "additionalProperties": false, |
| "properties": { |
| "uses-material-design": { "type": "boolean" }, |
| "assets": { |
| "type": "array", |
| "items": { "type": "string" } |
| }, |
| "services": { |
| "type": "array", |
| "items": { "type": "string" } |
| }, |
| "fonts": { |
| "type": "array", |
| "items": { |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "family": { "type": "string" }, |
| "fonts": { |
| "type": "array", |
| "items": { |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "asset": { "type": "string" }, |
| "weight": { "enum": [ 100, 200, 300, 400, 500, 600, 700, 800, 900 ] }, |
| "style": { "enum": [ "normal", "italic" ] } |
| } |
| } |
| } |
| } |
| } |
| }, |
| "module": { |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "androidX": { "type": "boolean" }, |
| "androidPackage": { "type": "string" }, |
| "iosBundleIdentifier": { "type": "string" } |
| } |
| }, |
| "plugin": { |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "platforms": { |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "android": { |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "package": {"type": "string"}, |
| "pluginClass": {"type": "string"} |
| } |
| }, |
| "ios": { |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "pluginClass": {"type": "string"} |
| } |
| }, |
| "linux": { |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "pluginClass": {"type": "string"}, |
| "dartPluginClass": {"type": "string"} |
| } |
| }, |
| "macos": { |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "pluginClass": {"type": "string"}, |
| "dartPluginClass": {"type": "string"} |
| } |
| }, |
| "windows": { |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "pluginClass": {"type": "string"}, |
| "dartPluginClass": {"type": "string"} |
| } |
| } |
| } |
| }, |
| "androidPackage": { "type": "string" }, |
| "iosPrefix": { "type": "string" }, |
| "macosPrefix": { "type": "string" }, |
| "pluginClass": { "type": "string" } |
| } |
| } |
| } |
| } |
| } |
| } |