| { |
| "$schema": "http://json-schema.org/schema#", |
| "title": "Schema for modular framework configuration", |
| "definitions": { |
| "basemgr": { |
| "type": "object", |
| "properties": { |
| "enable_cobalt": { "type": "boolean", "default": true }, |
| "enable_presenter": { "type": "boolean", "default": false }, |
| "test": { "type": "boolean", "default": false }, |
| "use_minfs": { "type": "boolean", "default": true }, |
| "use_session_shell_for_story_shell_factory": { "type": "boolean", "default": false }, |
| "base_shell": { "$ref": "#definitions/base_shell" }, |
| "session_shell": { "$ref": "#/definitions/session_shell" } |
| }, |
| "additionalProperties": false, |
| "required": [ "base_shell", "session_shell" ] |
| }, |
| "base_shell": { |
| "type": "object", |
| "properties": { |
| "url": { |
| "type": "string", |
| "pattern": "^fuchsia-pkg://([^/]+)/([^/#]+)(/([^/#]+))?(#(.+))?$", |
| "default": "fuchsia-pkg://fuchsia.com/dev_base_shell#meta/dev_base_shell.cmx" |
| }, |
| "keep_alive_after_login": { "type": "boolean", "default": false } |
| }, |
| "additionalProperties": false, |
| "required": [ "url" ] |
| }, |
| "session_shell": { |
| "type": "object", |
| "properties": { |
| "url": { |
| "type": "string", |
| "pattern": "^fuchsia-pkg://([^/]+)/([^/#]+)(/([^/#]+))?(#(.+))?$", |
| "default": "fuchsia-pkg://fuchsia.com/ermine_session_shell#meta/ermine_session_shell.cmx" |
| }, |
| "display_usage": { "type": "string" }, |
| "screen_height": { "type": "number" }, |
| "screen_width": { "type": "number" } |
| }, |
| "additionalProperties": false, |
| "required": [ "url" ] |
| }, |
| "sessionmgr": { |
| "type": "object", |
| "properties": { |
| "cloud_provider": { |
| "type": "string", |
| "enum": [ "LEDGER", "ENVIRONMENT", "NONE" ], |
| "default": "LEDGER" |
| }, |
| "enable_cobalt": { "type": "boolean", "default": true }, |
| "enable_story_shell_preload": { "type": "boolean", "default": true }, |
| "use_memfs_for_ledger": { "type": "boolean", "default": false }, |
| "startup_agents": { |
| "type": "array", |
| "items": { |
| "type": "string", |
| "pattern": "^fuchsia-pkg://([^/]+)/([^/#]+)(/([^/#]+))?(#(.+))?$" |
| }, |
| "uniqueItems": true |
| }, |
| "session_agents": { |
| "type": "array", |
| "items": { |
| "type": "string", |
| "pattern": "^fuchsia-pkg://([^/]+)/([^/#]+)(/([^/#]+))?(#(.+))?$" |
| }, |
| "uniqueItems": true |
| }, |
| "story_shell_url": { |
| "type": "string", |
| "pattern": "^fuchsia-pkg://([^/]+)/([^/#]+)(/([^/#]+))?(#(.+))?$", |
| "default": "fuchsia-pkg://fuchsia.com/mondrian#meta/mondrian.cmx" |
| } |
| }, |
| "additionalProperties": false |
| } |
| }, |
| "type": "object", |
| "properties": { |
| "basemgr": { "$ref": "#/definitions/basemgr" }, |
| "sessionmgr": { "$ref": "#/definitions/sessionmgr" } |
| }, |
| "required": [ "basemgr", "sessionmgr" ], |
| "additionalProperties": false |
| } |