/** * @class Cmd.workspace.json.Manifest * @singleton * This is not an actual class or singleton but rather the contents of `'workspace.json'` * which Sencha Cmd uses to coordinate {@link Cmd.app.json.Manifest applications}, * {@link Cmd.package.json.Manifest packages} and Sencha frameworks. * * A workspace is simply a root folder that contains the `workspace.json` file. It is used * as a coordination point for applications and the packages and frameworks they use. */ /** * @cfg {String[]} apps * An array of relative paths to the applications in this workspace. This is used to * perform bulk upgrade operations. */ /** * @cfg {Object} build * An object containing build settings. * * @cfg {String} build.dir * The default location to store build outputs. */ /** * @cfg {Object} frameworks * A named collection of {@link Cmd.workspace.json.Framework frameworks}. For example: * * "frameworks": { * "ext65": { * "path": "ext", * "version": "6.5.0" * } * } * * The name `"ext65"` can be used as the {@link Cmd.app.json.Manifest#framework framework} * value for applications in this workspace. */ /** * @cfg {Object} packages * This object controls where Sencha Cmd will download, extract and search for packages. * * @cfg {String/String[]} packages.dir * An array (or comma-separated string) of directories where Sencha Cmd will search for * locally developed packages. By default, this includes `./packages/local` and (for * backwards compatibility, `./packages`). These directories are only searched one level * deep to find packages. * * @cfg {String} packages.extract * The directory to which remote packages should be extracted. This defaults to the path * `./package/remote`. This folder should be excluded from version control (similar to * `node_modules`). */