From 3294a1511f104d755eaa001945ae4d2254597ab9 Mon Sep 17 00:00:00 2001 From: Chris Manson Date: Fri, 10 Nov 2023 22:43:51 +0000 Subject: [PATCH 1/2] add ember-cli to delete-unused-files script --- delete-unused-files.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/delete-unused-files.js b/delete-unused-files.js index d8c11a08b..1eba44123 100644 --- a/delete-unused-files.js +++ b/delete-unused-files.js @@ -18,6 +18,8 @@ function deleteUnusedFilesForRevIndex(file) { project = 'ember'; } else if (json.data.id.match(/^ember-data-\d/)) { project = 'ember-data'; + } else if (json.data.id.match(/^ember-cli-\d/)) { + project = 'ember-cli'; } else { console.log('error figuring out project for', file); return; From f8b88acb839cf70ad439eab24544742d1e40ccf7 Mon Sep 17 00:00:00 2001 From: Chris Manson Date: Fri, 10 Nov 2023 22:44:26 +0000 Subject: [PATCH 2/2] add data for ember-cli 5.3 and 5.4 --- .../5.3.0/classes/ember-cli-5.3.0-Addon.json | 1236 +++ .../ember-cli-5.3.0-AmdTransformAddon.json | 44 + .../classes/ember-cli-5.3.0-Blueprint.json | 1394 ++++ .../classes/ember-cli-5.3.0-Builder.json | 175 + .../5.3.0/classes/ember-cli-5.3.0-CLI.json | 221 + .../classes/ember-cli-5.3.0-Command.json | 466 ++ .../ember-cli-5.3.0-DefaultPackager.json | 43 + .../classes/ember-cli-5.3.0-EmberAddon.json | 663 ++ .../classes/ember-cli-5.3.0-EmberApp.json | 610 ++ .../classes/ember-cli-5.3.0-HardwareInfo.json | 182 + .../ember-cli-5.3.0-HistorySupportAddon.json | 44 + .../ember-cli-5.3.0-Instrumentation.json | 156 + .../ember-cli-5.3.0-NodeModulesList.json | 124 + .../classes/ember-cli-5.3.0-NpmTask.json | 79 + .../classes/ember-cli-5.3.0-PackageInfo.json | 374 + .../ember-cli-5.3.0-PackageInfoCache.json | 302 + ...r-cli-5.3.0-PerBundleAddonCache%20%7B.json | 261 + .../classes/ember-cli-5.3.0-Project.json | 575 ++ .../ember-cli-5.3.0-ServeFilesAddon.json | 56 + .../ember-cli-5.3.0-TestsServerAddon.json | 44 + .../classes/ember-cli-5.3.0-WatcherAddon.json | 44 + ...ember-cli-5.3.0-WindowsSymlinkChecker.json | 451 ++ .../ember-cli/5.3.0/missings/CoreObject.json | 9 + .../modules/ember-cli-5.3.0-ember-cli.json | 275 + .../ember-cli-5.3.0-is-lazy-engine.json | 47 + .../project-versions/ember-cli-5.3.0.json | 234 + .../5.4.0/classes/ember-cli-5.4.0-Addon.json | 1236 +++ .../ember-cli-5.4.0-AmdTransformAddon.json | 44 + .../classes/ember-cli-5.4.0-Blueprint.json | 1394 ++++ .../classes/ember-cli-5.4.0-Builder.json | 175 + .../5.4.0/classes/ember-cli-5.4.0-CLI.json | 211 + .../classes/ember-cli-5.4.0-Command.json | 466 ++ .../ember-cli-5.4.0-DefaultPackager.json | 43 + .../classes/ember-cli-5.4.0-EmberAddon.json | 663 ++ .../classes/ember-cli-5.4.0-EmberApp.json | 610 ++ .../classes/ember-cli-5.4.0-HardwareInfo.json | 182 + .../ember-cli-5.4.0-HistorySupportAddon.json | 44 + .../ember-cli-5.4.0-Instrumentation.json | 156 + .../ember-cli-5.4.0-NodeModulesList.json | 124 + .../classes/ember-cli-5.4.0-NpmTask.json | 79 + .../classes/ember-cli-5.4.0-PackageInfo.json | 374 + .../ember-cli-5.4.0-PackageInfoCache.json | 302 + ...r-cli-5.4.0-PerBundleAddonCache%20%7B.json | 261 + .../classes/ember-cli-5.4.0-Project.json | 575 ++ .../ember-cli-5.4.0-ServeFilesAddon.json | 56 + .../ember-cli-5.4.0-TestsServerAddon.json | 44 + .../classes/ember-cli-5.4.0-WatcherAddon.json | 44 + ...ember-cli-5.4.0-WindowsSymlinkChecker.json | 385 + .../ember-cli/5.4.0/missings/CoreObject.json | 9 + .../modules/ember-cli-5.4.0-ember-cli.json | 275 + .../ember-cli-5.4.0-is-lazy-engine.json | 47 + .../project-versions/ember-cli-5.4.0.json | 234 + json-docs/ember-cli/projects/ember-cli.json | 23 + rev-index/ember-cli-5.3.0.json | 268 + rev-index/ember-cli-5.4.0.json | 268 + rev-index/ember-cli.json | 29 + s3-docs/v5.3.0/ember-cli-docs.json | 6699 +++++++++++++++++ s3-docs/v5.4.0/ember-cli-docs.json | 6602 ++++++++++++++++ 58 files changed, 30031 insertions(+) create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Addon.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-AmdTransformAddon.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Blueprint.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Builder.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-CLI.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Command.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-DefaultPackager.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-EmberAddon.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-EmberApp.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-HardwareInfo.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-HistorySupportAddon.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Instrumentation.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-NodeModulesList.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-NpmTask.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-PackageInfo.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-PackageInfoCache.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-PerBundleAddonCache%20%7B.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Project.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-ServeFilesAddon.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-TestsServerAddon.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-WatcherAddon.json create mode 100644 json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-WindowsSymlinkChecker.json create mode 100644 json-docs/ember-cli/5.3.0/missings/CoreObject.json create mode 100644 json-docs/ember-cli/5.3.0/modules/ember-cli-5.3.0-ember-cli.json create mode 100644 json-docs/ember-cli/5.3.0/modules/ember-cli-5.3.0-is-lazy-engine.json create mode 100644 json-docs/ember-cli/5.3.0/project-versions/ember-cli-5.3.0.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Addon.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-AmdTransformAddon.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Blueprint.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Builder.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-CLI.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Command.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-DefaultPackager.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-EmberAddon.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-EmberApp.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-HardwareInfo.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-HistorySupportAddon.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Instrumentation.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-NodeModulesList.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-NpmTask.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-PackageInfo.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-PackageInfoCache.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-PerBundleAddonCache%20%7B.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Project.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-ServeFilesAddon.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-TestsServerAddon.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-WatcherAddon.json create mode 100644 json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-WindowsSymlinkChecker.json create mode 100644 json-docs/ember-cli/5.4.0/missings/CoreObject.json create mode 100644 json-docs/ember-cli/5.4.0/modules/ember-cli-5.4.0-ember-cli.json create mode 100644 json-docs/ember-cli/5.4.0/modules/ember-cli-5.4.0-is-lazy-engine.json create mode 100644 json-docs/ember-cli/5.4.0/project-versions/ember-cli-5.4.0.json create mode 100644 json-docs/ember-cli/projects/ember-cli.json create mode 100644 rev-index/ember-cli-5.3.0.json create mode 100644 rev-index/ember-cli-5.4.0.json create mode 100644 rev-index/ember-cli.json create mode 100644 s3-docs/v5.3.0/ember-cli-docs.json create mode 100644 s3-docs/v5.4.0/ember-cli-docs.json diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Addon.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Addon.json new file mode 100644 index 000000000..8123b66d0 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Addon.json @@ -0,0 +1,1236 @@ +{ + "data": { + "id": "ember-cli-5.3.0-Addon", + "type": "class", + "attributes": { + "name": "Addon", + "shortname": "Addon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/addon.js", + "line": 122, + "description": "

Root class for an Addon. If your addon module exports an Object this\nwill be extended from this base class. If you export a constructor (function),\nit will not extend from this class.

\n

Hooks:

\n\n", + "extends": "CoreObject", + "is_constructor": 1, + "params": [ + { + "name": "parent", + "description": "The project or addon that directly depends on this addon", + "type": "Project|Addon" + }, + { + "name": "project", + "description": "The current project (deprecated)", + "type": "Project" + } + ], + "methods": [ + { + "file": "lib/models/addon.js", + "line": 239, + "description": "

Initializes the addon. If you override this method make sure and call this._super.init && this._super.init.apply(this, arguments); or your addon will not work.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "init", + "params": [ + { + "name": "parent", + "description": "The project or addon that directly depends on this addon", + "type": "Project|Addon" + }, + { + "name": "project", + "description": "The current project (deprecated)", + "type": "Project" + } + ], + "example": [ + "\n```js\ninit(parent, project) {\n this._super.init && this._super.init.apply(this, arguments);\n this._someCustomSetup();\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 320, + "description": "

Find an addon of the current addon.

\n

Example: ember-data depends on ember-cli-babel and wishes to have\nadditional control over transpilation this method helps.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n
// ember-data/index.js\ntreeForAddon(tree) {\n  let babel = this.findOwnAddonByName('ember-cli-babel');\n\n  return babel.transpileTree(tree, {\n    // customize the babel step (see: ember-cli-addons readme for more details);\n  });\n}
\n
\n
\n \n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "findOwnAddonByName", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 344, + "description": "

Check if the current addon intends to be hinted. Typically this is for\nhinting/linting libraries such as eslint or jshint

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hintingEnabled", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 359, + "description": "

Shorthand method for broccoli-concat

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "concatFiles", + "params": [ + { + "name": "tree", + "description": "Tree of files", + "type": "Tree" + }, + { + "name": "options", + "description": "Options for broccoli-concat", + "type": "Object" + } + ], + "return": { + "description": "Modified tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 373, + "description": "

Allows to mark the addon as developing, triggering live-reload in the project the addon is linked to.

\n

Uses:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "isDevelopingAddon", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 409, + "description": "

Discovers all child addons of this addon and an AddonInfo about\neach addon in this.addonPackages (keyed on addon name).

\n

Child addons include those from 'dependencies' (not devDependencies)\nand in-repo addons

\n

Any packageInfos that we find that are marked as not valid are excluded.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "discoverAddons", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 459, + "description": "

Invoke the specified method for each enabled addon.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "eachAddonInvoke", + "params": [ + { + "name": "methodName", + "description": "the method to invoke on each addon", + "type": "String" + }, + { + "name": "args", + "description": "the arguments to pass to the invoked method", + "type": "Array" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 484, + "description": "

Invoke the specified method for each of the project's addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_eachProjectAddonInvoke", + "params": [ + { + "name": "methodName", + "description": "the method to invoke on each addon", + "type": "String" + }, + { + "name": "args", + "description": "the arguments to pass to the invoked method", + "type": "Array" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 517, + "description": "

Generates a tree for the specified path

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "treeGenerator", + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 552, + "description": "

Returns a given type of tree (if present), merged with the\napplication tree. For each of the trees available using this\nmethod, you can also use a direct method called treeFor[Type] (eg. treeForApp).

\n

Available tree names:

\n\n

Uses:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeFor", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 618, + "access": "private", + "tagname": "", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + } + ], + "itemtype": "method", + "name": "_treeFor", + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 640, + "description": "

Calculates a cacheKey for the given treeType. It is expected to return a\ncache key allowing multiple builds of the same tree to simply return the\noriginal tree (preventing duplicate work). If it returns null / undefined\nthe tree in question will opt out of this caching system.

\n

This method is invoked prior to calling treeFor with the same tree name.

\n

You should override this method if you implement custom treeFor or treeFor*\nmethods, which cause addons to opt-out of this caching.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "cacheKeyForTree", + "params": [ + { + "name": "treeType", + "description": "", + "type": "String" + } + ], + "return": { + "description": "cacheKey", + "type": "String" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 682, + "description": "

This method climbs up the hierarchy of addons\nup to the host application.

\n

This prevents previous addons (prior to this.import, ca 2.7.0)\nto break at importing assets when they are used nested in other addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_findHost", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 705, + "description": "

This method is called when the addon is included in a build. You\nwould typically use this hook to perform additional imports

\n

Uses:

\n\n

Note: Any options set in the consuming application will override the addon.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "included", + "params": [ + { + "name": "parent", + "description": "The parent object which included this addon", + "type": "EmberApp|EmberAddon" + } + ], + "example": [ + "\n```js\nincluded(parent) {\n this._super.included.apply(this, arguments);\n this.import(somePath);\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 738, + "description": "

Imports an asset into this addon.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "import", + "params": [ + { + "name": "asset", + "description": "Either a path to the asset or an object with environment names and paths as key-value pairs.", + "type": "Object|String" + }, + { + "name": "options", + "description": "Options object", + "type": "Object", + "optional": true, + "props": [ + { + "name": "type", + "description": "Either 'vendor' or 'test', defaults to 'vendor'", + "type": "String", + "optional": true + }, + { + "name": "prepend", + "description": "Whether or not this asset should be prepended, defaults to false", + "type": "Boolean", + "optional": true + }, + { + "name": "destDir", + "description": "Destination directory, defaults to the name of the directory the asset is in", + "type": "String", + "optional": true + } + ] + } + ], + "since": "2.7.0", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 758, + "description": "

Returns the tree for all app files

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForApp", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "App file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 770, + "description": "

Returns the tree for all template files

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForTemplates", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Template file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 782, + "description": "

Returns the tree for this addon's templates

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForAddonTemplates", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Addon Template file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 794, + "description": "

Returns a tree for this addon

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForAddon", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Addon file tree", + "type": "Tree" + }, + "example": [ + "\n```js\ntreeForAddon() {\n let emberVersion = new VersionChecker(this.project).for('ember-source');\n let shouldUsePolyfill = emberVersion.lt('4.5.0-alpha.4');\n\n if (shouldUsePolyfill) {\n return this._super.treeForAddon.apply(this, arguments);\n }\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 825, + "description": "

Returns the tree for all style files

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForStyles", + "params": [ + { + "name": "tree", + "description": "The tree to process, usually `app/styles/` in the addon.", + "type": "Tree" + } + ], + "return": { + "description": "The return tree has the same contents as the input tree, but is moved so that the `app/styles/` path is preserved.", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 844, + "description": "

Returns the tree for all vendor files

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForVendor", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Vendor file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 856, + "description": "

Returns the tree for all test support files

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForTestSupport", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Test Support file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 868, + "description": "

Returns the tree for all public files

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForPublic", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Public file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 888, + "description": "

Returns the tree for all test files namespaced to a given addon.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForAddonTestSupport", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 922, + "description": "

Runs the styles tree through preprocessors.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "compileStyles", + "params": [ + { + "name": "addonStylesTree", + "description": "Styles file tree", + "type": "Tree" + } + ], + "return": { + "description": "Compiled styles tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 947, + "description": "

Looks in the addon/ and addon/templates trees to determine if template files\nexist that need to be precompiled.

\n

This is executed once when building, but not on rebuilds.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldCompileTemplates", + "return": { + "description": "indicates if templates need to be compiled for this addon", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 961, + "description": "

Looks in the addon/ and addon/templates trees to determine if template files\nexist in the pods format that need to be precompiled.

\n

This is executed once when building, but not on rebuilds.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_shouldCompilePodTemplates", + "return": { + "description": "indicates if pod based templates need to be compiled for this addon", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1079, + "description": "

Runs the templates tree through preprocessors.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "compileTemplates", + "params": [ + { + "name": "tree", + "description": "Templates file tree", + "type": "Tree" + } + ], + "return": { + "description": "Compiled templates tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1113, + "description": "

Runs the addon tree through preprocessors.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "compileAddon", + "params": [ + { + "name": "tree", + "description": "Addon file tree", + "type": "Tree" + } + ], + "return": { + "description": "Compiled addon tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1157, + "description": "

Returns a tree with JSHint output for all addon JS.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "jshintAddonTree", + "return": { + "description": "Tree with JShint output (tests)", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1223, + "description": "

Preprocesses a javascript tree.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "preprocessJs", + "return": { + "description": "Preprocessed javascript", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1234, + "description": "

Returns a tree with all javascript for this addon.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processedAddonJsFiles", + "params": [ + { + "name": "the", + "description": "tree to preprocess", + "type": "Tree" + } + ], + "return": { + "description": "Processed javascript file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1263, + "description": "

Returns the module name for this addon.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "moduleName", + "return": { + "description": "module name", + "type": "String" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1278, + "description": "

Returns the path for addon blueprints.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "blueprintsPath", + "return": { + "description": "The path for blueprints", + "type": "String" + }, + "example": [ + "\n- [ember-cli-coffeescript](https://github.com/kimroen/ember-cli-coffeescript/blob/v1.13.2/index.js#L26)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1296, + "description": "

Augments the application's configuration settings.

\n

Object returned from this hook is merged with the application's configuration object.

\n

Application's configuration always take precedence.

\n

Uses:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "config", + "params": [ + { + "name": "env", + "description": "Name of current environment (ie \"development\")", + "type": "String" + }, + { + "name": "baseConfig", + "description": "Initial application configuration", + "type": "Object" + } + ], + "return": { + "description": "Configuration object to be merged with application configuration.", + "type": "Object" + }, + "example": [ + "\n```js\nconfig(environment, appConfig) {\n return {\n someAddonDefault: \"foo\"\n };\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1335, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "return": { + "description": "The addon's dependencies based on the addon's package.json", + "type": "Object" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1345, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "isEnabled", + "return": { + "description": "Whether or not this addon is enabled", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1354, + "description": "

Can be used to exclude addons from being added as a child addon.

\n

Uses:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "shouldIncludeChildAddon", + "params": [ + { + "name": "childAddon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "Whether or not a child addon is supposed to be included", + "type": "Boolean" + }, + "example": [ + "\n```js\nshouldIncludeChildAddon(childAddon) {\n if(childAddon.name === 'ember-cli-some-legacy-select-component') {\n return this.options.legacyMode;\n } else if(childAddon.name === 'ember-cli-awesome-new-select-component') {\n return !this.options.legacyMode;\n } else {\n return this._super.shouldIncludeChildAddon.apply(this, arguments);\n }\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1386, + "description": "

Allows the specification of custom addon commands.\nExpects you to return an object whose key is the name of the command and value is the command instance..

\n

This function is not implemented by default

\n

Uses:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "includedCommands", + "return": { + "description": "An object with included commands", + "type": "Object" + }, + "example": [ + "\n```js\nincludedCommands() {\n return {\n 'do-foo': require('./lib/commands/foo')\n };\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1410, + "description": "

Allows addons to define a custom transform function that other addons and app can use when using app.import.

\n

This function is not implemented by default

\n

Uses:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "importTransforms", + "return": { + "description": "An object with custom transforms", + "type": "Object" + }, + "example": [ + "\n```js\nimportTransforms() {\n return {\n 'my-custom-transform': function(tree, options) {\n // transform the incoming tree and return the updated tree\n }\n };\n}\n```\n\nAlternatively, if you want to process `options` before being passed into the custom transform function, use:", + "\n```js\nimportTransforms() {\n return {\n 'my-custom-transform': {\n transform: function(tree, options) {\n // transform the incoming tree and return the updated tree\n },\n processOptions: function(assetPath, entry, options) {\n // process your options\n\n return options\n }\n };\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1454, + "description": "

Pre-process a tree

\n

Uses:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "preprocessTree", + "params": [ + { + "name": "type", + "description": "What kind of tree (eg. 'js', 'css', 'template')", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1468, + "description": "

Post-process a tree

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "postprocessTree", + "params": [ + { + "name": "type", + "description": "What kind of tree (eg. 'js', 'css', 'template')", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "example": [ + "\n- [broccoli-asset-rev](https://github.com/rickharrison/broccoli-asset-rev/blob/c82c3580855554a31f7d6600b866aecf69cdaa6d/index.js#L29)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1481, + "description": "

This hook allows you to make changes to the express server run by ember-cli.

\n

It's passed a startOptions object which contains:

\n\n

This function is not implemented by default

\n

Uses:

\n\n

Note: that this should only be used in development, and if you need the same behavior in production you'll\nneed to configure your server.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "serverMiddleware", + "params": [ + { + "name": "startOptions", + "description": "Express server start options", + "type": "Object" + } + ], + "example": [ + "\n```js\nserverMiddleware(startOptions) {\n var app = startOptions.app;\n\n app.use(function(req, res, next) {\n // Some middleware\n });\n}\n```\n\n- [ember-cli-content-security-policy](https://github.com/rwjblue/ember-cli-content-security-policy/blob/v0.5.0/index.js#L84)\n- [history-support-addon](https://github.com/ember-cli/ember-cli/blob/v2.4.3/lib/tasks/server/middleware/history-support/index.js#L25)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1520, + "description": "

This hook allows you to make changes to the express server run by testem.

\n

This function is not implemented by default

\n

Uses:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "testemMiddleware", + "params": [ + { + "name": "app", + "description": "the express app instance", + "type": "Object" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1535, + "description": "

This hook is called before a build takes place.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "preBuild", + "params": [ + { + "name": "result", + "description": "Build object", + "type": "Object" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1543, + "description": "

This hook is called after a build is complete.

\n

It's passed a result object which contains:

\n\n

Uses:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "postBuild", + "params": [ + { + "name": "result", + "description": "Build result object", + "type": "Object" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1559, + "description": "

This hook is called after the build has been processed and the build files have been copied to the output directory

\n

It's passed a result object which contains:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "outputReady", + "params": [ + { + "name": "result", + "description": "Build result object", + "type": "Object" + } + ], + "example": [ + "\n- Opportunity to symlink or copy files elsewhere.\n- [ember-cli-rails-addon](https://github.com/rondale-sc/ember-cli-rails-addon/blob/v0.7.0/index.js#L45)\n - In this case we are using this in tandem with a rails middleware to remove a lock file.\n This allows our ruby gem to block incoming requests until after the build happens reliably." + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1576, + "description": "

This hook is called when an error occurs during the preBuild, postBuild or outputReady hooks\nfor addons, or when the build fails

\n

Uses:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "buildError", + "params": [ + { + "name": "error", + "description": "The error that was caught during the processes listed above", + "type": "Error" + } + ], + "example": [ + "\n- [ember-cli-rails-addon](https://github.com/rondale-sc/ember-cli-rails-addon/blob/v0.7.0/index.js#L11)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1592, + "description": "

Used to add preprocessors to the preprocessor registry. This is often used by addons like ember-cli-htmlbars\nand ember-cli-coffeescript to add a template or js preprocessor to the registry.

\n

Uses:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "setupPreprocessorRegistry", + "params": [ + { + "name": "type", + "description": "either `\"self\"` or `\"parent\"`", + "type": "String" + }, + { + "name": "registry", + "description": "the registry to be set up" + } + ], + "example": [ + "\n```js\nsetupPreprocessorRegistry(type, registry) {\n // ensure that broccoli-ember-hbs-template-compiler is not processing hbs files\n registry.remove('template', 'broccoli-ember-hbs-template-compiler');\n\n registry.add('template', {\n name: 'ember-cli-htmlbars',\n ext: 'hbs',\n _addon: this,\n toTree(tree) {\n var htmlbarsOptions = this._addon.htmlbarsOptions();\n return htmlbarsCompile(tree, htmlbarsOptions);\n },\n\n precompile(string) {\n var htmlbarsOptions = this._addon.htmlbarsOptions();\n var templateCompiler = htmlbarsOptions.templateCompiler;\n return utils.template(templateCompiler, string);\n }\n });\n\n if (type === 'parent') {\n this.parentRegistry = registry;\n }\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1634, + "description": "

Return value is merged into the tests tree. This lets you inject\nlinter output as test results.

\n

Uses:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "lintTree", + "params": [ + { + "name": "treeType", + "description": "`app`, `tests`, `templates`, or `addon`", + "type": "String" + }, + { + "name": "tree", + "description": "tree of files (JavaScript files for `app`, `tests`, and `addon` types)", + "type": "Tree" + } + ], + "example": [ + "\n- [ember-cli-qunit](https://github.com/ember-cli/ember-cli-qunit/blob/v1.4.1/index.js#L206)\n- [ember-cli-mocha](https://github.com/ef4/ember-cli-mocha/blob/66803037fe203b24e96dea83a2bd91de48b842e1/index.js#L101)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1653, + "description": "

Allow addons to implement contentFor method to add string output into the associated {{content-for 'foo'}} section in index.html

\n

Uses:

\n\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "contentFor", + "params": [ + { + "name": "type", + "description": "" + }, + { + "name": "config", + "description": "" + }, + { + "name": "content", + "description": "" + } + ], + "example": [ + "\n- [ember-cli-google-analytics](https://github.com/pgrippi/ember-cli-google-analytics/blob/v1.5.0/index.js#L79)" + ], + "class": "Addon", + "module": "ember-cli" + } + ], + "events": [], + "properties": [ + { + "file": "lib/models/per-bundle-addon-cache/target-instance.js", + "line": 3, + "description": "

A Symbol constant for sharing between index.js and addon-proxy.js rather than\nputting the symbol into the Symbol global cache. The symbol is used in per-bundle\ncache entries to refer to the field that points at the real instance that a Proxy\nrefers to.

\n", + "itemtype": "property", + "name": "", + "type": "Symbol", + "final": 1, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 155, + "description": "

The name of this addon.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "String", + "itemtype": "property", + "name": "name", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 164, + "description": "

The absolute path of the root directory where this addon is located.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "String", + "itemtype": "property", + "name": "root", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 173, + "description": "

The host app instance.

\n

Note: this property will only be present on addons that are a direct dependency\nof the application itself, not of other addons. It is also not available in init(),\nbut will be set before setupPreprocessorRegistry() and included() are invoked.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "EmberApp", + "itemtype": "property", + "name": "app", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 186, + "description": "

The root {{#crossLink \"Project\"}}project{{/crossLink}} to which this addon belongs.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "Project", + "itemtype": "property", + "name": "project", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 195, + "description": "

This addon's parent.

\n

If the addon is a direct dependency of an application, then parent will be the\ncorresponding {{#crossLink \"Project\"}}project{{/crossLink}} instance. If it's a\ndependency of another addon, then parent will be a reference to that addon.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "Project|Addon", + "itemtype": "property", + "name": "parent", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 208, + "description": "

The set of addons that this addon itself depends on.

\n

This array is populated from the addon's listed dependencies and any items in\nember-addon.paths in its package.json.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "Addon[]", + "itemtype": "property", + "name": "addons", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 220, + "description": "

A console-ui object that can be used\nto log messages for the user and indicate progress on long-running operations.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "UI", + "itemtype": "property", + "name": "ui", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 230, + "description": "

The contents of the addon's package.json.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "Object", + "itemtype": "property", + "name": "pkg", + "class": "Addon", + "module": "ember-cli" + } + ] + }, + "relationships": { + "parent-class": { + "data": { + "id": "CoreObject", + "type": "missing" + } + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-AmdTransformAddon.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-AmdTransformAddon.json new file mode 100644 index 000000000..3d7596ac8 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-AmdTransformAddon.json @@ -0,0 +1,44 @@ +{ + "data": { + "id": "ember-cli-5.3.0-AmdTransformAddon", + "type": "class", + "attributes": { + "name": "AmdTransformAddon", + "shortname": "AmdTransformAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/transforms/amd/index.js", + "line": 4, + "description": "

This addon is used to register a custom AMD transform for app and addons to use.

\n", + "is_constructor": 1, + "methods": [], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Blueprint.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Blueprint.json new file mode 100644 index 000000000..63829a95a --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Blueprint.json @@ -0,0 +1,1394 @@ +{ + "data": { + "id": "ember-cli-5.3.0-Blueprint", + "type": "class", + "attributes": { + "name": "Blueprint", + "shortname": "Blueprint", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "Blueprint", + "file": "lib/models/blueprint.js", + "line": 29, + "description": "

A blueprint is a bundle of template files with optional install\nlogic.

\n

Blueprints follow a simple structure. Let's take the built-in\ncontroller blueprint as an example:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n13\n14\n
blueprints/controller\n├── files\n│   ├── app\n│   │   └── __path__\n│   │       └── __name__.js\n└── index.js\n\nblueprints/controller-test\n├── files\n│   └── tests\n│       └── unit\n│           └── controllers\n│               └── __test__.js\n└── index.js
\n
\n
\n \n

Files

\n

files contains templates for the all the files to be\ninstalled into the target directory.

\n

The __name__ token is subtituted with the dasherized\nentity name at install time. For example, when the user\ninvokes ember generate controller foo then __name__ becomes\nfoo. When the --pod flag is used, for example ember generate controller foo --pod then __name__ becomes\ncontroller.

\n

The __path__ token is substituted with the blueprint\nname at install time. For example, when the user invokes\nember generate controller foo then __path__ becomes\ncontroller. When the --pod flag is used, for example\nember generate controller foo --pod then __path__\nbecomes foo (or <podModulePrefix>/foo if the\npodModulePrefix is defined). This token is primarily for\npod support, and is only necessary if the blueprint can be\nused in pod structure. If the blueprint does not require pod\nsupport, simply use the blueprint name instead of the\n__path__ token.

\n

The __test__ token is substituted with the dasherized\nentity name and appended with -test at install time.\nThis token is primarily for pod support and only necessary\nif the blueprint requires support for a pod structure. If\nthe blueprint does not require pod support, simply use the\n__name__ token instead.

\n

Template Variables (AKA Locals)

\n

Variables can be inserted into templates with\n<%= someVariableName %>.

\n

For example, the built-in util blueprint\nfiles/app/utils/__name__.js looks like this:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
export default function <%= camelizedModuleName %>() {\n  return true;\n}
\n
\n
\n \n

<%= camelizedModuleName %> is replaced with the real\nvalue at install time.

\n

The following template variables are provided by default:

\n\n

packageName is the project name as found in the project's\npackage.json.

\n

moduleName is the name of the entity being generated.

\n

The mechanism for providing custom template variables is\ndescribed below.

\n

Index.js

\n

Custom installation and uninstallation behavior can be added\nby overriding the hooks documented below. index.js should\nexport a plain object, which will extend the prototype of the\nBlueprint class. If needed, the original Blueprint prototype\ncan be accessed through the _super property.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n13\n14\n15\n16\n17\n18\n19\n20\n21\n22\n23\n24\n25\n26\n27\n28\n29\n30\n31\n
module.exports = {\n  locals(options) {\n    // Return custom template variables here.\n    return {};\n  },\n\n  normalizeEntityName(entityName) {\n    // Normalize and validate entity name here.\n    return entityName;\n  },\n\n  fileMapTokens(options) {\n    // Return custom tokens to be replaced in your files\n    return {\n      __token__(options){\n        // logic to determine value goes here\n        return 'value';\n      }\n    }\n  },\n\n  filesPath(options) {\n    return path.join(this.path, 'files');\n  },\n\n  beforeInstall(options) {},\n  afterInstall(options) {},\n  beforeUninstall(options) {},\n  afterUninstall(options) {}\n\n};
\n
\n
\n \n

Blueprint Hooks

\n

beforeInstall & beforeUninstall

\n

Called before any of the template files are processed and receives\nthe options and locals hashes as parameters. Typically used for\nvalidating any additional command line options or for any asynchronous\nsetup that is needed. As an example, the controller blueprint validates\nits --type option in this hook. If you need to run any asynchronous code,\nwrap it in a promise and return that promise from these hooks. This will\nensure that your code is executed correctly.

\n

afterInstall & afterUninstall

\n

The afterInstall and afterUninstall hooks receives the same\narguments as locals. Use it to perform any custom work after the\nfiles are processed. For example, the built-in route blueprint\nuses these hooks to add and remove relevant route declarations in\napp/router.js.

\n

Overriding Install

\n

If you don't want your blueprint to install the contents of\nfiles you can override the install method. It receives the\nsame options object described above and must return a promise.\nSee the built-in resource blueprint for an example of this.

\n", + "is_constructor": 1, + "extends": "CoreObject", + "params": [ + { + "name": "blueprintPath", + "description": "", + "type": "String", + "optional": true + }, + { + "name": "blueprintOptions", + "description": "", + "type": "Object", + "optional": true + } + ], + "methods": [ + { + "file": "lib/models/blueprint.js", + "line": 219, + "description": "

Process the options object coming from either\nthe init, install or uninstall hook.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_processOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 235, + "description": "

Hook to specify the path to the blueprint's files. By default this is\npath.join(this.path, 'files).

\n

This can be used to customize which set of files to install based on options\nor environmental variables. It defaults to the files directory within the\nblueprint's folder.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "filesPath", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "Path to the blueprints files directory.", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 252, + "description": "

Used to retrieve files for blueprint.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "files", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "Contents of the blueprint's files directory", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 275, + "itemtype": "method", + "name": "srcPath", + "params": [ + { + "name": "file", + "description": "", + "type": "String" + } + ], + "return": { + "description": "Resolved path to the file", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 284, + "description": "

Hook for normalizing entity name

\n

Use the normalizeEntityName hook to add custom normalization and\nvalidation of the provided entity name. The default hook does not\nmake any changes to the entity name, but makes sure an entity name\nis present and that it doesn't have a trailing slash.

\n

This hook receives the entity name as its first argument. The string\nreturned by this hook will be used as the new entity name.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "normalizeEntityName", + "params": [ + { + "name": "entityName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 304, + "description": "

Write a status and message to the UI

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_writeStatusToUI", + "params": [ + { + "name": "chalkColor", + "description": "", + "type": "Function" + }, + { + "name": "keyword", + "description": "", + "type": "String" + }, + { + "name": "message", + "description": "", + "type": "String" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 318, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_writeFile", + "params": [ + { + "name": "info", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 368, + "description": "

Calls an action.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_commit", + "params": [ + { + "name": "result", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "throws": { + "description": "Action doesn't exist.", + "type": "Error" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 386, + "description": "

Prints warning for pod unsupported.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkForPod", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 403, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_normalizeEntityName", + "params": [ + { + "name": "entity", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 414, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkInRepoAddonExists", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 443, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_process", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "beforeHook", + "description": "", + "type": "Function" + }, + { + "name": "process", + "description": "", + "type": "Function" + }, + { + "name": "afterHook", + "description": "", + "type": "Function" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 469, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldConvertToJS", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "fileInfo", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 523, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "convertToJS", + "params": [ + { + "name": "fileInfo", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 543, + "itemtype": "method", + "name": "install", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 570, + "itemtype": "method", + "name": "uninstall", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 592, + "description": "

Hook for running operations before install.

\n", + "itemtype": "method", + "name": "beforeInstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 599, + "description": "

Hook for running operations after install.

\n", + "itemtype": "method", + "name": "afterInstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 606, + "description": "

Hook for running operations before uninstall.

\n", + "itemtype": "method", + "name": "beforeUninstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 613, + "description": "

Hook for running operations after uninstall.

\n", + "itemtype": "method", + "name": "afterUninstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 622, + "description": "

Hook for adding custom template variables.

\n

When the following is called on the command line:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n
ember generate controller foo --type=array --dry-run isAdmin:true
\n
\n
\n \n

The object passed to locals looks like this:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n
{\n  entity: {\n    name: 'foo',\n    options: {\n      isAdmin: true\n    }\n  },\n  dryRun: true\n  type: \"array\"\n  // more keys\n}
\n
\n
\n \n

This hook must return an object or a Promise which resolves to an object.\nThe resolved object will be merged with the aforementioned default locals.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "locals", + "params": [ + { + "name": "options", + "description": "General and entity-specific options", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object|Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 657, + "description": "

Hook to add additional or override existing fileMap tokens.

\n

Use fileMapTokens to add custom fileMap tokens for use\nin the mapFile method. The hook must return an object in the\nfollowing pattern:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n
{\n  __token__(options){\n    // logic to determine value goes here\n    return 'value';\n  }\n}
\n
\n
\n \n

It will be merged with the default fileMapTokens, and can be used\nto override any of the default tokens.

\n

Tokens are used in the files folder (see files), and get replaced with\nvalues when the mapFile method is called.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "fileMapTokens", + "return": { + "description": "", + "type": "Object|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 685, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_fileMapTokens", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 741, + "description": "

Used to generate fileMap tokens for mapFile.

\n", + "itemtype": "method", + "name": "generateFileMap", + "params": [ + { + "name": "fileMapVariables", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 756, + "itemtype": "method", + "name": "buildFileInfo", + "params": [ + { + "name": "destPath", + "description": "", + "type": "Function" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + }, + { + "name": "file", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "FileInfo" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 777, + "itemtype": "method", + "name": "isUpdate", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 787, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getFileInfos", + "params": [ + { + "name": "files", + "description": "", + "type": "Array" + }, + { + "name": "intoDir", + "description": "", + "type": "String" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "file infos", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 799, + "description": "

Add update files to ignored files or reset them

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_ignoreUpdateFiles", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 812, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getFilesForInstall", + "params": [ + { + "name": "targetFiles", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "files", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 825, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkForNoMatch", + "params": [ + { + "name": "fileInfos", + "description": "", + "type": "Array" + }, + { + "name": "rawArgs", + "description": "", + "type": "String" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 839, + "itemtype": "method", + "name": "processFiles", + "params": [ + { + "name": "intoDir", + "description": "", + "type": "String" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 872, + "itemtype": "method", + "name": "processFilesForUninstall", + "params": [ + { + "name": "intoDir", + "description": "", + "type": "String" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 923, + "itemtype": "method", + "name": "mapFile", + "params": [ + { + "name": "file", + "description": "", + "type": "String" + }, + { + "name": "locals", + "description": "" + } + ], + "return": { + "description": "", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 940, + "description": "

Looks for a root token in the files folder. Must be present for\nthe blueprint to support addon tokens. The server, blueprints, and test

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "supportsAddon", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 952, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_generateFileMapVariables", + "params": [ + { + "name": "moduleName", + "description": "", + "type": "String" + }, + { + "name": "locals", + "description": "" + }, + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 982, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_locals", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1015, + "description": "

Used to add a package to the project's package.json.

\n

Generally, this would be done from the afterInstall hook, to\nensure that a package that is required by a given blueprint is\navailable.

\n", + "itemtype": "method", + "name": "addPackageToProject", + "params": [ + { + "name": "packageName", + "description": "", + "type": "String" + }, + { + "name": "target", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1037, + "description": "

Used to add multiple packages to the project's package.json.

\n

Generally, this would be done from the afterInstall hook, to\nensure that a package that is required by a given blueprint is\navailable.

\n

Expects each array item to be an object with a name. Each object\nmay optionally have a target to specify a specific version.

\n", + "itemtype": "method", + "name": "addPackagesToProject", + "params": [ + { + "name": "packages", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "example": [ + "\n```js\nthis.addPackagesToProject([\n { name: 'lodash' },\n { name: 'moment', target: '^2.17.0' },\n]);\n```" + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1086, + "description": "

Used to remove a package from the project's package.json.

\n

Generally, this would be done from the afterInstall hook, to\nensure that any package conflicts can be resolved before the\naddon is used.

\n", + "itemtype": "method", + "name": "removePackageFromProject", + "params": [ + { + "name": "packageName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1103, + "description": "

Used to remove multiple packages from the project's package.json.

\n

Generally, this would be done from the afterInstall hook, to\nensure that any package conflicts can be resolved before the\naddon is used.

\n

Expects each array item to be an object with a name property.

\n", + "itemtype": "method", + "name": "removePackagesFromProject", + "params": [ + { + "name": "packages", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1144, + "description": "

Used to add an addon to the project's package.json and run it's\ndefaultBlueprint if it provides one.

\n

Generally, this would be done from the afterInstall hook, to\nensure that a package that is required by a given blueprint is\navailable.

\n", + "itemtype": "method", + "name": "addAddonToProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1164, + "description": "

Used to add multiple addons to the project's package.json and run their\ndefaultBlueprint if they provide one.

\n

Generally, this would be done from the afterInstall hook, to\nensure that a package that is required by a given blueprint is\navailable.

\n", + "itemtype": "method", + "name": "addAddonsToProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1241, + "description": "

Used to retrieve a task with the given name. Passes the new task\nthe standard information available (like ui, analytics, project, etc).

\n", + "itemtype": "method", + "name": "taskFor", + "params": [ + { + "name": "dasherizedName", + "description": "" + } + ], + "access": "public", + "tagname": "", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1259, + "description": "

Inserts the given content into a file. If the contentsToInsert string is already\npresent in the current contents, the file will not be changed unless force option\nis passed.

\n

If options.before is specified, contentsToInsert will be inserted before\nthe first instance of that string. If options.after is specified, the\ncontents will be inserted after the first instance of that string.\nIf the string specified by options.before or options.after is not in the file,\nno change will be made.

\n

If neither options.before nor options.after are present, contentsToInsert\nwill be inserted at the end of the file.

\n

Example:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
// app/router.js\nRouter.map(function () {\n});
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n
insertIntoFile('app/router.js', '  this.route(\"admin\");', {\n  after: 'Router.map(function () {' + EOL\n}).then(function() {\n  // file has been inserted into!\n});\n
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n
// app/router.js\nRouter.map(function () {\n  this.route(\"admin\");\n});
\n
\n
\n \n", + "itemtype": "method", + "name": "insertIntoFile", + "params": [ + { + "name": "pathRelativeToProjectRoot", + "description": "", + "type": "String" + }, + { + "name": "contentsToInsert", + "description": "", + "type": "String" + }, + { + "name": "providedOptions", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1363, + "description": "

Used to retrieve a blueprint with the given name.

\n", + "itemtype": "method", + "name": "lookupBlueprint", + "params": [ + { + "name": "dasherizedName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Blueprint" + }, + "access": "public", + "tagname": "", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1380, + "static": 1, + "itemtype": "method", + "name": "lookup", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object", + "optional": true, + "props": [ + { + "name": "paths", + "description": "Extra paths to search for blueprints", + "type": "Array", + "optional": true + }, + { + "name": "ignoreMissing", + "description": "Throw a `SilentError` if a\n matching Blueprint could not be found", + "type": "Boolean", + "optional": true + }, + { + "name": "blueprintOptions", + "description": "Options object that will be passed\n along to the Blueprint instance on creation.", + "type": "Object", + "optional": true + } + ] + } + ], + "return": { + "description": "", + "type": "Blueprint" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1421, + "description": "

Loads a blueprint from given path.

\n", + "static": 1, + "itemtype": "method", + "name": "load", + "params": [ + { + "name": "blueprintPath", + "description": "", + "type": "String" + }, + { + "name": "blueprintOptions", + "description": "", + "type": "Object", + "optional": true + } + ], + "return": { + "description": "blueprint instance", + "type": "Blueprint" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1449, + "static": 1, + "itemtype": "method", + "name": "list", + "params": [ + { + "name": "options", + "description": "", + "type": "Object", + "optional": true, + "props": [ + { + "name": "paths", + "description": "Extra paths to search for blueprints", + "type": "Array", + "optional": true + } + ] + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1533, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "prepareConfirm", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1546, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "markIdenticalToBeSkipped", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1557, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "markToBeRemoved", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1566, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "gatherConfirmationMessages", + "params": [ + { + "name": "collection", + "description": "", + "type": "Array" + }, + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1580, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isIgnored", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1592, + "description": "

Combines provided lookup paths with defaults and removes\nduplicates.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "generateLookupPaths", + "params": [ + { + "name": "lookupPaths", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1607, + "description": "

Looks for a path token in the files folder. Must be present for\nthe blueprint to support pod tokens.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "hasPathToken", + "params": [ + { + "name": "files", + "description": "", + "type": "Files" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1646, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isValidFile", + "params": [ + { + "name": "fileInfo", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1660, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isFilePath", + "params": [ + { + "name": "fileInfo", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1670, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "dir", + "return": { + "description": "list of files in the given directory or and empty array if no directory exists", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1683, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getDetailedHelpPath", + "params": [ + { + "name": "thisPath", + "description": "", + "type": "String" + } + ], + "return": { + "description": "help path", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + } + ], + "events": [], + "properties": [ + { + "file": "lib/models/blueprint.js", + "line": 198, + "description": "

Indicates whether or not a blueprint is a candidate for automatic transpilation from TS to JS.\nThis property could be false in the case that the blueprint is written in JS and is not intended\nto work with TS at all, OR in the case that the blueprint is written in TS and the author does\nnot intend to support transpilation to JS.

\n", + "access": "public", + "tagname": "", + "itemtype": "property", + "name": "shouldTransformTypeScript", + "type": "Boolean", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 330, + "description": "

Actions lookup

\n", + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "_actions", + "type": "Object", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1498, + "description": "

Files that are renamed when installed into the target directory.\nThis allows including files in the blueprint that would have an effect\non another process, such as a file named .gitignore.

\n

The keys are the filenames used in the files folder.\nThe values are the filenames used in the target directory.

\n", + "static": 1, + "itemtype": "property", + "name": "renamedFiles", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1513, + "static": 1, + "itemtype": "property", + "name": "ignoredFiles", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1519, + "static": 1, + "itemtype": "property", + "name": "ignoredUpdateFiles", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1525, + "static": 1, + "itemtype": "property", + "name": "defaultLookupPaths", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + } + ] + }, + "relationships": { + "parent-class": { + "data": { + "id": "CoreObject", + "type": "missing" + } + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Builder.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Builder.json new file mode 100644 index 000000000..a168a6aa9 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Builder.json @@ -0,0 +1,175 @@ +{ + "data": { + "id": "ember-cli-5.3.0-Builder", + "type": "class", + "attributes": { + "name": "Builder", + "shortname": "Builder", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/builder.js", + "line": 14, + "description": "

Wrapper for the Broccoli Builder class.

\n", + "access": "private", + "tagname": "", + "methods": [ + { + "file": "lib/models/builder.js", + "line": 39, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "readBuildFile", + "params": [ + { + "name": "path", + "description": "The file path to read the build file from" + } + ], + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 60, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "setupBroccoliBuilder", + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 98, + "description": "

Determine whether the output path is safe to delete. If the outputPath\nappears anywhere in the parents of the project root, the build would\ndelete the project directory. In this case return false, otherwise\nreturn true.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "canDeleteOutputPath", + "params": [ + { + "name": "outputPath", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 120, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "copyToOutputPath", + "params": [ + { + "name": "inputPath", + "description": "", + "type": "String" + } + ], + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 144, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processAddonBuildSteps", + "params": [ + { + "name": "buildStep", + "description": "" + }, + { + "name": "results", + "description": "" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 169, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "build", + "return": { + "description": "", + "type": "Promise" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 244, + "description": "

Delegates to the cleanup method of the wrapped Broccoli builder.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "cleanup", + "return": { + "description": "", + "type": "Promise" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 276, + "description": "

Checks for issues in the environment that can't easily be detected until\nafter a build and issues any necessary deprecation warnings.

\n
    \n
  • check for old (pre 0.1.4) versions of heimdalljs
  • \n
\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "checkForPostBuildEnvironmentIssues", + "class": "Builder", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-CLI.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-CLI.json new file mode 100644 index 000000000..4b8bda926 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-CLI.json @@ -0,0 +1,221 @@ +{ + "data": { + "id": "ember-cli-5.3.0-CLI", + "type": "class", + "attributes": { + "name": "CLI", + "shortname": "CLI", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/cli/cli.js", + "line": 15, + "access": "private", + "tagname": "", + "is_constructor": 1, + "params": [ + { + "name": "options", + "description": "" + } + ], + "methods": [ + { + "file": "lib/cli/cli.js", + "line": 83, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "maybeMakeCommand", + "params": [ + { + "name": "commandName", + "description": "" + }, + { + "name": "commandArgs", + "description": "" + } + ], + "return": { + "description": "", + "type": "Null|CurrentCommand" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 122, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "run", + "params": [ + { + "name": "environmentPromiseHash", + "description": "", + "type": "Promise" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 231, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "callHelp", + "params": [ + { + "name": "options", + "description": "" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 272, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "logError", + "params": [ + { + "name": "error", + "description": "" + } + ], + "return": { + "description": "", + "type": "Number" + }, + "class": "CLI", + "module": "ember-cli" + } + ], + "events": [], + "properties": [ + { + "file": "lib/cli/cli.js", + "line": 22, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "name", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 28, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "ui", + "type": "UI", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 35, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "analytics", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 41, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "testing", + "type": "Boolean", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 48, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "disableDependencyChecker", + "type": "Boolean", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 55, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "root", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 61, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "npmPackage", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 67, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "instrumentation", + "class": "CLI", + "module": "ember-cli" + } + ] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Command.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Command.json new file mode 100644 index 000000000..523ca3833 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Command.json @@ -0,0 +1,466 @@ +{ + "data": { + "id": "ember-cli-5.3.0-Command", + "type": "class", + "attributes": { + "name": "Command", + "shortname": "Command", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/command.js", + "line": 42, + "methods": [ + { + "file": "lib/models/command.js", + "line": 153, + "description": "

Registers options with command. This method provides the ability to extend or override command options.\nExpects an object containing anonymousOptions or availableOptions, which it will then merge with\nexisting availableOptions before building the optionsAliases which are used to define shorthands.

\n", + "itemtype": "method", + "name": "registerOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 179, + "description": "

Called when command is interrupted from outside, e.g. ctrl+C or process kill\nCan be used to cleanup artifacts produced by command and control process exit code

\n", + "itemtype": "method", + "name": "onInterrupt", + "return": { + "description": "if rejected promise then result of promise will be used as an exit code", + "type": "Promise|undefined" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 207, + "description": "

Looks up for the task and runs\nIt also keeps the reference for the current active task\nKeeping reference for the current task allows to cleanup task on interruption

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "runTask", + "throws": { + "description": "on attempt to run concurrent task", + "type": "Error" + }, + "params": [ + { + "name": "name", + "description": "Task name from the tasks registry. Should be capitalized", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "Task run", + "type": "Promise" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 248, + "description": "

Hook for extending a command before it is run in the cli.run command.\nMost common use case would be to extend availableOptions.

\n", + "itemtype": "method", + "name": "beforeRun", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 256, + "itemtype": "method", + "name": "validateAndRun", + "return": { + "description": "", + "type": "Promise" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 321, + "description": "

Reports if the given command has a command line option by a given name

\n", + "itemtype": "method", + "name": "hasOption", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 337, + "description": "

Merges any options with duplicate keys in the availableOptions array.\nUsed primarily by registerOptions.

\n", + "itemtype": "method", + "name": "mergeDuplicateOption", + "params": [ + { + "name": "key", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 372, + "description": "

Normalizes option, filling in implicit values

\n", + "itemtype": "method", + "name": "normalizeOption", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 384, + "description": "

Assigns option

\n", + "itemtype": "method", + "name": "assignOption", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + }, + { + "name": "parsedOptions", + "description": "", + "type": "Object" + }, + { + "name": "commandOptions", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 417, + "description": "

Validates option

\n", + "itemtype": "method", + "name": "validateOption", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 443, + "description": "

Parses alias for an option and adds it to optionsAliases

\n", + "itemtype": "method", + "name": "parseAlias", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + }, + { + "name": "alias", + "description": "", + "type": "Object|String" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 488, + "itemtype": "method", + "name": "assignAlias", + "params": [ + { + "name": "option", + "description": "" + }, + { + "name": "alias", + "description": "" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 503, + "description": "

Validates alias value

\n", + "itemtype": "method", + "name": "validateAlias", + "params": [ + { + "name": "alias", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 535, + "description": "

Parses command arguments and processes

\n", + "itemtype": "method", + "name": "parseArgs", + "params": [ + { + "name": "commandArgs", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object|null" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 591, + "itemtype": "method", + "name": "run", + "params": [ + { + "name": "commandArgs", + "description": "" + } + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 601, + "description": "

Prints basic help for the command.

\n

Basic help looks like this:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n
ember generate <blueprint> <options...>\n  Generates new code from blueprints\n  aliases: g\n  --dry-run (Default: false)\n  --verbose (Default: false)
\n
\n
\n \n

The default implementation is designed to cover all bases\nbut may be overridden if necessary.

\n", + "itemtype": "method", + "name": "printBasicHelp", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 632, + "description": "

Prints detailed help for the command.

\n

The default implementation is no-op and should be overridden\nfor each command where further help text is required.

\n", + "itemtype": "method", + "name": "printDetailedHelp", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 642, + "itemtype": "method", + "name": "getJson", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + } + ], + "events": [], + "properties": [ + { + "file": "lib/models/command.js", + "line": 51, + "description": "

The description of what this command does.

\n", + "final": 1, + "itemtype": "property", + "name": "description", + "type": "String", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 60, + "description": "

Does this command work everywhere or just inside or outside of projects.

\n

Possible values:

\n
    \n
  • insideProject
  • \n
  • outsideProject
  • \n
  • everywhere
  • \n
\n", + "final": 1, + "itemtype": "property", + "name": "works", + "type": "String", + "default": "`insideProject`", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 81, + "final": 1, + "itemtype": "property", + "name": "isWithinProject", + "type": "Boolean", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 88, + "description": "

The name of the command.

\n", + "final": 1, + "itemtype": "property", + "name": "name", + "type": "String", + "example": [ + " `new` or `generate`" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 100, + "description": "

An array of aliases for the command

\n", + "final": 1, + "itemtype": "property", + "name": "aliases", + "type": "Array", + "example": [ + " `['g']` for the `generate` command" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 117, + "description": "

An array of available options for the command

\n", + "final": 1, + "itemtype": "property", + "name": "availableOptions", + "type": "Array", + "example": [ + "\n```js\navailableOptions: [\n { name: 'dry-run', type: Boolean, default: false, aliases: ['d'] },\n { name: 'verbose', type: Boolean, default: false, aliases: ['v'] },\n { name: 'blueprint', type: String, default: 'app', aliases: ['b'] },\n { name: 'skip-npm', type: Boolean, default: false, aliases: ['sn'] },\n { name: 'skip-git', type: Boolean, default: false, aliases: ['sg'] },\n { name: 'directory', type: String , aliases: ['dir'] }\n],\n```" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 137, + "description": "

An array of anonymous options for the command

\n", + "final": 1, + "itemtype": "property", + "name": "anonymousOptions", + "type": "Array", + "example": [ + "\n```js\nanonymousOptions: [\n ''\n],\n```" + ], + "class": "Command", + "module": "ember-cli" + } + ] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-DefaultPackager.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-DefaultPackager.json new file mode 100644 index 000000000..d99ffc500 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-DefaultPackager.json @@ -0,0 +1,43 @@ +{ + "data": { + "id": "ember-cli-5.3.0-DefaultPackager", + "type": "class", + "attributes": { + "name": "DefaultPackager", + "shortname": "DefaultPackager", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "file": "lib/broccoli/default-packager.js", + "line": 98, + "description": "

Responsible for packaging Ember.js application.

\n", + "is_constructor": 1, + "methods": [], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-EmberAddon.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-EmberAddon.json new file mode 100644 index 000000000..8bdfb8f36 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-EmberAddon.json @@ -0,0 +1,663 @@ +{ + "data": { + "id": "ember-cli-5.3.0-EmberAddon", + "type": "class", + "attributes": { + "name": "EmberAddon", + "shortname": "EmberAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/broccoli/ember-addon.js", + "line": 13, + "description": "

EmberAddon is used during addon development.

\n", + "extends": "EmberApp", + "is_constructor": 1, + "params": [ + { + "name": "defaults", + "description": "", + "type": "Object", + "optional": true + }, + { + "name": "options", + "description": "Configuration options", + "type": "Object", + "optional": true, + "optdefault": "{}" + } + ], + "methods": [ + { + "file": "lib/broccoli/ember-app.js", + "line": 180, + "description": "

Initializes the tests and hinting properties.

\n

Defaults to false unless ember test was used or this is not a production build.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initTestsAndHinting", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 196, + "description": "

Initializes the project property from options.project or the\nclosest Ember CLI project from the current working directory.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 217, + "description": "

Initializes the options property from the options parameter and\na set of default values from Ember CLI.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 334, + "description": "

Resolves a path relative to the project's root

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_resolveLocal", + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 344, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initVendorFiles", + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 371, + "description": "

Returns the environment name

\n", + "access": "public", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "env", + "return": { + "description": "Environment name", + "type": "String" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 383, + "description": "

Delegates to broccoli-concat with the sourceMapConfig option set to options.sourcemaps.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_concatFiles", + "params": [ + { + "name": "tree", + "description": "" + }, + { + "name": "options", + "description": "" + } + ], + "return": { + "description": "" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 398, + "description": "

Checks the result of addon.isEnabled() if it exists, defaults to true otherwise.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonEnabled", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 410, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonDisabledByExclude", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 421, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonDisabledByInclude", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 432, + "description": "

Returns whether an addon should be added to the project

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldIncludeAddon", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 448, + "description": "

Calls the included hook on addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_notifyAddonIncluded", + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 484, + "description": "

Calls the importTransforms hook on addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_importAddonTransforms", + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 533, + "description": "

Loads and initializes addons for this project.\nCalls initializeAddons on the Project.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "initializeAddons", + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 560, + "description": "

Returns a list of trees for a given type, returned by all addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonTreesFor", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + } + ], + "return": { + "description": "List of trees", + "type": "Array" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 572, + "description": "

Runs addon post-processing on a given tree and returns the processed tree.

\n

This enables addons to do process immediately after the preprocessor for a\ngiven type is run, but before concatenation occurs. If an addon wishes to\napply a transform before the preprocessors run, they can instead implement the\npreprocessTree hook.

\n

To utilize this addons implement postprocessTree hook.

\n

An example, would be to apply some broccoli transform on all JS files, but\nonly after the existing pre-processors have run.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n
module.exports = {\n  name: 'my-cool-addon',\n  postprocessTree(type, tree) {\n    if (type === 'js') {\n      return someBroccoliTransform(tree);\n    }\n\n    return tree;\n  }\n}
\n
\n
\n \n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonPostprocessTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 609, + "description": "

Runs addon pre-processing on a given tree and returns the processed tree.

\n

This enables addons to do process immediately before the preprocessor for a\ngiven type is run. If an addon wishes to apply a transform after the\npreprocessors run, they can instead implement the postprocessTree hook.

\n

To utilize this addons implement preprocessTree hook.

\n

An example, would be to remove some set of files before the preprocessors run.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n
var stew = require('broccoli-stew');\n\nmodule.exports = {\n  name: 'my-cool-addon',\n  preprocessTree(type, tree) {\n    if (type === 'js' && type === 'template') {\n      return stew.rm(tree, someGlobPattern);\n    }\n\n    return tree;\n  }\n}
\n
\n
\n \n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonPreprocessTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 645, + "description": "

Runs addon lintTree hooks and returns a single tree containing all\ntheir output.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonLintTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 664, + "description": "

Imports legacy imports in this.vendorFiles

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "populateLegacyFiles", + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 841, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_podTemplatePatterns", + "return": { + "description": "An array of regular expressions.", + "type": "Array" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1048, + "description": "

Runs the app, tests and templates trees through the chain of addons that produces lint trees.

\n

Those lint trees are afterwards funneled into the tests folder, babel-ified and returned as an array.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getLintTests", + "return": { + "description": "", + "type": "Array" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1088, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "return": { + "description": "Alias to the project's dependencies function", + "type": "Object" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1097, + "description": "

Imports an asset into the application.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "import", + "params": [ + { + "name": "asset", + "description": "Either a path to the asset or an object with environment names and paths as key-value pairs.", + "type": "Object|String" + }, + { + "name": "options", + "description": "Options object", + "type": "Object", + "optional": true, + "props": [ + { + "name": "type", + "description": "Either 'vendor' or 'test'", + "type": "String", + "optional": true, + "optdefault": "'vendor'" + }, + { + "name": "prepend", + "description": "Whether or not this asset should be prepended", + "type": "Boolean", + "optional": true, + "optdefault": "false" + }, + { + "name": "destDir", + "description": "Destination directory, defaults to the name of the directory the asset is in", + "type": "String", + "optional": true + }, + { + "name": "outputFile", + "description": "Specifies the output file for given import. Defaults to assets/vendor.{js,css}", + "type": "String", + "optional": true + }, + { + "name": "using", + "description": "Specifies the array of transformations to be done on the asset. Can do an amd shim and/or custom transformation", + "type": "Array", + "optional": true + } + ] + } + ], + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1143, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_import", + "params": [ + { + "name": "assetPath", + "description": "", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "directory", + "description": "", + "type": "String" + }, + { + "name": "subdirectory", + "description": "", + "type": "String" + }, + { + "name": "extension", + "description": "", + "type": "String" + } + ], + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1228, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getAssetPath", + "params": [ + { + "name": "asset", + "description": "", + "type": "(Object|String)" + } + ], + "return": { + "description": "assetPath", + "type": "(String|undefined)" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1269, + "description": "

Returns an array of trees for this application

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "toArray", + "return": { + "description": "An array of trees", + "type": "Array" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1306, + "description": "

Returns the merged tree for this application

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "toTree", + "params": [ + { + "name": "additionalTrees", + "description": "Array of additional trees to merge", + "type": "Array", + "optional": true + } + ], + "return": { + "description": "Merged tree for this application", + "type": "Tree" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": { + "id": "ember-cli-5.3.0-EmberApp", + "type": "class" + } + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-EmberApp.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-EmberApp.json new file mode 100644 index 000000000..c8833f155 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-EmberApp.json @@ -0,0 +1,610 @@ +{ + "data": { + "id": "ember-cli-5.3.0-EmberApp", + "type": "class", + "attributes": { + "name": "EmberApp", + "shortname": "EmberApp", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/broccoli/ember-app.js", + "line": 60, + "description": "

EmberApp is the main class Ember CLI uses to manage the Broccoli trees\nfor your application. It is very tightly integrated with Broccoli and has\na toTree() method you can use to get the entire tree for your application.

\n

Available init options:

\n
    \n
  • storeConfigInMeta, defaults to true
  • \n
  • autoRun, defaults to true
  • \n
  • outputPaths, defaults to {}
  • \n
  • minifyCSS, defaults to `{enabled: !!isProduction,options: { relativeTo: 'assets' }}
  • \n
  • sourcemaps, defaults to {}
  • \n
  • trees, defaults to {}
  • \n
  • vendorFiles, defaults to {}
  • \n
  • addons, defaults to { exclude: [], include: [] }
  • \n
\n", + "is_constructor": 1, + "params": [ + { + "name": "defaults", + "description": "", + "type": "Object", + "optional": true + }, + { + "name": "options", + "description": "Configuration options", + "type": "Object", + "optional": true, + "optdefault": "{}" + } + ], + "methods": [ + { + "file": "lib/broccoli/ember-app.js", + "line": 180, + "description": "

Initializes the tests and hinting properties.

\n

Defaults to false unless ember test was used or this is not a production build.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initTestsAndHinting", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 196, + "description": "

Initializes the project property from options.project or the\nclosest Ember CLI project from the current working directory.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 217, + "description": "

Initializes the options property from the options parameter and\na set of default values from Ember CLI.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 334, + "description": "

Resolves a path relative to the project's root

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_resolveLocal", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 344, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initVendorFiles", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 371, + "description": "

Returns the environment name

\n", + "access": "public", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "env", + "return": { + "description": "Environment name", + "type": "String" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 383, + "description": "

Delegates to broccoli-concat with the sourceMapConfig option set to options.sourcemaps.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_concatFiles", + "params": [ + { + "name": "tree", + "description": "" + }, + { + "name": "options", + "description": "" + } + ], + "return": { + "description": "" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 398, + "description": "

Checks the result of addon.isEnabled() if it exists, defaults to true otherwise.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonEnabled", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 410, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonDisabledByExclude", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 421, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonDisabledByInclude", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 432, + "description": "

Returns whether an addon should be added to the project

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldIncludeAddon", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 448, + "description": "

Calls the included hook on addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_notifyAddonIncluded", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 484, + "description": "

Calls the importTransforms hook on addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_importAddonTransforms", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 533, + "description": "

Loads and initializes addons for this project.\nCalls initializeAddons on the Project.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "initializeAddons", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 560, + "description": "

Returns a list of trees for a given type, returned by all addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonTreesFor", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + } + ], + "return": { + "description": "List of trees", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 572, + "description": "

Runs addon post-processing on a given tree and returns the processed tree.

\n

This enables addons to do process immediately after the preprocessor for a\ngiven type is run, but before concatenation occurs. If an addon wishes to\napply a transform before the preprocessors run, they can instead implement the\npreprocessTree hook.

\n

To utilize this addons implement postprocessTree hook.

\n

An example, would be to apply some broccoli transform on all JS files, but\nonly after the existing pre-processors have run.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n
module.exports = {\n  name: 'my-cool-addon',\n  postprocessTree(type, tree) {\n    if (type === 'js') {\n      return someBroccoliTransform(tree);\n    }\n\n    return tree;\n  }\n}
\n
\n
\n \n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonPostprocessTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 609, + "description": "

Runs addon pre-processing on a given tree and returns the processed tree.

\n

This enables addons to do process immediately before the preprocessor for a\ngiven type is run. If an addon wishes to apply a transform after the\npreprocessors run, they can instead implement the postprocessTree hook.

\n

To utilize this addons implement preprocessTree hook.

\n

An example, would be to remove some set of files before the preprocessors run.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n
var stew = require('broccoli-stew');\n\nmodule.exports = {\n  name: 'my-cool-addon',\n  preprocessTree(type, tree) {\n    if (type === 'js' && type === 'template') {\n      return stew.rm(tree, someGlobPattern);\n    }\n\n    return tree;\n  }\n}
\n
\n
\n \n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonPreprocessTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 645, + "description": "

Runs addon lintTree hooks and returns a single tree containing all\ntheir output.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonLintTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 664, + "description": "

Imports legacy imports in this.vendorFiles

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "populateLegacyFiles", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 841, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_podTemplatePatterns", + "return": { + "description": "An array of regular expressions.", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1048, + "description": "

Runs the app, tests and templates trees through the chain of addons that produces lint trees.

\n

Those lint trees are afterwards funneled into the tests folder, babel-ified and returned as an array.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getLintTests", + "return": { + "description": "", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1088, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "return": { + "description": "Alias to the project's dependencies function", + "type": "Object" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1097, + "description": "

Imports an asset into the application.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "import", + "params": [ + { + "name": "asset", + "description": "Either a path to the asset or an object with environment names and paths as key-value pairs.", + "type": "Object|String" + }, + { + "name": "options", + "description": "Options object", + "type": "Object", + "optional": true, + "props": [ + { + "name": "type", + "description": "Either 'vendor' or 'test'", + "type": "String", + "optional": true, + "optdefault": "'vendor'" + }, + { + "name": "prepend", + "description": "Whether or not this asset should be prepended", + "type": "Boolean", + "optional": true, + "optdefault": "false" + }, + { + "name": "destDir", + "description": "Destination directory, defaults to the name of the directory the asset is in", + "type": "String", + "optional": true + }, + { + "name": "outputFile", + "description": "Specifies the output file for given import. Defaults to assets/vendor.{js,css}", + "type": "String", + "optional": true + }, + { + "name": "using", + "description": "Specifies the array of transformations to be done on the asset. Can do an amd shim and/or custom transformation", + "type": "Array", + "optional": true + } + ] + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1143, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_import", + "params": [ + { + "name": "assetPath", + "description": "", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "directory", + "description": "", + "type": "String" + }, + { + "name": "subdirectory", + "description": "", + "type": "String" + }, + { + "name": "extension", + "description": "", + "type": "String" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1228, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getAssetPath", + "params": [ + { + "name": "asset", + "description": "", + "type": "(Object|String)" + } + ], + "return": { + "description": "assetPath", + "type": "(String|undefined)" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1269, + "description": "

Returns an array of trees for this application

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "toArray", + "return": { + "description": "An array of trees", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1306, + "description": "

Returns the merged tree for this application

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "toTree", + "params": [ + { + "name": "additionalTrees", + "description": "Array of additional trees to merge", + "type": "Array", + "optional": true + } + ], + "return": { + "description": "Merged tree for this application", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [ + { + "type": "class", + "id": "ember-cli-5.3.0-EmberAddon" + } + ] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-HardwareInfo.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-HardwareInfo.json new file mode 100644 index 000000000..af62d8881 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-HardwareInfo.json @@ -0,0 +1,182 @@ +{ + "data": { + "id": "ember-cli-5.3.0-HardwareInfo", + "type": "class", + "attributes": { + "name": "HardwareInfo", + "shortname": "HardwareInfo", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "methods": [ + { + "file": "lib/models/hardware-info.js", + "line": 232, + "description": "

Indicates whether the host is running on battery power. This can cause\nperformance degredation.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isUsingBattery", + "params": [ + { + "name": "platform", + "description": "The current hardware platform.\n USED FOR TESTING ONLY.", + "type": "String=process.platform" + } + ], + "return": { + "description": "`true` iff the host is running on battery power or\n `false` if not. `null` if the battery status\n cannot be determined.", + "type": "Null|Boolean" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 266, + "description": "

Determines the amount of swap/virtual memory currently in use.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "memorySwapUsed", + "params": [ + { + "name": "platform", + "description": "The current hardware platform.\n USED FOR TESTING ONLY.", + "type": "String=process.platform" + } + ], + "return": { + "description": "The amount of used swap space, in bytes. `null` if\n the used swap space cannot be determined.", + "type": "Null|Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 297, + "description": "

Determines the total amount of memory available to the host, as from\nos.totalmem.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "memoryTotal", + "return": { + "description": "The total memory in bytes.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 309, + "description": "

Determines the amount of memory currently being used by the current Node\nprocess, as from process.memoryUsage.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "memoryUsed", + "return": { + "description": "The Resident Set Size, as reported by\n `process.memoryUsage`.", + "type": "Object" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 322, + "description": "

Determines the number of logical processors available to the host, as from\nos.cpus.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processorCount", + "return": { + "description": "The number of logical processors.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 334, + "description": "

Determines the average processor load across the system. This is\nexpressed as a fractional number between 0 and the number of logical\nprocessors.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processorLoad", + "params": [ + { + "name": "platform", + "description": "The current hardware platform.\n USED FOR TESTING ONLY.", + "type": "String=process.platform" + } + ], + "return": { + "description": "The one-, five-, and fifteen-minute processor load\n averages.", + "type": "Array" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 358, + "description": "

Gets the speed of the host's processors.

\n

If more than one processor is found, the average of their speeds is taken.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processorSpeed", + "return": { + "description": "The average processor speed in MHz.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 373, + "description": "

Determines the time since the host was started, as from os.uptime.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "uptime", + "return": { + "description": "The number of seconds since the host was started.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-HistorySupportAddon.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-HistorySupportAddon.json new file mode 100644 index 000000000..d2d12c8c8 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-HistorySupportAddon.json @@ -0,0 +1,44 @@ +{ + "data": { + "id": "ember-cli-5.3.0-HistorySupportAddon", + "type": "class", + "attributes": { + "name": "HistorySupportAddon", + "shortname": "HistorySupportAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/history-support/index.js", + "line": 8, + "description": "

This addon is used to serve the index.html file at every requested\nURL that begins with rootURL and is expecting text/html output.

\n", + "is_constructor": 1, + "methods": [], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Instrumentation.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Instrumentation.json new file mode 100644 index 000000000..2a84b0324 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Instrumentation.json @@ -0,0 +1,156 @@ +{ + "data": { + "id": "ember-cli-5.3.0-Instrumentation", + "type": "class", + "attributes": { + "name": "Instrumentation", + "shortname": "Instrumentation", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/instrumentation.js", + "line": 38, + "description": "

An instance of this class is used for invoking the instrumentation\nhooks on addons.

\n

The instrumentation types currently supported are:

\n
    \n
  • init
  • \n
  • build
  • \n
  • command
  • \n
  • shutdown
  • \n
\n", + "access": "private", + "tagname": "", + "methods": [ + { + "file": "lib/models/host-info-cache.js", + "line": 16, + "description": "

Given a path (calculated as part of getHostAddonInfo), return the correct\n\"bundle host\". A bundle host is considered the project or lazy engine.

\n

For example, given the following package structure:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
 --Project--\n  /      \\\n /        \\
\n
\n
\n \n

Lazy Engine A
Addon A\n |\n |\n Lazy Engine B\n /
/
Lazy Engine A Lazy Engine C

\n

The provided paths for lazy engine A would look like:

\n
    \n
  • [Project]
  • \n
  • [Project, Addon A, Lazy Engine B]
  • \n
\n

For this project structure, this function would return [Project, [Project]]

\n

Similarly, given the following project structure:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n
       --Project--\n        /      \\\n       /        \\\nLazy Engine A    \\\n     /        Lazy Engine B\n    /               |\n   /                |
\n
\n
\n \n

Lazy Engine C Lazy Engine C

\n

The provided paths for lazy engine C would look like:

\n
    \n
  • [Project, Lazy Engine A]
  • \n
  • [Project, Lazy Engine B]
  • \n
\n

In this case, the host is the project and would also return [Project, [Project]]

\n", + "itemtype": "method", + "name": "_findNearestBundleHost", + "params": [ + { + "name": "paths", + "description": "The found paths to a given bundle host", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "[PackageInfo, PackageInfo[]]" + }, + "access": "private", + "tagname": "", + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 93, + "description": "

Returns a Set of package-info objects that a given bundle host is\ndirectly responsible for bundling (i.e., it excludes other bundle\nhosts/lazy engines when it encounters these)

\n", + "itemtype": "method", + "name": "_getBundledPackageInfos", + "params": [ + { + "name": "pkgInfoToStartAt", + "description": "", + "type": "PackageInfo" + } + ], + "return": { + "description": "", + "type": "Set" + }, + "access": "private", + "tagname": "", + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 147, + "description": "

This function intends to return a common host for a bundle host (lazy engine). The root\npackage info should be the starting point (i.e., the project's package info). We do this\nby performing a breadth-first traversal until we find the intended lazy engine (represented\nas a package-info & the 1st argument passed to this function). As part of the traversal, we keep\ntrack of all paths to said engine; then, once we find the intended engine we use this to determine\nthe nearest common host amongst all shortest paths.

\n

Some context:

\n

For a given engine/bundle host, this finds the lowest common ancestor that is considered a\nhost amongst all engines by the same name in the project.

\n

For example, given the following package structure:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
 --Project--\n  /      \\\n /        \\
\n
\n
\n \n

Lazy Engine A
Addon A\n |\n |\n Lazy Engine B\n /
/
Lazy Engine A Lazy Engine C

\n
    \n
  • The LCA host for Lazy Engine A is the project
  • \n
  • The LCA host for Lazy Engine B is the project
  • \n
  • The LCA host for Lazy Engine C is Lazy Engine B
  • \n
\n

This also returns hostAndAncestorBundledPackageInfos, which are all bundled addons above a given host:

\n
    \n
  • hostAndAncestorBundledPackageInfos for lazy engine A includes all non-lazy dependencies of its LCA host & above (in this case, just the project)
  • \n
  • hostAndAncestorBundledPackageInfos for lazy engine B includes all non-lazy dependencies of its LCA host & above (in this case, just the project)
  • \n
  • hostAndAncestorBundledPackageInfos for lazy engine C includes non-lazy deps of lazy engine B & non-lazy deps of the project (LCA host & above)
  • \n
\n

This is intended to mimic the behavior of ancestorHostAddons in ember-engines:\nhttps://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/engine-addon.js#L333

\n

Unfortunately, we can't easily repurpose the logic in ember-engines since the algorithm has to be different;\nin ember-engines we need access to the actual addon instance, however, this is intended to be used during\naddon instantiation, so we only have access to package-info objects. In having said this, we can repurpose\nthe hostPackageInfo to determine the LCA host; see below findLCAHost.

\n", + "itemtype": "method", + "name": "getHostAddonInfo", + "params": [ + { + "name": "packageInfoForLazyEngine", + "description": "", + "type": "PackageInfo" + } + ], + "return": { + "description": "}", + "type": " hostPackageInfo: PackageInfo, hostAndAncestorBundledPackageInfos: Set" + }, + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 270, + "description": "

This returns the LCA host for a given engine; we use the associated package info\nto compute this (see getHostAddonInfo above); this finds the lowest common ancestor\nthat is considered a host amongst all engines by the same name in the project. This\nfunction is intended to replace the original behavior in ember-engines.

\n

For more info, see the original implementation here:

\n

https://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/utils/find-lca-host.js

\n", + "itemtype": "method", + "name": "findLCAHost", + "params": [ + { + "name": "engineInstance", + "description": "", + "type": "EngineAddon" + } + ], + "return": { + "description": "", + "type": "EngineAddon|EmberApp" + }, + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/instantiate-addons.js", + "line": 12, + "description": "

Create instances of a set of \"child\" addons for a parent addon or project.

\n", + "itemtype": "method", + "name": "instantiateAddons", + "params": [ + { + "name": "parent", + "description": "an Addon or Project that is the direct containing object of the list\n of children defined in addonPackages.", + "type": "Object" + }, + { + "name": "project", + "description": "the project that contains the parent (so either the addon's project\n if parent is an addon, or the project itself if it is a project). It is possible when\n constructing custom addon instances that the project will actually be undefined--various\n addon tests do this, for example.", + "type": "Project" + }, + { + "name": "a", + "description": "map of addon name (including scope) to an AddonInfo with the name, path and\n 'pkg' object for that addon's package.json). These are what is turned into addons.", + "type": "Object" + } + ], + "class": "Instrumentation", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-NodeModulesList.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-NodeModulesList.json new file mode 100644 index 000000000..85826d891 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-NodeModulesList.json @@ -0,0 +1,124 @@ +{ + "data": { + "id": "ember-cli-5.3.0-NodeModulesList", + "type": "class", + "attributes": { + "name": "NodeModulesList", + "shortname": "NodeModulesList", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 7, + "description": "

Class that stores information about a node_modules directory (i.e., the\npackages and subdirectories in the directory). It is one of the\ntwo types of entries in a PackageInfoCache. It is only created by the\nPackageInfoCache.

\n", + "access": "public", + "tagname": "", + "methods": [ + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 43, + "description": "

Given error data, add an ErrorEntry to the ErrorList for this object.

\n", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addError", + "params": [ + { + "name": "errorType", + "description": "one of the Errors.ERROR_* constants.", + "type": "String" + }, + { + "name": "errorData", + "description": "any error data relevant to the type of error\nbeing created. See showErrors().", + "type": "Object" + } + ], + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 56, + "description": "

Indicate if there are any errors in the NodeModulesList itself (not\nincluding errors within the individual entries).

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hasErrors", + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 67, + "description": "

Add an entry (PackageInfo or NodeModulesList instance) to the entries\nfor this list. This is only called by PackageInfoCache. It is not intended\nto be called directly by anything else.

\n", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addEntry", + "params": [ + { + "name": "entryName", + "description": "the name of the entry, i.e., the name of the\nfile or subdirectory in the directory listing.", + "type": "String" + }, + { + "name": "entryVal", + "description": "the PackageInfo or NodeModulesList tha corresponds\nto the given entry name in the file system.", + "type": "Object" + } + ], + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 84, + "description": "

Return a PackageInfo object for a given package name (which may include\na scope)

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "findPackage", + "params": [ + { + "name": "packageName", + "description": "the name (possibly including a scope) of\n the PackageInfo the caller wants returned.", + "type": "String" + } + ], + "return": { + "description": "the desired PackageInfo if one exists for the given name, else null." + }, + "class": "NodeModulesList", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-NpmTask.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-NpmTask.json new file mode 100644 index 000000000..e1bff8c16 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-NpmTask.json @@ -0,0 +1,79 @@ +{ + "data": { + "id": "ember-cli-5.3.0-NpmTask", + "type": "class", + "attributes": { + "name": "NpmTask", + "shortname": "NpmTask", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/npm-task.js", + "line": 17, + "access": "private", + "tagname": "", + "is_constructor": 1, + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "methods": [ + { + "file": "lib/tasks/build-watch.js", + "line": 53, + "description": "

Exit silently

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "NpmTask", + "module": "ember-cli" + }, + { + "file": "lib/tasks/npm-task.js", + "line": 131, + "description": "

This method will determine what package manager (npm or yarn) should be\nused to install the npm dependencies.

\n

Setting this.useYarn to true or false will force the use of yarn\nor npm respectively.

\n

If this.useYarn is not set we check if yarn.lock exists and if\nyarn is available and in that case set useYarn to true.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "findPackageManager", + "return": { + "description": "", + "type": "Promise" + }, + "class": "NpmTask", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-PackageInfo.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-PackageInfo.json new file mode 100644 index 000000000..f707478fb --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-PackageInfo.json @@ -0,0 +1,374 @@ +{ + "data": { + "id": "ember-cli-5.3.0-PackageInfo", + "type": "class", + "attributes": { + "name": "PackageInfo", + "shortname": "PackageInfo", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/package-info-cache/package-info.js", + "line": 50, + "description": "

Class that stores information about a single package (directory tree with\na package.json and other data, like and Addon or Project.) It is one of the\ntwo types of entries in a PackageInfoCache. It is only created by the\nPackageInfoCache.

\n", + "access": "public", + "tagname": "", + "methods": [ + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 96, + "description": "

Given error data, add an ErrorEntry to the ErrorList for this object.\nThis is used by the _readPackage and _readNodeModulesList methods. It\nshould not be called otherwise.

\n", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addError", + "params": [ + { + "name": "errorType", + "description": "one of the Errors.ERROR_* constants.", + "type": "String" + }, + { + "name": "errorData", + "description": "any error data relevant to the type of error\nbeing created. See showErrors().", + "type": "Object" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 111, + "description": "

Indicate if there are any errors in the ErrorList for this package. Note that this does\nNOT indicate if there are any errors in the objects referred to by this package (e.g.,\ninternal addons or dependencies).

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hasErrors", + "params": [ + { + "name": "true", + "description": "if there are errors in the ErrorList, else false.", + "type": "Boolean" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 124, + "description": "

Add a reference to an in-repo addon PackageInfo object.

\n", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addInRepoAddon", + "params": [ + { + "name": "inRepoAddonPkg", + "description": "the PackageInfo for the in-repo addon", + "type": "PackageInfo" + } + ], + "return": { + "description": "null" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 139, + "description": "

Add a reference to an internal addon PackageInfo object.\n\"internal\" addons (note: not in-repo addons) only exist in\nProjects, not other packages. Since the cache is loaded from\n'loadProject', this can be done appropriately.

\n", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addInternalAddon", + "params": [ + { + "name": "internalAddonPkg", + "description": "the PackageInfo for the internal addon", + "type": "PackageInfo" + } + ], + "return": { + "description": "null" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 157, + "description": "

For each dependency in the given list, find the corresponding\nPackageInfo object in the cache (going up the file tree if\nnecessary, as in the node resolution algorithm). Return a map\nof the dependencyName to PackageInfo object. Caller can then\nstore it wherever they like.

\n

Note: this is not to be called until all packages that can be have\nbeen added to the cache.

\n

Note: this is for ALL dependencies, not just addons. To get just\naddons, filter the result by calling pkgInfo.isForAddon().

\n

Note: this is only intended for use from PackageInfoCache._resolveDependencies.\nIt is not to be called directly by anything else.

\n", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addDependencies", + "params": [ + { + "name": "dependencies", + "description": "value of 'dependencies' or 'devDependencies'\n attributes of a package.json.", + "type": "PackageInfo" + } + ], + "return": { + "description": "a JavaScript object keyed on dependency name/path with\n values the corresponding PackageInfo object from the cache.", + "type": "Object" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 226, + "description": "

Indicate if this packageInfo is for a project. Should be called only after the project\nhas been loaded (see {@link PackageInfoCache#loadProject} for details).

\n", + "itemtype": "method", + "name": "isForProject", + "return": { + "description": "true if this packageInfo is for a Project, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 237, + "description": "

Indicate if this packageInfo is for an Addon.

\n", + "itemtype": "method", + "name": "isForAddon", + "return": { + "description": "true if this packageInfo is for an Addon, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 247, + "description": "

Indicate if this packageInfo represents an engine.

\n", + "itemtype": "method", + "name": "isForEngine", + "return": { + "description": "true if this pkgInfo is configured as an engine & false otherwise", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 257, + "description": "

Indicate if this packageInfo represents a lazy engine.

\n", + "itemtype": "method", + "name": "isForLazyEngine", + "return": { + "description": "true if this pkgInfo is configured as an engine and the\nmodule this represents has lazyLoading enabled, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 268, + "description": "

For use with the PerBundleAddonCache, is this packageInfo representing a\nbundle host (for now, a Project or a lazy engine).

\n", + "itemtype": "method", + "name": "isForBundleHost", + "return": { + "description": "true if this pkgInfo is for a bundle host, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 279, + "description": "

Add to a list of child addon PackageInfos for this packageInfo.

\n", + "itemtype": "method", + "name": "addPackages", + "params": [ + { + "name": "addonPackageList", + "description": "the list of child addon PackageInfos being constructed from various\nsources in this packageInfo.", + "type": "Array" + }, + { + "name": "packageInfoList", + "description": "a list or map of PackageInfos being considered\n(e.g., pkgInfo.dependencyPackages) for inclusion in the addonPackageList.", + "type": "Array | Object" + }, + { + "name": "excludeFn", + "description": "an optional function. If passed in, each child PackageInfo\nwill be tested against the function and only included in the package map if the function\nreturns a truthy value.", + "type": "Function" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 318, + "description": "

Discover the child addons for this packageInfo, which corresponds to an Addon.

\n", + "itemtype": "method", + "name": "discoverAddonAddons", + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 336, + "description": "

Discover the child addons for this packageInfo, which corresponds to a Project.

\n", + "itemtype": "method", + "name": "discoverProjectAddons", + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 356, + "description": "

Given a list of PackageInfo objects, generate the 'addonPackages' object (keyed by\nname, value = AddonInfo instance, for all packages marked 'valid'). This is stored in\nboth Addon and Project instances.

\n", + "itemtype": "method", + "name": "generateAddonPackages", + "params": [ + { + "name": "addonPackageList", + "description": "the list of child addon PackageInfos to work from", + "type": "Array" + }, + { + "name": "excludeFn", + "description": "an optional function. If passed in, each child PackageInfo\nwill be tested against the function and only included in the package map if the function\nreturns a truthy value.", + "type": "Function" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 419, + "description": "

This is only supposed to be called by the addon instantiation code.\nAlso, the assumption here is that this PackageInfo really is for an\nAddon, so we don't need to check each time.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getAddonConstructor", + "return": { + "description": "an instance of a constructor function for the Addon class\nwhose package information is stored in this object.", + "type": "AddonConstructor" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 457, + "description": "

Construct an addon instance.

\n

NOTE: this does NOT call constructors for the child addons. That is left to\nthe caller to do, so they can insert any other logic they want.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "constructAddonInstance", + "params": [ + { + "name": "parent", + "description": "the parent that directly contains this addon", + "type": "Project|Addon" + }, + { + "name": "project", + "description": "the project that is/contains this addon", + "type": "Project" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 492, + "description": "

Create an instance of the addon represented by this packageInfo or (if we\nare supporting per-bundle caching and this is an allow-caching-per-bundle addon)\ncheck if we should be creating a proxy instead.

\n

NOTE: we assume that the value of 'allowCachingPerBundle' does not change between\ncalls to the constructor! A given addon is either allowing or not allowing caching\nfor an entire run.

\n", + "itemtype": "method", + "name": "getAddonInstance", + "params": [ + { + "name": "parent", + "description": "the addon/project that is to be the direct parent of the\naddon instance created here" + }, + { + "name": "project", + "description": "the project that is to contain this addon instance", + "type": "*" + } + ], + "return": { + "description": "the constructed instance of the addon", + "type": "Object" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 525, + "description": "

Initialize the child addons array of a newly-created addon instance. Normally when\nan addon derives from Addon, child addons will be created during 'setupRegistry' and\nthis code is essentially unnecessary. But if an addon is created with custom constructors\nthat don't call 'setupRegistry', any child addons may not yet be initialized.

\n", + "itemtype": "method", + "name": "initChildAddons", + "params": [ + { + "name": "addonInstance", + "description": "", + "type": "Addon" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 542, + "description": "

Gets the addon entry point

\n", + "itemtype": "method", + "name": "_getAddonEntryPoint", + "return": { + "description": "The exported addon entry point", + "type": "Object|Function" + }, + "access": "private", + "tagname": "", + "class": "PackageInfo", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-PackageInfoCache.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-PackageInfoCache.json new file mode 100644 index 000000000..2a68f5800 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-PackageInfoCache.json @@ -0,0 +1,302 @@ +{ + "data": { + "id": "ember-cli-5.3.0-PackageInfoCache", + "type": "class", + "attributes": { + "name": "PackageInfoCache", + "shortname": "PackageInfoCache", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/package-info-cache/index.js", + "line": 23, + "description": "

Class that stores entries that are either PackageInfo or NodeModulesList objects.\nThe entries are stored in a map keyed by real directory path.

\n", + "access": "public", + "tagname": "", + "methods": [ + { + "file": "lib/debug/assert.js", + "line": 3, + "description": "

Verify that a certain condition is met, or throw an error if otherwise.

\n

This is useful for communicating expectations in the code to other human\nreaders as well as catching bugs that accidentally violate these expectations.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n
const { assert } = require('ember-cli/lib/debug');\n\n// Test for truthiness:\nassert('Must pass a string.', typeof str === 'string');\n\n// Fail unconditionally:\nassert('This code path should never run.');
\n
\n
\n \n", + "itemtype": "method", + "name": "assert", + "params": [ + { + "name": "description", + "description": "Describes the condition.\nThis will become the message of the error thrown if the assertion fails.", + "type": "String" + }, + { + "name": "condition", + "description": "Must be truthy for the assertion to pass.\nIf falsy, an error will be thrown.", + "type": "Any" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/debug/deprecate.js", + "line": 7, + "description": "

Display a deprecation message.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n
const { deprecate } = require('ember-cli/lib/debug');\n\ndeprecate('The `foo` method is deprecated.', false, {\n  for: 'ember-cli',\n  id: 'ember-cli.foo-method',\n  since: {\n    available: '4.1.0',\n    enabled: '4.2.0',\n  },\n  until: '5.0.0',\n  url: 'https://example.com',\n});
\n
\n
\n \n", + "itemtype": "method", + "name": "deprecate", + "params": [ + { + "name": "description", + "description": "Describes the deprecation.", + "type": "String" + }, + { + "name": "condition", + "description": "If falsy, the deprecation message will be displayed.", + "type": "Any" + }, + { + "name": "options", + "description": "An object including the deprecation's details:\n- `for` The library that the deprecation is for\n- `id` The deprecation's unique id\n- `since.available` A SemVer version indicating when the deprecation was made available\n- `since.enabled` A SemVer version indicating when the deprecation was enabled\n- `until` A SemVer version indicating until when the deprecation will be active\n- `url` A URL that refers to additional information about the deprecation", + "type": "Object" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 36, + "description": "

Clear the cache information.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_clear", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 48, + "description": "

Indicates if there is at least one error in any object in the cache.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hasErrors", + "return": { + "description": "true if there are any errors in the cache, for any entries, else false." + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 65, + "description": "

Gather all the errors in the PIC and any cached objects, then dump them\nout to the ui-console.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "showErrors", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 80, + "description": "

Dump all the errors for a single object in the cache out to the ui-console.

\n

Special case: because package-info-cache also creates PackageInfo objects for entries\nthat do not actually exist (to allow simplifying the code), if there's a case where\nan object has only the single error ERROR_PACKAGE_DIR_MISSING, do not print\nanything. The package will have been found as a reference from some other\naddon or the root project, and we'll print a reference error there. Having\nboth is just confusing to users.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_showObjErrors", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 146, + "description": "

Process the root directory of a project, given a\nProject object (we need the object in order to find the internal addons).\n_readPackage takes care of the general processing of the root directory\nand common locations for addons, filling the cache with each. Once it\nreturns, we take care of the locations for addons that are specific to\nprojects, not other packages (e.g. internal addons, cli root).

\n

Once all the project processing is done, go back through all cache entries\nto create references between the packageInfo objects.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "loadProject", + "params": [ + { + "name": "projectInstance", + "description": "the instance of the Project object to load package data\nabout into the cache." + } + ], + "return": { + "description": "the PackageInfo object for the given Project object.\nNote that if the project path is already in the cache, that will be returned.\nNo copy is made.", + "type": "PackageInfo" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 203, + "description": "

To support the project.reloadPkg method, we need the ability to flush\nthe cache and reload from the updated package.json.\nThere are some issues with doing this:

\n
    \n
  • Because of the possible relationship between projects and their addons\ndue to symlinks, it's not trivial to flush only the data related to a\ngiven project.
  • \n
  • If an 'ember-build-cli.js' dynamically adds new projects to the cache,\nwe will not necessarily get called again to redo the loading of those\nprojects.\nThe solution, implemented here:
  • \n
  • Keep track of the Project objects whose packages are loaded into the cache.
  • \n
  • If a project is reloaded, flush the cache, then do loadPackage again\nfor all the known Projects.
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "reloadProjects", + "return": { + "description": "null" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 228, + "description": "

Do the actual processing of the root directory of an addon, when the addon\nobject already exists (i.e. the addon is acting as the root object of a\ntree, like project does). We need the object in order to find the internal addons.\n_readPackage takes care of the general processing of the root directory\nand common locations for addons, filling the cache with each.

\n

Once all the addon processing is done, go back through all cache entries\nto create references between the packageInfo objects.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "loadAddon", + "params": [ + { + "name": "addonInstance", + "description": "the instance of the Addon object to load package data\nabout into the cache." + } + ], + "return": { + "description": "the PackageInfo object for the given Addon object.\nNote that if the addon path is already in the cache, that will be returned.\nNo copy is made.", + "type": "PackageInfo" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 262, + "description": "

Resolve the node_module dependencies across all packages after they have\nbeen loaded into the cache, because we don't know when a particular package\nwill enter the cache.

\n

Since loadProject can be called multiple times for different projects,\nwe don't want to reprocess any packages that happen to be common\nbetween them. We'll handle this by marking any packageInfo once it\nhas been processed here, then ignore it in any later processing.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_resolveDependencies", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 299, + "description": "

Add an entry to the cache.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addEntry", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 309, + "description": "

Retrieve an entry from the cache.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "getEntry", + "params": [ + { + "name": "path", + "description": "the real path whose PackageInfo or NodeModulesList is desired.", + "type": "String" + } + ], + "return": { + "description": "or {NodeModulesList} the desired entry.", + "type": "PackageInfo" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 321, + "description": "

Indicate if an entry for a given path exists in the cache.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "contains", + "params": [ + { + "name": "path", + "description": "the real path to check for in the cache.", + "type": "String" + } + ], + "return": { + "description": "true if the entry is present for the given path, false otherwise." + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 395, + "description": "

Given a directory that supposedly contains a package, create a PackageInfo\nobject and try to fill it out, EVEN IF the package.json is not readable.\nErrors will then be stored in the PackageInfo for anything with the package\nthat might be wrong.\nBecause it's possible that the path given to the packageDir is not actually valid,\nwe'll just use the path.resolve() version of that path to search for the\npath in the cache, before trying to get the 'real' path (which also then\nresolves links). The cache itself is keyed on either the realPath, if the\npackageDir is actually a real valid directory path, or the normalized path (before\npath.resolve()), if it is not.

\n

NOTE: the cache is also used to store the NULL_PROJECT project object,\nwhich actually has no package.json or other files, but does have an empty\npackage object. Because of that, and to speed up processing, loadProject()\nwill pass in both the package root directory path and the project's package\nobject, if there is one. If the package object is present, we will use that\nin preference to trying to find a package.json file.

\n

If there is no package object, and there is no package.json or the package.json\nis bad or the package is an addon with\nno main, the only thing we can do is return an ErrorEntry to the caller.\nOnce past all those problems, if any error occurs with any of the contents\nof the package, they'll be cached in the PackageInfo itself.

\n

In summary, only PackageInfo or ErrorEntry will be returned.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_readPackage", + "params": [ + { + "name": "pkgDir", + "description": "the path of the directory to read the package.json from and\n process the contents and create a new cache entry or entries.", + "type": "String" + }, + { + "name": "isRoot,", + "description": "for when this is to be considered the root\npackage, whose dependencies we must all consider for discovery.", + "type": "Boolean" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 585, + "description": "

Process a directory of modules in a given package directory.

\n

We will allow cache entries for node_modules that actually\nhave no contents, just so we don't have to hit the file system more\noften than necessary--it's much quicker to check an in-memory object.\nobject.

\n

Note: only a NodeModulesList or null is returned.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_readModulesList", + "params": [ + { + "name": "nodeModulesDir", + "description": "the path of the node_modules directory\n to read the package.json from and process the contents and create a\n new cache entry or entries.", + "type": "String" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-PerBundleAddonCache%20%7B.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-PerBundleAddonCache%20%7B.json new file mode 100644 index 000000000..dbcd6534a --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-PerBundleAddonCache%20%7B.json @@ -0,0 +1,261 @@ +{ + "data": { + "id": "ember-cli-5.3.0-PerBundleAddonCache {", + "type": "class", + "attributes": { + "name": "PerBundleAddonCache {", + "shortname": "PerBundleAddonCache {", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 46, + "description": "

For large applications with many addons (and many instances of each, resulting in\npotentially many millions of addon instances during a build), the build can become\nvery, very slow (tens of minutes) partially due to the sheer number of addon instances.\nThe PerBundleAddonCache deals with this slowness by doing 3 things:

\n

(1) Making only a single copy of each of certain addons and their dependent addons\n(2) Replacing any other instances of those addons with Proxy copies to the single instance\n(3) Having the Proxies return an empty array for their dependent addons, rather\n than proxying to the contents of the single addon instance. This gives up the\n ability of the Proxies to traverse downward into their child addons,\n something that many addons do not do anyway, for the huge reduction in duplications\n of those child addons. For applications that enable ember-engines dedupe logic,\n that logic is stateful, and having the Proxies allow access to the child addons array\n just breaks everything, because that logic will try multiple times to remove items\n it thinks are duplicated, messing up the single copy of the child addon array.\n See the explanation of the dedupe logic in\n {@link https://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/utils/deeply-non-duplicated-addon.js}

\n

What follows are the more technical details of how the PerBundleAddonCache implements\nthe above 3 behaviors.

\n

This class supports per-bundle-host (bundle host = project or lazy engine)\ncaching of addon instances. During addon initialization we cannot add a\ncache to each bundle host object AFTER it is instantiated because running the\naddon constructor ultimately causes Addon class setupRegistry code to\nrun which instantiates child addons, which need the cache to already be\nin place for the parent bundle host.\nWe handle this by providing a global cache that exists independent of the\nbundle host objects. That is this object.

\n

There are a number of \"behaviors\" being implemented by this object and\nits contents. They are:\n(1) Any addon that is a lazy engine has only a single real instance per\nproject - all other references to the lazy engine are to be proxies. These\nlazy engines are compared by name, not by packageInfo.realPath.\n(2) Any addon that is not a lazy engine, there is only a single real instance\nof the addon per \"bundle host\" (i.e. lazy engine or project).\n(3) An optimization - any addon that is in a lazy engine but that is also\nin bundled by its LCA host - the single instance is the one bundled by this\nhost. All other instances (in any lazy engine) are proxies.

\n

NOTE: the optimization is only enabled if the environment variable that controls\nember-engines transitive deduplication (process.env.EMBER_ENGINES_ADDON_DEDUPE)\nis set to a truthy value. For more info, see:\nhttps://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/engine-addon.js#L396

\n", + "access": "public", + "tagname": "", + "methods": [ + { + "file": "lib/models/per-bundle-addon-cache/addon-proxy.js", + "line": 7, + "description": "

Validates that a new cache key for a given tree type matches the previous\ncache key for the same tree type. To opt-in to bundle addon caching for\na given addon it's assumed that it returns stable cache keys; specifically\nthis is because the interplay between bundle addon caching and ember-engines\nwhen transitive deduplication is enabled assumes stable cache keys, so we validate\nfor this case here.

\n", + "itemtype": "method", + "name": "validateCacheKey", + "params": [ + { + "name": "realAddonInstance", + "description": "The real addon instance", + "type": "Addon" + }, + { + "name": "treeType", + "description": "", + "type": "String" + }, + { + "name": "newCacheKey", + "description": "", + "type": "String" + } + ], + "throws": { + "description": "If the new cache key doesn't match the previous cache key", + "type": "Error" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/addon-proxy.js", + "line": 42, + "description": "

Returns a proxy to a target with specific handling for the\nparent property, as well has to handle the app property;\nthat is, the proxy should maintain correct local state in\nclosure scope for the app property if it happens to be set\nby ember-cli. Other than parent & app, this function also\nproxies almost everything to target[TARGET_INSTANCE] with a few exceptions: we trap & return []foraddons, and we don't return the original included(it's already called on the \"real\" addon byember-cli`).

\n

Note: the target is NOT the per-bundle cacheable instance of the addon. Rather,\nit is a cache entry POJO from PerBundleAddonCache.

\n", + "itemtype": "method", + "name": "getAddonProxy", + "params": [ + { + "name": "targetCacheEntry", + "description": "the PerBundleAddonCache cache entry we are to proxy. It\nhas one interesting property, the real addon instance the proxy is forwarding\ncalls to (that property is not globally exposed)." + }, + { + "name": "parent", + "description": "the parent object of the proxy being created (the same as\nthe 'parent' property of a normal addon instance)" + } + ], + "return": { + "description": "Proxy" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 17, + "description": "

Resolves the perBundleAddonCacheUtil; this prefers the custom provided version by\nthe consuming application, and defaults to an internal implementation here.

\n", + "itemtype": "method", + "name": "resolvePerBundleAddonCacheUtil", + "params": [ + { + "name": "project", + "description": "", + "type": "Project" + } + ], + "return": { + "description": "}", + "type": "AllowCachingPerBundle: Function" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 116, + "description": "

The default implementation here is to indicate if the original addon entry point has\nthe allowCachingPerBundle flag set either on itself or on its prototype.

\n

If a consuming application specifies a relative path to a custom utility via the\nember-addon.perBundleAddonCacheUtil configuration, we prefer the custom implementation\nprovided by the consumer.

\n", + "itemtype": "method", + "name": "allowCachingPerBundle", + "params": [ + { + "name": "addonEntryPointModule", + "description": "", + "type": "Object|Function" + } + ], + "return": { + "description": "true if the given constructor function or class supports caching per bundle, false otherwise", + "type": "Boolean" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 132, + "description": "

Creates a cache entry for the bundleHostCache. Because we want to use the same sort of proxy\nfor both bundle hosts and for 'regular' addon instances (though their cache entries have\nslightly different structures) we'll use the Symbol from getAddonProxy.

\n", + "itemtype": "method", + "name": "createBundleHostCacheEntry", + "params": [ + { + "name": "bundleHostPkgInfo", + "description": "bundle host's pkgInfo.realPath", + "type": "PackageInfo" + } + ], + "return": { + "description": "an object in the form of a bundle-host cache entry", + "type": "Object" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 145, + "description": "

Create a cache entry object for a given (non-bundle-host) addon to put into\nan addon cache.

\n", + "itemtype": "method", + "name": "createAddonCacheEntry", + "params": [ + { + "name": "addonInstance", + "description": "the addon instance to cache", + "type": "Addon" + }, + { + "name": "addonRealPath", + "description": "the addon's pkgInfo.realPath", + "type": "String" + } + ], + "return": { + "description": "an object in the form of an addon-cache entry", + "type": "Object" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 158, + "description": "

Given a parent object of a potential addon (another addon or the project),\ngo up the 'parent' chain to find the potential addon's bundle host object\n(i.e. lazy engine or project.) Because Projects are always bundle hosts,\nthis should always pass, but we'll throw if somehow it doesn't work.

\n", + "itemtype": "method", + "name": "findBundleHost", + "params": [ + { + "name": "addonParent", + "description": "the direct parent object of a (potential or real) addon.", + "type": "Project|Addon" + }, + { + "name": "addonPkgInfo", + "description": "the PackageInfo for an addon being instantiated. This is only\nused for information if an error is going to be thrown.", + "type": "PackageInfo" + } + ], + "return": { + "description": "the object in the 'parent' chain that is a bundle host.", + "type": "Object" + }, + "throws": { + "description": "if there is not bundle host", + "type": "Error" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 197, + "description": "

An optimization we support from lazy engines is the following:

\n

If an addon instance is supposed to be bundled with a particular lazy engine, and\nsame addon is also to be bundled by a common LCA host, prefer the one bundled by the\nhost (since it's ultimately going to be deduped later by ember-engines).

\n

NOTE: this only applies if this.engineAddonTransitiveDedupeEnabled is truthy. If it is not,\nthe bundle host always \"owns\" the addon instance.

\n

If deduping is enabled and the LCA host also depends on the same addon,\nthe lazy-engine instances of the addon will all be proxies to the one in\nthe LCA host. This function indicates whether the bundle host passed in\n(either the project or a lazy engine) is really the bundle host to \"own\" the\nnew addon.

\n", + "itemtype": "method", + "name": "bundleHostOwnsInstance", + "params": [ + { + "name": "(Object}", + "description": "bundleHost the project or lazy engine that is trying to \"own\"\nthe new addon instance specified by addonPkgInfo" + }, + { + "name": "addonPkgInfo", + "description": "the PackageInfo of the potential new addon instance", + "type": "PackageInfo" + } + ], + "return": { + "description": "true if the bundle host is to \"own\" the instance, false otherwise.", + "type": "Boolean" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 247, + "description": "

Called from PackageInfo.getAddonInstance(), return an instance of the requested\naddon or a Proxy, based on the type of addon and its bundle host.

\n", + "itemtype": "method", + "name": "getAddonInstance", + "params": [ + { + "name": "parent", + "description": "the parent Addon or Project this addon instance is\na child of.", + "type": "Addon|Project" + }, + { + "name": "addonPkgInfo", + "description": "the PackageInfo for the addon being created.", + "type": "*" + } + ], + "return": { + "description": "An addon instance (for the first copy of the addon) or a Proxy.\nAn addon that is a lazy engine will only ever have a single copy in the cache.\nAn addon that is not will have 1 copy per bundle host (Project or lazy engine),\nexcept if it is an addon that's also owned by a given LCA host and transitive\ndedupe is enabled (`engineAddonTransitiveDedupeEnabled`), in which case it will\nonly have a single copy in the project's addon cache.", + "type": "Addon|Proxy" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Project.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Project.json new file mode 100644 index 000000000..556361f8c --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-Project.json @@ -0,0 +1,575 @@ +{ + "data": { + "id": "ember-cli-5.3.0-Project", + "type": "class", + "attributes": { + "name": "Project", + "shortname": "Project", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/project.js", + "line": 27, + "description": "

The Project model is tied to your package.json. It is instantiated\nby giving {{#crossLink \"Project/closestSync:method\"}}{{/crossLink}}\nthe path to your project.

\n", + "is_constructor": 1, + "params": [ + { + "name": "root", + "description": "Root directory for the project", + "type": "String" + }, + { + "name": "pkg", + "description": "Contents of package.json", + "type": "Object" + }, + { + "name": "ui", + "description": "", + "type": "UI" + }, + { + "name": "cli", + "description": "", + "type": "CLI" + } + ], + "methods": [ + { + "file": "lib/models/project.js", + "line": 154, + "description": "

Returns the name from package.json.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "name", + "return": { + "description": "Package name", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 167, + "description": "

Returns whether or not this is an Ember CLI project.\nThis checks whether ember-cli is listed in devDependencies.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isEmberCLIProject", + "return": { + "description": "Whether this is an Ember CLI project", + "type": "Boolean" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 179, + "description": "

Returns whether or not this is an Ember CLI addon.

\n", + "itemtype": "method", + "name": "isEmberCLIAddon", + "return": { + "description": "Whether or not this is an Ember CLI Addon.", + "type": "Boolean" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 189, + "description": "

Returns the path to the configuration.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "configPath", + "return": { + "description": "Configuration path", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 206, + "description": "

Loads the configuration for this project and its addons.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "config", + "params": [ + { + "name": "env", + "description": "Environment name", + "type": "String" + } + ], + "return": { + "description": "Merged configuration object", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 225, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "configWithoutCache", + "params": [ + { + "name": "env", + "description": "Environment name", + "type": "String" + } + ], + "return": { + "description": "Merged configuration object", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 271, + "description": "

Returns the addons configuration.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getAddonsConfig", + "params": [ + { + "name": "env", + "description": "Environment name", + "type": "String" + }, + { + "name": "appConfig", + "description": "Application configuration", + "type": "Object" + } + ], + "return": { + "description": "Merged configuration of all addons", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 294, + "description": "

Returns whether or not the given file name is present in this project.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "has", + "params": [ + { + "name": "file", + "description": "File name", + "type": "String" + } + ], + "return": { + "description": "Whether or not the file is present", + "type": "Boolean" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 306, + "description": "

Resolves the absolute path to a file synchronously

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "resolveSync", + "params": [ + { + "name": "file", + "description": "File to resolve", + "type": "String" + } + ], + "return": { + "description": "Absolute path to file", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 320, + "description": "

Calls require on a given module from the context of the project. For\ninstance, an addon may want to require a class from the root project's\nversion of ember-cli.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "require", + "params": [ + { + "name": "file", + "description": "File path or module name", + "type": "String" + } + ], + "return": { + "description": "Imported module", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 335, + "description": "

Returns the dependencies from a package.json

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "params": [ + { + "name": "pkg", + "description": "Package object", + "type": "Object", + "optional": true, + "optdefault": "this.pkg" + }, + { + "name": "excludeDevDeps", + "description": "Whether or not development dependencies should be excluded", + "type": "Boolean", + "optional": true, + "optdefault": "false" + } + ], + "return": { + "description": "Dependencies", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 355, + "description": "

Provides the list of paths to consult for addons that may be provided\ninternally to this project. Used for middleware addons with built-in support.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "supportedInternalAddonPaths", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 381, + "description": "

Discovers all addons for this project and stores their names and\npackage.json contents in this.addonPackages as key-value pairs.

\n

Any packageInfos that we find that are marked as not valid are excluded.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "discoverAddons", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 403, + "description": "

Loads and initializes all addons for this project.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "initializeAddons", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 424, + "description": "

Returns what commands are made available by addons by inspecting\nincludedCommands for every addon.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonCommands", + "return": { + "description": "Addon names and command maps as key-value pairs", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 465, + "description": "

Execute a given callback for every addon command.\nExample:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
project.eachAddonCommand(function(addonName, commands) {\n  console.log('Addon ' + addonName + ' exported the following commands:' + commands.keys().join(', '));\n});
\n
\n
\n \n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "eachAddonCommand", + "params": [ + { + "name": "callback", + "description": "[description]", + "type": "Function" + } + ], + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 488, + "description": "

Path to the blueprints for this project.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "localBlueprintLookupPath", + "return": { + "description": "Path to blueprints", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 499, + "description": "

Returns a list of paths (including addon paths) where blueprints will be looked up.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "blueprintLookupPaths", + "return": { + "description": "List of paths", + "type": "Array" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 517, + "description": "

Returns a list of addon paths where blueprints will be looked up.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonBlueprintLookupPaths", + "return": { + "description": "List of paths", + "type": "Array" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 540, + "description": "

Reloads package.json of the project. Clears and reloads the packageInfo and\nper-bundle addon cache, too.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "reloadPkg", + "return": { + "description": "Package content", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 568, + "description": "

Re-initializes addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "reloadAddons", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 581, + "description": "

Find an addon by its name

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "findAddonByName", + "params": [ + { + "name": "name", + "description": "Addon name as specified in package.json", + "type": "String" + } + ], + "return": { + "description": "Addon instance", + "type": "Addon" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 595, + "description": "

Generate test file contents.

\n

This method is supposed to be overwritten by test framework addons\nlike ember-qunit.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "generateTestFile", + "params": [ + { + "name": "moduleName", + "description": "Name of the test module (e.g. `JSHint`)", + "type": "String" + }, + { + "name": "tests", + "description": "Array of tests with `name`, `passed` and `errorMessage` properties", + "type": "Object[]" + } + ], + "return": { + "description": "The test file content", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 619, + "description": "

Returns a new project based on the first package.json that is found\nin pathName.

\n

If the above package.json specifies ember-addon.projectRoot, we load\nthe project based on the relative path between this directory and the\nspecified projectRoot.

\n", + "access": "private", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "closestSync", + "params": [ + { + "name": "pathName", + "description": "Path to your project", + "type": "String" + }, + { + "name": "_ui", + "description": "The UI instance to provide to the created Project.", + "type": "UI" + } + ], + "return": { + "description": "Project instance", + "type": "Project" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 670, + "description": "

Returns a new project based on the first package.json that is found\nin pathName, or the nullProject.

\n

The nullProject signifies no-project, but abides by the null object pattern

\n", + "access": "private", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "projectOrnullProject", + "params": [ + { + "name": "_ui", + "description": "The UI instance to provide to the created Project.", + "type": "UI" + } + ], + "return": { + "description": "Project instance", + "type": "Project" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 694, + "description": "

Returns the project root based on the first package.json that is found

\n", + "static": 1, + "itemtype": "method", + "name": "getProjectRoot", + "return": { + "description": "The project root directory", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + } + ], + "events": [], + "properties": [ + { + "file": "lib/models/project.js", + "line": 52, + "description": "

Set when the Watcher.detectWatchman helper method finishes running,\nso that other areas of the system can be aware that watchman is being used.

\n

For example, this information is used in the broccoli build pipeline to know\nif we can watch additional directories \"cheaply\".

\n

Contains enabled and version.

\n", + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "_watchmanInfo", + "return": { + "description": "", + "type": "Object" + }, + "default": "false", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 244, + "description": "

Returns the targets of this project, or the default targets if not present.

\n", + "access": "public", + "tagname": "", + "itemtype": "property", + "name": "targets", + "return": { + "description": "Targets object", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + } + ] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-ServeFilesAddon.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-ServeFilesAddon.json new file mode 100644 index 000000000..b2cd533e7 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-ServeFilesAddon.json @@ -0,0 +1,56 @@ +{ + "data": { + "id": "ember-cli-5.3.0-ServeFilesAddon", + "type": "class", + "attributes": { + "name": "ServeFilesAddon", + "shortname": "ServeFilesAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/broccoli-serve-files/index.js", + "line": 6, + "description": "

This addon is used to serve the requested assets and set the required response\nheaders. It runs after broccoli-watcher addon.

\n", + "is_constructor": 1, + "methods": [ + { + "file": "lib/models/task.js", + "line": 10, + "description": "

Interrupt comamd with an exit code\nCalled when the process is interrupted from outside, e.g. CTRL+C or process.kill()

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "ServeFilesAddon", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-TestsServerAddon.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-TestsServerAddon.json new file mode 100644 index 000000000..1aa0ab532 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-TestsServerAddon.json @@ -0,0 +1,44 @@ +{ + "data": { + "id": "ember-cli-5.3.0-TestsServerAddon", + "type": "class", + "attributes": { + "name": "TestsServerAddon", + "shortname": "TestsServerAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/tests-server/index.js", + "line": 9, + "description": "

This addon is used to serve the QUnit or Mocha test runner\nat rootURL + '/tests'.

\n", + "is_constructor": 1, + "methods": [], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-WatcherAddon.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-WatcherAddon.json new file mode 100644 index 000000000..02a840572 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-WatcherAddon.json @@ -0,0 +1,44 @@ +{ + "data": { + "id": "ember-cli-5.3.0-WatcherAddon", + "type": "class", + "attributes": { + "name": "WatcherAddon", + "shortname": "WatcherAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/broccoli-watcher/index.js", + "line": 7, + "description": "

This addon is used to set the default response headers for the assets that will be\nserved by the next middleware. It waits for the watcher promise to resolve before\nsetting the response headers.

\n", + "is_constructor": 1, + "methods": [], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-WindowsSymlinkChecker.json b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-WindowsSymlinkChecker.json new file mode 100644 index 000000000..6c2749eca --- /dev/null +++ b/json-docs/ember-cli/5.3.0/classes/ember-cli-5.3.0-WindowsSymlinkChecker.json @@ -0,0 +1,451 @@ +{ + "data": { + "id": "ember-cli-5.3.0-WindowsSymlinkChecker", + "type": "class", + "attributes": { + "name": "WindowsSymlinkChecker", + "shortname": "WindowsSymlinkChecker", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "is-lazy-engine", + "namespace": "", + "file": "lib/utilities/windows-admin.js", + "line": 6, + "description": "

On Windows, users will have a much better experience if symlinks are enabled\n and usable. When queried, this object informs Windows users regarding\n improving their build performance, and how.

\n
\n

Windows Vista: nothing we can really do, so we fall back to junctions for folders + copying of files\n <= Windows Vista: symlinks are available but using them is somewhat tricky\n * if the user is an admin, the process needs to have been started with elevated privileges\n * if the user is not an admin, a specific setting needs to be enabled\n <= Windows 10\n * if developer mode is enabled, symlinks \"just work\"\n * https://blogs.windows.com/buildingapps/2016/12/02/symlinks-windows-10

\n
\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n
 let checker = WindowsSymlinkChecker;\n let {\n   windows,\n   elevated\n } = await = checker.checkIfSymlinksNeedToBeEnabled(); // aslso emits helpful warnings
\n
\n
\n \n", + "access": "public", + "tagname": "", + "methods": [ + { + "file": "lib/tasks/serve.js", + "line": 105, + "description": "

Exit silently

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/tasks/test-server.js", + "line": 61, + "description": "

Exit silently

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/directory-for-package-name.js", + "line": 5, + "description": "

Derive a directory name from a package name.\nTakes scoped packages into account.

\n", + "itemtype": "method", + "name": "directoryForPackageName", + "params": [ + { + "name": "packageName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "Derived directory name.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/ember-app-utils.js", + "line": 7, + "description": "

Returns a normalized url given a string.\nReturns an empty string if null, undefined or an empty string are passed\nin.

\n", + "itemtype": "method", + "name": "normalizeUrl", + "params": [ + { + "name": "Raw", + "description": "url.", + "type": "String" + } + ], + "return": { + "description": "Normalized url.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/ember-app-utils.js", + "line": 24, + "description": "

Converts Javascript Object to a string.\nReturns an empty object string representation if a \"falsy\" value is passed\nin.

\n", + "itemtype": "method", + "name": "convertObjectToString", + "params": [ + { + "name": "Any", + "description": "Javascript Object.", + "type": "Object" + } + ], + "return": { + "description": "A string representation of a Javascript Object.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/ember-app-utils.js", + "line": 37, + "description": "

Returns the content for a specific type (section) for index.html.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n
{{content-for \"[type]\"}}
\n
\n
\n \n

Supported types:

\n
    \n
  • 'head'
  • \n
  • 'config-module'
  • \n
  • 'head-footer'
  • \n
  • 'test-header-footer'
  • \n
  • 'body-footer'
  • \n
  • 'test-body-footer'
  • \n
\n", + "itemtype": "method", + "name": "contentFor", + "params": [ + { + "name": "config", + "description": "Ember.js application configuration", + "type": "Object" + }, + { + "name": "match", + "description": "Regular expression to match against", + "type": "RegExp" + }, + { + "name": "type", + "description": "Type of content", + "type": "String" + }, + { + "name": "options", + "description": "Settings that control the default content", + "type": "Object", + "props": [ + { + "name": "autoRun", + "description": "Controls whether to bootstrap the\n application or not", + "type": "Boolean" + }, + { + "name": "storeConfigInMeta", + "description": "Controls whether to include the\n contents of config", + "type": "Boolean" + } + ] + } + ], + "return": { + "description": "The content.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/get-package-manager-from-flags.js", + "line": 3, + "description": "

Returns the package manager, given an object where folks can technically\npass --pnpm --yarn --npm. But using multiple package managers at the\nsame time is not supported (by anything).

\n

This function defines the priority of package managers, if multiple are present.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getPackageManagerFromFlags", + "params": [ + { + "name": "}", + "description": "options", + "type": " pnpm?: boolean; yarn?: boolean; packageManager?: 'pnpm' | 'yarn' | 'npm'" + } + ], + "return": { + "description": "", + "type": "'pnpm' | 'yarn' | 'npm' | undefined" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/insert-into-file.js", + "line": 6, + "description": "

Inserts the given content into a file. If the contentsToInsert string is already\npresent in the current contents, the file will not be changed unless force option\nis passed.

\n

If options.before is specified, contentsToInsert will be inserted before\nthe first instance of that string. If options.after is specified, the\ncontents will be inserted after the first instance of that string.\nIf the string specified by options.before or options.after is not in the file,\nno change will be made. Both of these options support regular expressions.

\n

If neither options.before nor options.after are present, contentsToInsert\nwill be inserted at the end of the file.

\n

It will create a new file if one doesn't exist, unless you set the options.create\noption to false.

\n

Example:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
// app/router.js\nRouter.map(function () {\n});
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
insertIntoFile('app/router.js', '  this.route(\"admin\");', {\n  after: 'Router.map(function () {' + EOL\n});
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n
// app/router.js\nRouter.map(function () {\n  this.route(\"admin\");\n});
\n
\n
\n \n", + "itemtype": "method", + "name": "insertIntoFile", + "params": [ + { + "name": "pathRelativeToProjectRoot", + "description": "", + "type": "String" + }, + { + "name": "contentsToInsert", + "description": "", + "type": "String" + }, + { + "name": "providedOptions", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/is-pnpm-project.js", + "line": 5, + "description": "

Returns true if and only if the given directory has a pnpm-lock.yaml file or is a child of a\npnpm workspace root.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isPnpmProject", + "params": [ + { + "name": "thePath", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/is-yarn-project.js", + "line": 6, + "description": "

Returns true if and only if the given directory has a yarn.lock file or is a child of a\nyarn workspace root.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isYarnProject", + "params": [ + { + "name": "thePath", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/valid-project-name.js", + "line": 5, + "description": "

Checks if the string starts with a number.

\n", + "itemtype": "method", + "name": "startsWithNumber", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/valid-project-name.js", + "line": 24, + "description": "

Checks if project name is valid.

\n

Invalid names are some of the internal constants that Ember CLI uses, such as\napp, ember, ember-cli, test, and vendor. Names that start with\nnumbers are considered invalid as well.

\n", + "itemtype": "method", + "name": "validProjectName", + "params": [ + { + "name": "name", + "description": "The name of Ember CLI project", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 47, + "description": "

Drops all the interruption handlers and disables an ability to add new one

\n

Note: We don't call `captureExit.releaseExit() here.\nIn some rare scenarios it can lead to the hard to debug issues.\nsee: https://github.com/ember-cli/ember-cli/issues/6779#issuecomment-280940358

\n

We can more or less feel comfortable with a captured exit because it behaves very\nsimilar to the original exit except of cases when we need to do cleanup before exit.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "release", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 69, + "description": "

Add process interruption handler

\n

When the first handler is added then automatically\nsets up process interruption signals listeners

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addHandler", + "params": [ + { + "name": "cb", + "description": "Callback to be called when process interruption fired", + "type": "Function" + } + ], + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 97, + "description": "

Remove process interruption handler

\n

If there are no remaining handlers after removal\nthen clean up all the process interruption signal listeners

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "removeHandler", + "params": [ + { + "name": "cb", + "description": "Callback to be removed", + "type": "Function" + } + ], + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 122, + "description": "

Sets up listeners for interruption signals

\n

When one of these signals is caught than raise process.exit()\nwhich enforces capture-exit to run registered interruption handlers

\n", + "itemtype": "method", + "name": "setupSignalsTrap", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 140, + "description": "

Removes interruption signal listeners and tears down capture-exit

\n", + "itemtype": "method", + "name": "teardownSignalsTrap", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 155, + "description": "

Suppresses \"Terminate batch job (Y/N)\" confirmation on Windows

\n", + "itemtype": "method", + "name": "trapWindowsSignals", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 38, + "description": "

if not windows, will fulfill with:\n { windows: false, elevated: null)\nif windows, and elevated will fulfill with:\n { windows: false, elevated: true)\nif windows, and is NOT elevated will fulfill with:\n { windows: false, elevated: false)\n will include heplful warning, so that users know (if possible) how to\n achieve better windows build performance

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "checkIfSymlinksNeedToBeEnabled", + "return": { + "description": "Object describing whether we're on windows and if admin rights exist", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 60, + "description": "

sets up a WindowsSymlinkChecker

\n

providing it with defaults for:

\n
    \n
  • if we are on windows
  • \n
  • if we can symlink
  • \n
  • a reference to exec
  • \n
\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_setup", + "params": [ + { + "name": "UI", + "description": "", + "type": "UI" + } + ], + "return": { + "description": "", + "type": "WindowsSymlinkChecker" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 81, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "checkIfSymlinksNeedToBeEnabled", + "return": { + "description": "Object describing whether we're on windows and if admin rights exist", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 104, + "description": "

Uses the eon-old command NET SESSION to determine whether or not the\n current user has elevated rights (think sudo, but Windows).

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkForElevatedRights", + "params": [ + { + "name": "ui", + "description": "- ui object used to call writeLine();", + "type": "Object" + } + ], + "return": { + "description": "Object describing whether we're on windows and if admin rights exist", + "type": "Object" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.3.0-is-lazy-engine", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/missings/CoreObject.json b/json-docs/ember-cli/5.3.0/missings/CoreObject.json new file mode 100644 index 000000000..398110e0d --- /dev/null +++ b/json-docs/ember-cli/5.3.0/missings/CoreObject.json @@ -0,0 +1,9 @@ +{ + "data": { + "id": "CoreObject", + "type": "missing", + "attributes": { + "name": "CoreObject" + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/modules/ember-cli-5.3.0-ember-cli.json b/json-docs/ember-cli/5.3.0/modules/ember-cli-5.3.0-ember-cli.json new file mode 100644 index 000000000..b37e4a5d1 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/modules/ember-cli-5.3.0-ember-cli.json @@ -0,0 +1,275 @@ +{ + "data": { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module", + "attributes": { + "name": "ember-cli", + "submodules": {}, + "elements": {}, + "fors": { + "HardwareInfo": 1 + }, + "namespaces": { + "Blueprint": 1 + }, + "tag": "module", + "file": "lib/tasks/npm-task.js", + "line": 17, + "access": "private", + "tagname": "", + "is_constructor": 1, + "extends": "Task", + "parent": null, + "publicclasses": [ + "DefaultPackager", + "EmberAddon", + "EmberApp", + "PackageInfoCache", + "NodeModulesList", + "PackageInfo", + "PerBundleAddonCache {", + "Addon", + "Blueprint", + "Command", + "Project", + "ServeFilesAddon", + "WatcherAddon", + "HistorySupportAddon", + "TestsServerAddon", + "AmdTransformAddon" + ], + "privateclasses": [ + "CLI", + "Builder", + "Instrumentation", + "NpmTask" + ], + "staticfunctions": { + "EmberApp": [ + { + "file": "lib/broccoli/ember-app.js", + "line": 371, + "description": "Returns the environment name", + "access": "public", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "env", + "return": { + "description": "Environment name", + "type": "String" + }, + "class": "EmberApp", + "module": "ember-cli" + } + ] + }, + "allstaticfunctions": { + "Project": [ + { + "file": "lib/models/project.js", + "line": 619, + "description": "Returns a new project based on the first `package.json` that is found\nin `pathName`.\n\nIf the above `package.json` specifies `ember-addon.projectRoot`, we load\nthe project based on the relative path between this directory and the\nspecified `projectRoot`.", + "access": "private", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "closestSync", + "params": [ + { + "name": "pathName", + "description": "Path to your project", + "type": "String" + }, + { + "name": "_ui", + "description": "The UI instance to provide to the created Project.", + "type": "UI" + } + ], + "return": { + "description": "Project instance", + "type": "Project" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 694, + "description": "Returns the project root based on the first package.json that is found", + "static": 1, + "itemtype": "method", + "name": "getProjectRoot", + "return": { + "description": "The project root directory", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 670, + "description": "Returns a new project based on the first package.json that is found\nin `pathName`, or the nullProject.\n\nThe nullProject signifies no-project, but abides by the null object pattern", + "access": "private", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "projectOrnullProject", + "params": [ + { + "name": "_ui", + "description": "The UI instance to provide to the created Project.", + "type": "UI" + } + ], + "return": { + "description": "Project instance", + "type": "Project" + }, + "class": "Project", + "module": "ember-cli" + } + ], + "EmberApp": [ + { + "file": "lib/broccoli/ember-app.js", + "line": 371, + "description": "Returns the environment name", + "access": "public", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "env", + "return": { + "description": "Environment name", + "type": "String" + }, + "class": "EmberApp", + "module": "ember-cli" + } + ], + "Blueprint": [ + { + "file": "lib/models/blueprint.js", + "line": 1449, + "static": 1, + "itemtype": "method", + "name": "list", + "params": [ + { + "name": "options", + "description": "", + "type": "Object", + "optional": true, + "props": [ + { + "name": "paths", + "description": "Extra paths to search for blueprints", + "type": "Array", + "optional": true + } + ] + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1421, + "description": "Loads a blueprint from given path.", + "static": 1, + "itemtype": "method", + "name": "load", + "params": [ + { + "name": "blueprintPath", + "description": "", + "type": "String" + }, + { + "name": "blueprintOptions", + "description": "", + "type": "Object", + "optional": true + } + ], + "return": { + "description": "blueprint instance", + "type": "Blueprint" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1380, + "static": 1, + "itemtype": "method", + "name": "lookup", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object", + "optional": true, + "props": [ + { + "name": "paths", + "description": "Extra paths to search for blueprints", + "type": "Array", + "optional": true + }, + { + "name": "ignoreMissing", + "description": "Throw a `SilentError` if a\n matching Blueprint could not be found", + "type": "Boolean", + "optional": true + }, + { + "name": "blueprintOptions", + "description": "Options object that will be passed\n along to the Blueprint instance on creation.", + "type": "Object", + "optional": true + } + ] + } + ], + "return": { + "description": "", + "type": "Blueprint" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + } + ] + }, + "version": "5.3.0" + }, + "relationships": { + "classes": { + "data": [] + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/modules/ember-cli-5.3.0-is-lazy-engine.json b/json-docs/ember-cli/5.3.0/modules/ember-cli-5.3.0-is-lazy-engine.json new file mode 100644 index 000000000..bffe4cc64 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/modules/ember-cli-5.3.0-is-lazy-engine.json @@ -0,0 +1,47 @@ +{ + "data": { + "id": "ember-cli-5.3.0-is-lazy-engine", + "type": "module", + "attributes": { + "name": "is-lazy-engine", + "submodules": {}, + "elements": {}, + "fors": {}, + "namespaces": {}, + "tag": "module", + "file": "lib/utilities/windows-admin.js", + "line": 6, + "description": "

Indicate if a given object is a constructor function or class or an instance of an Addon.

\n", + "params": [ + { + "name": "addonCtorOrInstance", + "description": "the constructor function/class or an instance of an Addon.", + "type": "Object" + } + ], + "return": { + "description": "True if the addonCtorOrInstance is a lazy engine, False otherwise.", + "type": "Boolean" + }, + "parent": null, + "publicclasses": [ + "WindowsSymlinkChecker" + ], + "privateclasses": [], + "staticfunctions": {}, + "allstaticfunctions": {}, + "version": "5.3.0" + }, + "relationships": { + "classes": { + "data": [] + }, + "project-version": { + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.3.0/project-versions/ember-cli-5.3.0.json b/json-docs/ember-cli/5.3.0/project-versions/ember-cli-5.3.0.json new file mode 100644 index 000000000..177b24dd2 --- /dev/null +++ b/json-docs/ember-cli/5.3.0/project-versions/ember-cli-5.3.0.json @@ -0,0 +1,234 @@ +{ + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version", + "attributes": { + "version": "5.3.0" + }, + "relationships": { + "classes": { + "data": [ + { + "id": "ember-cli-5.3.0-DefaultPackager", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-EmberAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-EmberApp", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-CLI", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-PackageInfoCache", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-NodeModulesList", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-PackageInfo", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-PerBundleAddonCache {", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Addon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Blueprint", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Builder", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Command", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Instrumentation", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Project", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-ServeFilesAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-WatcherAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-HistorySupportAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-TestsServerAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-AmdTransformAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-NpmTask", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-WindowsSymlinkChecker", + "type": "class" + } + ] + }, + "namespaces": { + "data": [] + }, + "modules": { + "data": [ + { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + }, + { + "id": "ember-cli-5.3.0-is-lazy-engine", + "type": "module" + } + ] + }, + "project": { + "data": { + "id": "ember-cli", + "type": "project" + } + }, + "private-classes": { + "data": [ + { + "id": "ember-cli-5.3.0-CLI", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Builder", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Instrumentation", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-NpmTask", + "type": "class" + } + ] + }, + "public-classes": { + "data": [ + { + "id": "ember-cli-5.3.0-DefaultPackager", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-EmberAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-EmberApp", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-PackageInfoCache", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-NodeModulesList", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-PackageInfo", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-PerBundleAddonCache {", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Addon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Blueprint", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Command", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Project", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-ServeFilesAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-WatcherAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-HistorySupportAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-TestsServerAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-AmdTransformAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-WindowsSymlinkChecker", + "type": "class" + } + ] + }, + "private-namespaces": { + "data": [] + }, + "public-namespaces": { + "data": [] + }, + "private-modules": { + "data": [ + { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + ] + }, + "public-modules": { + "data": [ + { + "id": "ember-cli-5.3.0-is-lazy-engine", + "type": "module" + } + ] + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Addon.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Addon.json new file mode 100644 index 000000000..349e866cf --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Addon.json @@ -0,0 +1,1236 @@ +{ + "data": { + "id": "ember-cli-5.4.0-Addon", + "type": "class", + "attributes": { + "name": "Addon", + "shortname": "Addon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/addon.js", + "line": 122, + "description": "

Root class for an Addon. If your addon module exports an Object this\nwill be extended from this base class. If you export a constructor (function),\nit will not extend from this class.

\n

Hooks:

\n
    \n
  • {{#crossLink \"Addon/config:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/blueprintsPath:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/includedCommands:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/importTransforms:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/serverMiddleware:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/testemMiddleware:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/postBuild:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/preBuild:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/outputReady:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/buildError:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/included:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/shouldIncludeChildAddon:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/setupPreprocessorRegistry:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/preprocessTree:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/postprocessTree:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/lintTree:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/contentFor:method\"}}{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/treeFor:method\"}}{{/crossLink}}
  • \n
\n", + "extends": "CoreObject", + "is_constructor": 1, + "params": [ + { + "name": "parent", + "description": "The project or addon that directly depends on this addon", + "type": "Project|Addon" + }, + { + "name": "project", + "description": "The current project (deprecated)", + "type": "Project" + } + ], + "methods": [ + { + "file": "lib/models/addon.js", + "line": 239, + "description": "

Initializes the addon. If you override this method make sure and call this._super.init && this._super.init.apply(this, arguments); or your addon will not work.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "init", + "params": [ + { + "name": "parent", + "description": "The project or addon that directly depends on this addon", + "type": "Project|Addon" + }, + { + "name": "project", + "description": "The current project (deprecated)", + "type": "Project" + } + ], + "example": [ + "\n```js\ninit(parent, project) {\n this._super.init && this._super.init.apply(this, arguments);\n this._someCustomSetup();\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 320, + "description": "

Find an addon of the current addon.

\n

Example: ember-data depends on ember-cli-babel and wishes to have\nadditional control over transpilation this method helps.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n
// ember-data/index.js\ntreeForAddon(tree) {\n  let babel = this.findOwnAddonByName('ember-cli-babel');\n\n  return babel.transpileTree(tree, {\n    // customize the babel step (see: ember-cli-addons readme for more details);\n  });\n}
\n
\n
\n \n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "findOwnAddonByName", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 344, + "description": "

Check if the current addon intends to be hinted. Typically this is for\nhinting/linting libraries such as eslint or jshint

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hintingEnabled", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 359, + "description": "

Shorthand method for broccoli-concat

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "concatFiles", + "params": [ + { + "name": "tree", + "description": "Tree of files", + "type": "Tree" + }, + { + "name": "options", + "description": "Options for broccoli-concat", + "type": "Object" + } + ], + "return": { + "description": "Modified tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 373, + "description": "

Allows to mark the addon as developing, triggering live-reload in the project the addon is linked to.

\n

Uses:

\n
    \n
  • Working on projects with internal addons
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "isDevelopingAddon", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 409, + "description": "

Discovers all child addons of this addon and an AddonInfo about\neach addon in this.addonPackages (keyed on addon name).

\n

Child addons include those from 'dependencies' (not devDependencies)\nand in-repo addons

\n

Any packageInfos that we find that are marked as not valid are excluded.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "discoverAddons", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 459, + "description": "

Invoke the specified method for each enabled addon.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "eachAddonInvoke", + "params": [ + { + "name": "methodName", + "description": "the method to invoke on each addon", + "type": "String" + }, + { + "name": "args", + "description": "the arguments to pass to the invoked method", + "type": "Array" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 484, + "description": "

Invoke the specified method for each of the project's addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_eachProjectAddonInvoke", + "params": [ + { + "name": "methodName", + "description": "the method to invoke on each addon", + "type": "String" + }, + { + "name": "args", + "description": "the arguments to pass to the invoked method", + "type": "Array" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 517, + "description": "

Generates a tree for the specified path

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "treeGenerator", + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 552, + "description": "

Returns a given type of tree (if present), merged with the\napplication tree. For each of the trees available using this\nmethod, you can also use a direct method called treeFor[Type] (eg. treeForApp).

\n

Available tree names:

\n
    \n
  • {{#crossLink \"Addon/treeForApp:method\"}}app{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/treeForStyles:method\"}}styles{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/treeForTemplates:method\"}}templates{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/treeForAddonTemplates:method\"}}addon-templates{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/treeForAddon:method\"}}addon{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/treeForVendor:method\"}}vendor{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/treeForTestSupport:method\"}}test-support{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/treeForAddonTestSupport:method\"}}addon-test-support{{/crossLink}}
  • \n
  • {{#crossLink \"Addon/treeForPublic:method\"}}public{{/crossLink}}
  • \n
\n

Uses:

\n
    \n
  • manipulating trees at build time
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeFor", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 618, + "access": "private", + "tagname": "", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + } + ], + "itemtype": "method", + "name": "_treeFor", + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 640, + "description": "

Calculates a cacheKey for the given treeType. It is expected to return a\ncache key allowing multiple builds of the same tree to simply return the\noriginal tree (preventing duplicate work). If it returns null / undefined\nthe tree in question will opt out of this caching system.

\n

This method is invoked prior to calling treeFor with the same tree name.

\n

You should override this method if you implement custom treeFor or treeFor*\nmethods, which cause addons to opt-out of this caching.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "cacheKeyForTree", + "params": [ + { + "name": "treeType", + "description": "", + "type": "String" + } + ], + "return": { + "description": "cacheKey", + "type": "String" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 682, + "description": "

This method climbs up the hierarchy of addons\nup to the host application.

\n

This prevents previous addons (prior to this.import, ca 2.7.0)\nto break at importing assets when they are used nested in other addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_findHost", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 705, + "description": "

This method is called when the addon is included in a build. You\nwould typically use this hook to perform additional imports

\n

Uses:

\n
    \n
  • including vendor files
  • \n
  • setting configuration options
  • \n
\n

Note: Any options set in the consuming application will override the addon.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "included", + "params": [ + { + "name": "parent", + "description": "The parent object which included this addon", + "type": "EmberApp|EmberAddon" + } + ], + "example": [ + "\n```js\nincluded(parent) {\n this._super.included.apply(this, arguments);\n this.import(somePath);\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 738, + "description": "

Imports an asset into this addon.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "import", + "params": [ + { + "name": "asset", + "description": "Either a path to the asset or an object with environment names and paths as key-value pairs.", + "type": "Object|String" + }, + { + "name": "options", + "description": "Options object", + "type": "Object", + "optional": true, + "props": [ + { + "name": "type", + "description": "Either 'vendor' or 'test', defaults to 'vendor'", + "type": "String", + "optional": true + }, + { + "name": "prepend", + "description": "Whether or not this asset should be prepended, defaults to false", + "type": "Boolean", + "optional": true + }, + { + "name": "destDir", + "description": "Destination directory, defaults to the name of the directory the asset is in", + "type": "String", + "optional": true + } + ] + } + ], + "since": "2.7.0", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 758, + "description": "

Returns the tree for all app files

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForApp", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "App file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 770, + "description": "

Returns the tree for all template files

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForTemplates", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Template file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 782, + "description": "

Returns the tree for this addon's templates

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForAddonTemplates", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Addon Template file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 794, + "description": "

Returns a tree for this addon

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForAddon", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Addon file tree", + "type": "Tree" + }, + "example": [ + "\n```js\ntreeForAddon() {\n let emberVersion = new VersionChecker(this.project).for('ember-source');\n let shouldUsePolyfill = emberVersion.lt('4.5.0-alpha.4');\n\n if (shouldUsePolyfill) {\n return this._super.treeForAddon.apply(this, arguments);\n }\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 825, + "description": "

Returns the tree for all style files

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForStyles", + "params": [ + { + "name": "tree", + "description": "The tree to process, usually `app/styles/` in the addon.", + "type": "Tree" + } + ], + "return": { + "description": "The return tree has the same contents as the input tree, but is moved so that the `app/styles/` path is preserved.", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 844, + "description": "

Returns the tree for all vendor files

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForVendor", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Vendor file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 856, + "description": "

Returns the tree for all test support files

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForTestSupport", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Test Support file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 868, + "description": "

Returns the tree for all public files

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForPublic", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Public file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 888, + "description": "

Returns the tree for all test files namespaced to a given addon.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForAddonTestSupport", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 922, + "description": "

Runs the styles tree through preprocessors.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "compileStyles", + "params": [ + { + "name": "addonStylesTree", + "description": "Styles file tree", + "type": "Tree" + } + ], + "return": { + "description": "Compiled styles tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 947, + "description": "

Looks in the addon/ and addon/templates trees to determine if template files\nexist that need to be precompiled.

\n

This is executed once when building, but not on rebuilds.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldCompileTemplates", + "return": { + "description": "indicates if templates need to be compiled for this addon", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 961, + "description": "

Looks in the addon/ and addon/templates trees to determine if template files\nexist in the pods format that need to be precompiled.

\n

This is executed once when building, but not on rebuilds.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_shouldCompilePodTemplates", + "return": { + "description": "indicates if pod based templates need to be compiled for this addon", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1079, + "description": "

Runs the templates tree through preprocessors.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "compileTemplates", + "params": [ + { + "name": "tree", + "description": "Templates file tree", + "type": "Tree" + } + ], + "return": { + "description": "Compiled templates tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1113, + "description": "

Runs the addon tree through preprocessors.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "compileAddon", + "params": [ + { + "name": "tree", + "description": "Addon file tree", + "type": "Tree" + } + ], + "return": { + "description": "Compiled addon tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1157, + "description": "

Returns a tree with JSHint output for all addon JS.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "jshintAddonTree", + "return": { + "description": "Tree with JShint output (tests)", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1223, + "description": "

Preprocesses a javascript tree.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "preprocessJs", + "return": { + "description": "Preprocessed javascript", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1234, + "description": "

Returns a tree with all javascript for this addon.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processedAddonJsFiles", + "params": [ + { + "name": "the", + "description": "tree to preprocess", + "type": "Tree" + } + ], + "return": { + "description": "Processed javascript file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1263, + "description": "

Returns the module name for this addon.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "moduleName", + "return": { + "description": "module name", + "type": "String" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1278, + "description": "

Returns the path for addon blueprints.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "blueprintsPath", + "return": { + "description": "The path for blueprints", + "type": "String" + }, + "example": [ + "\n- [ember-cli-coffeescript](https://github.com/kimroen/ember-cli-coffeescript/blob/v1.13.2/index.js#L26)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1296, + "description": "

Augments the application's configuration settings.

\n

Object returned from this hook is merged with the application's configuration object.

\n

Application's configuration always take precedence.

\n

Uses:

\n
    \n
  • Modifying configuration options (see list of defaults here)
      \n
    • For example
        \n
      • storeConfigInMeta
      • \n
      • et, al
      • \n
      \n
    • \n
    \n
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "config", + "params": [ + { + "name": "env", + "description": "Name of current environment (ie \"development\")", + "type": "String" + }, + { + "name": "baseConfig", + "description": "Initial application configuration", + "type": "Object" + } + ], + "return": { + "description": "Configuration object to be merged with application configuration.", + "type": "Object" + }, + "example": [ + "\n```js\nconfig(environment, appConfig) {\n return {\n someAddonDefault: \"foo\"\n };\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1335, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "return": { + "description": "The addon's dependencies based on the addon's package.json", + "type": "Object" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1345, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "isEnabled", + "return": { + "description": "Whether or not this addon is enabled", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1354, + "description": "

Can be used to exclude addons from being added as a child addon.

\n

Uses:

\n
    \n
  • Abstract away multiple addons while only including one into the built assets
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "shouldIncludeChildAddon", + "params": [ + { + "name": "childAddon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "Whether or not a child addon is supposed to be included", + "type": "Boolean" + }, + "example": [ + "\n```js\nshouldIncludeChildAddon(childAddon) {\n if(childAddon.name === 'ember-cli-some-legacy-select-component') {\n return this.options.legacyMode;\n } else if(childAddon.name === 'ember-cli-awesome-new-select-component') {\n return !this.options.legacyMode;\n } else {\n return this._super.shouldIncludeChildAddon.apply(this, arguments);\n }\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1386, + "description": "

Allows the specification of custom addon commands.\nExpects you to return an object whose key is the name of the command and value is the command instance..

\n

This function is not implemented by default

\n

Uses:

\n
    \n
  • Include custom commands into consuming application
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "includedCommands", + "return": { + "description": "An object with included commands", + "type": "Object" + }, + "example": [ + "\n```js\nincludedCommands() {\n return {\n 'do-foo': require('./lib/commands/foo')\n };\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1410, + "description": "

Allows addons to define a custom transform function that other addons and app can use when using app.import.

\n

This function is not implemented by default

\n

Uses:

\n
    \n
  • An app or addons want to transform a dependency that is being imported using app.import.
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "importTransforms", + "return": { + "description": "An object with custom transforms", + "type": "Object" + }, + "example": [ + "\n```js\nimportTransforms() {\n return {\n 'my-custom-transform': function(tree, options) {\n // transform the incoming tree and return the updated tree\n }\n };\n}\n```\n\nAlternatively, if you want to process `options` before being passed into the custom transform function, use:", + "\n```js\nimportTransforms() {\n return {\n 'my-custom-transform': {\n transform: function(tree, options) {\n // transform the incoming tree and return the updated tree\n },\n processOptions: function(assetPath, entry, options) {\n // process your options\n\n return options\n }\n };\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1454, + "description": "

Pre-process a tree

\n

Uses:

\n
    \n
  • removing / adding files from the build.
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "preprocessTree", + "params": [ + { + "name": "type", + "description": "What kind of tree (eg. 'js', 'css', 'template')", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1468, + "description": "

Post-process a tree

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "postprocessTree", + "params": [ + { + "name": "type", + "description": "What kind of tree (eg. 'js', 'css', 'template')", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "example": [ + "\n- [broccoli-asset-rev](https://github.com/rickharrison/broccoli-asset-rev/blob/c82c3580855554a31f7d6600b866aecf69cdaa6d/index.js#L29)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1481, + "description": "

This hook allows you to make changes to the express server run by ember-cli.

\n

It's passed a startOptions object which contains:

\n
    \n
  • app Express server instance
  • \n
  • options A hash with:
      \n
    • project Current {{#crossLink \"Project\"}}project{{/crossLink}}
    • \n
    • watcher
    • \n
    • environment
    • \n
    \n
  • \n
\n

This function is not implemented by default

\n

Uses:

\n
    \n
  • Tacking on headers to each request
  • \n
  • Modifying the request object
  • \n
\n

Note: that this should only be used in development, and if you need the same behavior in production you'll\nneed to configure your server.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "serverMiddleware", + "params": [ + { + "name": "startOptions", + "description": "Express server start options", + "type": "Object" + } + ], + "example": [ + "\n```js\nserverMiddleware(startOptions) {\n var app = startOptions.app;\n\n app.use(function(req, res, next) {\n // Some middleware\n });\n}\n```\n\n- [ember-cli-content-security-policy](https://github.com/rwjblue/ember-cli-content-security-policy/blob/v0.5.0/index.js#L84)\n- [history-support-addon](https://github.com/ember-cli/ember-cli/blob/v2.4.3/lib/tasks/server/middleware/history-support/index.js#L25)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1520, + "description": "

This hook allows you to make changes to the express server run by testem.

\n

This function is not implemented by default

\n

Uses:

\n
    \n
  • Adding custom test-specific endpoints
  • \n
  • Manipulating HTTP requests in tests
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "testemMiddleware", + "params": [ + { + "name": "app", + "description": "the express app instance", + "type": "Object" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1535, + "description": "

This hook is called before a build takes place.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "preBuild", + "params": [ + { + "name": "result", + "description": "Build object", + "type": "Object" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1543, + "description": "

This hook is called after a build is complete.

\n

It's passed a result object which contains:

\n
    \n
  • directory Path to build output
  • \n
\n

Uses:

\n
    \n
  • Slow tree listing
  • \n
  • May be used to manipulate your project after build has happened
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "postBuild", + "params": [ + { + "name": "result", + "description": "Build result object", + "type": "Object" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1559, + "description": "

This hook is called after the build has been processed and the build files have been copied to the output directory

\n

It's passed a result object which contains:

\n
    \n
  • directory Path to build output
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "outputReady", + "params": [ + { + "name": "result", + "description": "Build result object", + "type": "Object" + } + ], + "example": [ + "\n- Opportunity to symlink or copy files elsewhere.\n- [ember-cli-rails-addon](https://github.com/rondale-sc/ember-cli-rails-addon/blob/v0.7.0/index.js#L45)\n - In this case we are using this in tandem with a rails middleware to remove a lock file.\n This allows our ruby gem to block incoming requests until after the build happens reliably." + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1576, + "description": "

This hook is called when an error occurs during the preBuild, postBuild or outputReady hooks\nfor addons, or when the build fails

\n

Uses:

\n
    \n
  • Custom error handling during build process
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "buildError", + "params": [ + { + "name": "error", + "description": "The error that was caught during the processes listed above", + "type": "Error" + } + ], + "example": [ + "\n- [ember-cli-rails-addon](https://github.com/rondale-sc/ember-cli-rails-addon/blob/v0.7.0/index.js#L11)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1592, + "description": "

Used to add preprocessors to the preprocessor registry. This is often used by addons like ember-cli-htmlbars\nand ember-cli-coffeescript to add a template or js preprocessor to the registry.

\n

Uses:

\n
    \n
  • Adding preprocessors to the registry.
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "setupPreprocessorRegistry", + "params": [ + { + "name": "type", + "description": "either `\"self\"` or `\"parent\"`", + "type": "String" + }, + { + "name": "registry", + "description": "the registry to be set up" + } + ], + "example": [ + "\n```js\nsetupPreprocessorRegistry(type, registry) {\n // ensure that broccoli-ember-hbs-template-compiler is not processing hbs files\n registry.remove('template', 'broccoli-ember-hbs-template-compiler');\n\n registry.add('template', {\n name: 'ember-cli-htmlbars',\n ext: 'hbs',\n _addon: this,\n toTree(tree) {\n var htmlbarsOptions = this._addon.htmlbarsOptions();\n return htmlbarsCompile(tree, htmlbarsOptions);\n },\n\n precompile(string) {\n var htmlbarsOptions = this._addon.htmlbarsOptions();\n var templateCompiler = htmlbarsOptions.templateCompiler;\n return utils.template(templateCompiler, string);\n }\n });\n\n if (type === 'parent') {\n this.parentRegistry = registry;\n }\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1634, + "description": "

Return value is merged into the tests tree. This lets you inject\nlinter output as test results.

\n

Uses:

\n
    \n
  • JSHint
  • \n
  • any other form of automated test generation that turns code into tests
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "lintTree", + "params": [ + { + "name": "treeType", + "description": "`app`, `tests`, `templates`, or `addon`", + "type": "String" + }, + { + "name": "tree", + "description": "tree of files (JavaScript files for `app`, `tests`, and `addon` types)", + "type": "Tree" + } + ], + "example": [ + "\n- [ember-cli-qunit](https://github.com/ember-cli/ember-cli-qunit/blob/v1.4.1/index.js#L206)\n- [ember-cli-mocha](https://github.com/ef4/ember-cli-mocha/blob/66803037fe203b24e96dea83a2bd91de48b842e1/index.js#L101)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1653, + "description": "

Allow addons to implement contentFor method to add string output into the associated {{content-for 'foo'}} section in index.html

\n

Uses:

\n
    \n
  • For instance, to inject analytics code into index.html
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "contentFor", + "params": [ + { + "name": "type", + "description": "" + }, + { + "name": "config", + "description": "" + }, + { + "name": "content", + "description": "" + } + ], + "example": [ + "\n- [ember-cli-google-analytics](https://github.com/pgrippi/ember-cli-google-analytics/blob/v1.5.0/index.js#L79)" + ], + "class": "Addon", + "module": "ember-cli" + } + ], + "events": [], + "properties": [ + { + "file": "lib/models/per-bundle-addon-cache/target-instance.js", + "line": 3, + "description": "

A Symbol constant for sharing between index.js and addon-proxy.js rather than\nputting the symbol into the Symbol global cache. The symbol is used in per-bundle\ncache entries to refer to the field that points at the real instance that a Proxy\nrefers to.

\n", + "itemtype": "property", + "name": "", + "type": "Symbol", + "final": 1, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 155, + "description": "

The name of this addon.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "String", + "itemtype": "property", + "name": "name", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 164, + "description": "

The absolute path of the root directory where this addon is located.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "String", + "itemtype": "property", + "name": "root", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 173, + "description": "

The host app instance.

\n

Note: this property will only be present on addons that are a direct dependency\nof the application itself, not of other addons. It is also not available in init(),\nbut will be set before setupPreprocessorRegistry() and included() are invoked.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "EmberApp", + "itemtype": "property", + "name": "app", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 186, + "description": "

The root {{#crossLink \"Project\"}}project{{/crossLink}} to which this addon belongs.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "Project", + "itemtype": "property", + "name": "project", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 195, + "description": "

This addon's parent.

\n

If the addon is a direct dependency of an application, then parent will be the\ncorresponding {{#crossLink \"Project\"}}project{{/crossLink}} instance. If it's a\ndependency of another addon, then parent will be a reference to that addon.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "Project|Addon", + "itemtype": "property", + "name": "parent", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 208, + "description": "

The set of addons that this addon itself depends on.

\n

This array is populated from the addon's listed dependencies and any items in\nember-addon.paths in its package.json.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "Addon[]", + "itemtype": "property", + "name": "addons", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 220, + "description": "

A console-ui object that can be used\nto log messages for the user and indicate progress on long-running operations.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "UI", + "itemtype": "property", + "name": "ui", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 230, + "description": "

The contents of the addon's package.json.

\n", + "access": "public", + "tagname": "", + "final": 1, + "type": "Object", + "itemtype": "property", + "name": "pkg", + "class": "Addon", + "module": "ember-cli" + } + ] + }, + "relationships": { + "parent-class": { + "data": { + "id": "CoreObject", + "type": "missing" + } + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-AmdTransformAddon.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-AmdTransformAddon.json new file mode 100644 index 000000000..e597f579d --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-AmdTransformAddon.json @@ -0,0 +1,44 @@ +{ + "data": { + "id": "ember-cli-5.4.0-AmdTransformAddon", + "type": "class", + "attributes": { + "name": "AmdTransformAddon", + "shortname": "AmdTransformAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/transforms/amd/index.js", + "line": 4, + "description": "

This addon is used to register a custom AMD transform for app and addons to use.

\n", + "is_constructor": 1, + "methods": [], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Blueprint.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Blueprint.json new file mode 100644 index 000000000..ac514fa9b --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Blueprint.json @@ -0,0 +1,1394 @@ +{ + "data": { + "id": "ember-cli-5.4.0-Blueprint", + "type": "class", + "attributes": { + "name": "Blueprint", + "shortname": "Blueprint", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "Blueprint", + "file": "lib/models/blueprint.js", + "line": 29, + "description": "

A blueprint is a bundle of template files with optional install\nlogic.

\n

Blueprints follow a simple structure. Let's take the built-in\ncontroller blueprint as an example:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n13\n14\n
blueprints/controller\n├── files\n│   ├── app\n│   │   └── __path__\n│   │       └── __name__.js\n└── index.js\n\nblueprints/controller-test\n├── files\n│   └── tests\n│       └── unit\n│           └── controllers\n│               └── __test__.js\n└── index.js
\n
\n
\n \n

Files

\n

files contains templates for the all the files to be\ninstalled into the target directory.

\n

The __name__ token is subtituted with the dasherized\nentity name at install time. For example, when the user\ninvokes ember generate controller foo then __name__ becomes\nfoo. When the --pod flag is used, for example ember generate controller foo --pod then __name__ becomes\ncontroller.

\n

The __path__ token is substituted with the blueprint\nname at install time. For example, when the user invokes\nember generate controller foo then __path__ becomes\ncontroller. When the --pod flag is used, for example\nember generate controller foo --pod then __path__\nbecomes foo (or <podModulePrefix>/foo if the\npodModulePrefix is defined). This token is primarily for\npod support, and is only necessary if the blueprint can be\nused in pod structure. If the blueprint does not require pod\nsupport, simply use the blueprint name instead of the\n__path__ token.

\n

The __test__ token is substituted with the dasherized\nentity name and appended with -test at install time.\nThis token is primarily for pod support and only necessary\nif the blueprint requires support for a pod structure. If\nthe blueprint does not require pod support, simply use the\n__name__ token instead.

\n

Template Variables (AKA Locals)

\n

Variables can be inserted into templates with\n<%= someVariableName %>.

\n

For example, the built-in util blueprint\nfiles/app/utils/__name__.js looks like this:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
export default function <%= camelizedModuleName %>() {\n  return true;\n}
\n
\n
\n \n

<%= camelizedModuleName %> is replaced with the real\nvalue at install time.

\n

The following template variables are provided by default:

\n
    \n
  • dasherizedPackageName
  • \n
  • classifiedPackageName
  • \n
  • dasherizedModuleName
  • \n
  • classifiedModuleName
  • \n
  • camelizedModuleName
  • \n
\n

packageName is the project name as found in the project's\npackage.json.

\n

moduleName is the name of the entity being generated.

\n

The mechanism for providing custom template variables is\ndescribed below.

\n

Index.js

\n

Custom installation and uninstallation behavior can be added\nby overriding the hooks documented below. index.js should\nexport a plain object, which will extend the prototype of the\nBlueprint class. If needed, the original Blueprint prototype\ncan be accessed through the _super property.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n13\n14\n15\n16\n17\n18\n19\n20\n21\n22\n23\n24\n25\n26\n27\n28\n29\n30\n31\n
module.exports = {\n  locals(options) {\n    // Return custom template variables here.\n    return {};\n  },\n\n  normalizeEntityName(entityName) {\n    // Normalize and validate entity name here.\n    return entityName;\n  },\n\n  fileMapTokens(options) {\n    // Return custom tokens to be replaced in your files\n    return {\n      __token__(options){\n        // logic to determine value goes here\n        return 'value';\n      }\n    }\n  },\n\n  filesPath(options) {\n    return path.join(this.path, 'files');\n  },\n\n  beforeInstall(options) {},\n  afterInstall(options) {},\n  beforeUninstall(options) {},\n  afterUninstall(options) {}\n\n};
\n
\n
\n \n

Blueprint Hooks

\n

beforeInstall & beforeUninstall

\n

Called before any of the template files are processed and receives\nthe options and locals hashes as parameters. Typically used for\nvalidating any additional command line options or for any asynchronous\nsetup that is needed. As an example, the controller blueprint validates\nits --type option in this hook. If you need to run any asynchronous code,\nwrap it in a promise and return that promise from these hooks. This will\nensure that your code is executed correctly.

\n

afterInstall & afterUninstall

\n

The afterInstall and afterUninstall hooks receives the same\narguments as locals. Use it to perform any custom work after the\nfiles are processed. For example, the built-in route blueprint\nuses these hooks to add and remove relevant route declarations in\napp/router.js.

\n

Overriding Install

\n

If you don't want your blueprint to install the contents of\nfiles you can override the install method. It receives the\nsame options object described above and must return a promise.\nSee the built-in resource blueprint for an example of this.

\n", + "is_constructor": 1, + "extends": "CoreObject", + "params": [ + { + "name": "blueprintPath", + "description": "", + "type": "String", + "optional": true + }, + { + "name": "blueprintOptions", + "description": "", + "type": "Object", + "optional": true + } + ], + "methods": [ + { + "file": "lib/models/blueprint.js", + "line": 219, + "description": "

Process the options object coming from either\nthe init, install or uninstall hook.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_processOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 235, + "description": "

Hook to specify the path to the blueprint's files. By default this is\npath.join(this.path, 'files).

\n

This can be used to customize which set of files to install based on options\nor environmental variables. It defaults to the files directory within the\nblueprint's folder.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "filesPath", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "Path to the blueprints files directory.", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 252, + "description": "

Used to retrieve files for blueprint.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "files", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "Contents of the blueprint's files directory", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 275, + "itemtype": "method", + "name": "srcPath", + "params": [ + { + "name": "file", + "description": "", + "type": "String" + } + ], + "return": { + "description": "Resolved path to the file", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 284, + "description": "

Hook for normalizing entity name

\n

Use the normalizeEntityName hook to add custom normalization and\nvalidation of the provided entity name. The default hook does not\nmake any changes to the entity name, but makes sure an entity name\nis present and that it doesn't have a trailing slash.

\n

This hook receives the entity name as its first argument. The string\nreturned by this hook will be used as the new entity name.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "normalizeEntityName", + "params": [ + { + "name": "entityName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 304, + "description": "

Write a status and message to the UI

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_writeStatusToUI", + "params": [ + { + "name": "chalkColor", + "description": "", + "type": "Function" + }, + { + "name": "keyword", + "description": "", + "type": "String" + }, + { + "name": "message", + "description": "", + "type": "String" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 318, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_writeFile", + "params": [ + { + "name": "info", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 368, + "description": "

Calls an action.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_commit", + "params": [ + { + "name": "result", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "throws": { + "description": "Action doesn't exist.", + "type": "Error" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 386, + "description": "

Prints warning for pod unsupported.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkForPod", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 403, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_normalizeEntityName", + "params": [ + { + "name": "entity", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 414, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkInRepoAddonExists", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 443, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_process", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "beforeHook", + "description": "", + "type": "Function" + }, + { + "name": "process", + "description": "", + "type": "Function" + }, + { + "name": "afterHook", + "description": "", + "type": "Function" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 469, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldConvertToJS", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "fileInfo", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 523, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "convertToJS", + "params": [ + { + "name": "fileInfo", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 543, + "itemtype": "method", + "name": "install", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 570, + "itemtype": "method", + "name": "uninstall", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 592, + "description": "

Hook for running operations before install.

\n", + "itemtype": "method", + "name": "beforeInstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 599, + "description": "

Hook for running operations after install.

\n", + "itemtype": "method", + "name": "afterInstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 606, + "description": "

Hook for running operations before uninstall.

\n", + "itemtype": "method", + "name": "beforeUninstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 613, + "description": "

Hook for running operations after uninstall.

\n", + "itemtype": "method", + "name": "afterUninstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 622, + "description": "

Hook for adding custom template variables.

\n

When the following is called on the command line:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n
ember generate controller foo --type=array --dry-run isAdmin:true
\n
\n
\n \n

The object passed to locals looks like this:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n
{\n  entity: {\n    name: 'foo',\n    options: {\n      isAdmin: true\n    }\n  },\n  dryRun: true\n  type: \"array\"\n  // more keys\n}
\n
\n
\n \n

This hook must return an object or a Promise which resolves to an object.\nThe resolved object will be merged with the aforementioned default locals.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "locals", + "params": [ + { + "name": "options", + "description": "General and entity-specific options", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object|Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 657, + "description": "

Hook to add additional or override existing fileMap tokens.

\n

Use fileMapTokens to add custom fileMap tokens for use\nin the mapFile method. The hook must return an object in the\nfollowing pattern:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n
{\n  __token__(options){\n    // logic to determine value goes here\n    return 'value';\n  }\n}
\n
\n
\n \n

It will be merged with the default fileMapTokens, and can be used\nto override any of the default tokens.

\n

Tokens are used in the files folder (see files), and get replaced with\nvalues when the mapFile method is called.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "fileMapTokens", + "return": { + "description": "", + "type": "Object|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 685, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_fileMapTokens", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 741, + "description": "

Used to generate fileMap tokens for mapFile.

\n", + "itemtype": "method", + "name": "generateFileMap", + "params": [ + { + "name": "fileMapVariables", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 756, + "itemtype": "method", + "name": "buildFileInfo", + "params": [ + { + "name": "destPath", + "description": "", + "type": "Function" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + }, + { + "name": "file", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "FileInfo" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 777, + "itemtype": "method", + "name": "isUpdate", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 787, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getFileInfos", + "params": [ + { + "name": "files", + "description": "", + "type": "Array" + }, + { + "name": "intoDir", + "description": "", + "type": "String" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "file infos", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 799, + "description": "

Add update files to ignored files or reset them

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_ignoreUpdateFiles", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 812, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getFilesForInstall", + "params": [ + { + "name": "targetFiles", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "files", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 825, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkForNoMatch", + "params": [ + { + "name": "fileInfos", + "description": "", + "type": "Array" + }, + { + "name": "rawArgs", + "description": "", + "type": "String" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 839, + "itemtype": "method", + "name": "processFiles", + "params": [ + { + "name": "intoDir", + "description": "", + "type": "String" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 872, + "itemtype": "method", + "name": "processFilesForUninstall", + "params": [ + { + "name": "intoDir", + "description": "", + "type": "String" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 923, + "itemtype": "method", + "name": "mapFile", + "params": [ + { + "name": "file", + "description": "", + "type": "String" + }, + { + "name": "locals", + "description": "" + } + ], + "return": { + "description": "", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 940, + "description": "

Looks for a root token in the files folder. Must be present for\nthe blueprint to support addon tokens. The server, blueprints, and test

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "supportsAddon", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 952, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_generateFileMapVariables", + "params": [ + { + "name": "moduleName", + "description": "", + "type": "String" + }, + { + "name": "locals", + "description": "" + }, + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 982, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_locals", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1015, + "description": "

Used to add a package to the project's package.json.

\n

Generally, this would be done from the afterInstall hook, to\nensure that a package that is required by a given blueprint is\navailable.

\n", + "itemtype": "method", + "name": "addPackageToProject", + "params": [ + { + "name": "packageName", + "description": "", + "type": "String" + }, + { + "name": "target", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1037, + "description": "

Used to add multiple packages to the project's package.json.

\n

Generally, this would be done from the afterInstall hook, to\nensure that a package that is required by a given blueprint is\navailable.

\n

Expects each array item to be an object with a name. Each object\nmay optionally have a target to specify a specific version.

\n", + "itemtype": "method", + "name": "addPackagesToProject", + "params": [ + { + "name": "packages", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "example": [ + "\n```js\nthis.addPackagesToProject([\n { name: 'lodash' },\n { name: 'moment', target: '^2.17.0' },\n]);\n```" + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1086, + "description": "

Used to remove a package from the project's package.json.

\n

Generally, this would be done from the afterInstall hook, to\nensure that any package conflicts can be resolved before the\naddon is used.

\n", + "itemtype": "method", + "name": "removePackageFromProject", + "params": [ + { + "name": "packageName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1103, + "description": "

Used to remove multiple packages from the project's package.json.

\n

Generally, this would be done from the afterInstall hook, to\nensure that any package conflicts can be resolved before the\naddon is used.

\n

Expects each array item to be an object with a name property.

\n", + "itemtype": "method", + "name": "removePackagesFromProject", + "params": [ + { + "name": "packages", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1144, + "description": "

Used to add an addon to the project's package.json and run it's\ndefaultBlueprint if it provides one.

\n

Generally, this would be done from the afterInstall hook, to\nensure that a package that is required by a given blueprint is\navailable.

\n", + "itemtype": "method", + "name": "addAddonToProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1164, + "description": "

Used to add multiple addons to the project's package.json and run their\ndefaultBlueprint if they provide one.

\n

Generally, this would be done from the afterInstall hook, to\nensure that a package that is required by a given blueprint is\navailable.

\n", + "itemtype": "method", + "name": "addAddonsToProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1241, + "description": "

Used to retrieve a task with the given name. Passes the new task\nthe standard information available (like ui, project, etc).

\n", + "itemtype": "method", + "name": "taskFor", + "params": [ + { + "name": "dasherizedName", + "description": "" + } + ], + "access": "public", + "tagname": "", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1258, + "description": "

Inserts the given content into a file. If the contentsToInsert string is already\npresent in the current contents, the file will not be changed unless force option\nis passed.

\n

If options.before is specified, contentsToInsert will be inserted before\nthe first instance of that string. If options.after is specified, the\ncontents will be inserted after the first instance of that string.\nIf the string specified by options.before or options.after is not in the file,\nno change will be made.

\n

If neither options.before nor options.after are present, contentsToInsert\nwill be inserted at the end of the file.

\n

Example:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
// app/router.js\nRouter.map(function () {\n});
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n
insertIntoFile('app/router.js', '  this.route(\"admin\");', {\n  after: 'Router.map(function () {' + EOL\n}).then(function() {\n  // file has been inserted into!\n});\n
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n
// app/router.js\nRouter.map(function () {\n  this.route(\"admin\");\n});
\n
\n
\n \n", + "itemtype": "method", + "name": "insertIntoFile", + "params": [ + { + "name": "pathRelativeToProjectRoot", + "description": "", + "type": "String" + }, + { + "name": "contentsToInsert", + "description": "", + "type": "String" + }, + { + "name": "providedOptions", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1362, + "description": "

Used to retrieve a blueprint with the given name.

\n", + "itemtype": "method", + "name": "lookupBlueprint", + "params": [ + { + "name": "dasherizedName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Blueprint" + }, + "access": "public", + "tagname": "", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1379, + "static": 1, + "itemtype": "method", + "name": "lookup", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object", + "optional": true, + "props": [ + { + "name": "paths", + "description": "Extra paths to search for blueprints", + "type": "Array", + "optional": true + }, + { + "name": "ignoreMissing", + "description": "Throw a `SilentError` if a\n matching Blueprint could not be found", + "type": "Boolean", + "optional": true + }, + { + "name": "blueprintOptions", + "description": "Options object that will be passed\n along to the Blueprint instance on creation.", + "type": "Object", + "optional": true + } + ] + } + ], + "return": { + "description": "", + "type": "Blueprint" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1420, + "description": "

Loads a blueprint from given path.

\n", + "static": 1, + "itemtype": "method", + "name": "load", + "params": [ + { + "name": "blueprintPath", + "description": "", + "type": "String" + }, + { + "name": "blueprintOptions", + "description": "", + "type": "Object", + "optional": true + } + ], + "return": { + "description": "blueprint instance", + "type": "Blueprint" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1448, + "static": 1, + "itemtype": "method", + "name": "list", + "params": [ + { + "name": "options", + "description": "", + "type": "Object", + "optional": true, + "props": [ + { + "name": "paths", + "description": "Extra paths to search for blueprints", + "type": "Array", + "optional": true + } + ] + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1532, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "prepareConfirm", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1545, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "markIdenticalToBeSkipped", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1556, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "markToBeRemoved", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1565, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "gatherConfirmationMessages", + "params": [ + { + "name": "collection", + "description": "", + "type": "Array" + }, + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1579, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isIgnored", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1591, + "description": "

Combines provided lookup paths with defaults and removes\nduplicates.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "generateLookupPaths", + "params": [ + { + "name": "lookupPaths", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1606, + "description": "

Looks for a path token in the files folder. Must be present for\nthe blueprint to support pod tokens.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "hasPathToken", + "params": [ + { + "name": "files", + "description": "", + "type": "Files" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1645, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isValidFile", + "params": [ + { + "name": "fileInfo", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1659, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isFilePath", + "params": [ + { + "name": "fileInfo", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1669, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "dir", + "return": { + "description": "list of files in the given directory or and empty array if no directory exists", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1682, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getDetailedHelpPath", + "params": [ + { + "name": "thisPath", + "description": "", + "type": "String" + } + ], + "return": { + "description": "help path", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + } + ], + "events": [], + "properties": [ + { + "file": "lib/models/blueprint.js", + "line": 198, + "description": "

Indicates whether or not a blueprint is a candidate for automatic transpilation from TS to JS.\nThis property could be false in the case that the blueprint is written in JS and is not intended\nto work with TS at all, OR in the case that the blueprint is written in TS and the author does\nnot intend to support transpilation to JS.

\n", + "access": "public", + "tagname": "", + "itemtype": "property", + "name": "shouldTransformTypeScript", + "type": "Boolean", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 330, + "description": "

Actions lookup

\n", + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "_actions", + "type": "Object", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1497, + "description": "

Files that are renamed when installed into the target directory.\nThis allows including files in the blueprint that would have an effect\non another process, such as a file named .gitignore.

\n

The keys are the filenames used in the files folder.\nThe values are the filenames used in the target directory.

\n", + "static": 1, + "itemtype": "property", + "name": "renamedFiles", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1512, + "static": 1, + "itemtype": "property", + "name": "ignoredFiles", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1518, + "static": 1, + "itemtype": "property", + "name": "ignoredUpdateFiles", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1524, + "static": 1, + "itemtype": "property", + "name": "defaultLookupPaths", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + } + ] + }, + "relationships": { + "parent-class": { + "data": { + "id": "CoreObject", + "type": "missing" + } + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Builder.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Builder.json new file mode 100644 index 000000000..4d3853635 --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Builder.json @@ -0,0 +1,175 @@ +{ + "data": { + "id": "ember-cli-5.4.0-Builder", + "type": "class", + "attributes": { + "name": "Builder", + "shortname": "Builder", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/builder.js", + "line": 14, + "description": "

Wrapper for the Broccoli Builder class.

\n", + "access": "private", + "tagname": "", + "methods": [ + { + "file": "lib/models/builder.js", + "line": 39, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "readBuildFile", + "params": [ + { + "name": "path", + "description": "The file path to read the build file from" + } + ], + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 60, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "setupBroccoliBuilder", + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 98, + "description": "

Determine whether the output path is safe to delete. If the outputPath\nappears anywhere in the parents of the project root, the build would\ndelete the project directory. In this case return false, otherwise\nreturn true.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "canDeleteOutputPath", + "params": [ + { + "name": "outputPath", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 120, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "copyToOutputPath", + "params": [ + { + "name": "inputPath", + "description": "", + "type": "String" + } + ], + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 144, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processAddonBuildSteps", + "params": [ + { + "name": "buildStep", + "description": "" + }, + { + "name": "results", + "description": "" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 169, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "build", + "return": { + "description": "", + "type": "Promise" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 244, + "description": "

Delegates to the cleanup method of the wrapped Broccoli builder.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "cleanup", + "return": { + "description": "", + "type": "Promise" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 276, + "description": "

Checks for issues in the environment that can't easily be detected until\nafter a build and issues any necessary deprecation warnings.

\n
    \n
  • check for old (pre 0.1.4) versions of heimdalljs
  • \n
\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "checkForPostBuildEnvironmentIssues", + "class": "Builder", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-CLI.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-CLI.json new file mode 100644 index 000000000..a7366fc33 --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-CLI.json @@ -0,0 +1,211 @@ +{ + "data": { + "id": "ember-cli-5.4.0-CLI", + "type": "class", + "attributes": { + "name": "CLI", + "shortname": "CLI", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/cli/cli.js", + "line": 15, + "access": "private", + "tagname": "", + "is_constructor": 1, + "params": [ + { + "name": "options", + "description": "" + } + ], + "methods": [ + { + "file": "lib/cli/cli.js", + "line": 77, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "maybeMakeCommand", + "params": [ + { + "name": "commandName", + "description": "" + }, + { + "name": "commandArgs", + "description": "" + } + ], + "return": { + "description": "", + "type": "Null|CurrentCommand" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 115, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "run", + "params": [ + { + "name": "environmentPromiseHash", + "description": "", + "type": "Promise" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 224, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "callHelp", + "params": [ + { + "name": "options", + "description": "" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 264, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "logError", + "params": [ + { + "name": "error", + "description": "" + } + ], + "return": { + "description": "", + "type": "Number" + }, + "class": "CLI", + "module": "ember-cli" + } + ], + "events": [], + "properties": [ + { + "file": "lib/cli/cli.js", + "line": 22, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "name", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 28, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "ui", + "type": "UI", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 35, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "testing", + "type": "Boolean", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 42, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "disableDependencyChecker", + "type": "Boolean", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 49, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "root", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 55, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "npmPackage", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 61, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "instrumentation", + "class": "CLI", + "module": "ember-cli" + } + ] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Command.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Command.json new file mode 100644 index 000000000..37946c565 --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Command.json @@ -0,0 +1,466 @@ +{ + "data": { + "id": "ember-cli-5.4.0-Command", + "type": "class", + "attributes": { + "name": "Command", + "shortname": "Command", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/command.js", + "line": 42, + "methods": [ + { + "file": "lib/models/command.js", + "line": 153, + "description": "

Registers options with command. This method provides the ability to extend or override command options.\nExpects an object containing anonymousOptions or availableOptions, which it will then merge with\nexisting availableOptions before building the optionsAliases which are used to define shorthands.

\n", + "itemtype": "method", + "name": "registerOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 179, + "description": "

Called when command is interrupted from outside, e.g. ctrl+C or process kill\nCan be used to cleanup artifacts produced by command and control process exit code

\n", + "itemtype": "method", + "name": "onInterrupt", + "return": { + "description": "if rejected promise then result of promise will be used as an exit code", + "type": "Promise|undefined" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 206, + "description": "

Looks up for the task and runs\nIt also keeps the reference for the current active task\nKeeping reference for the current task allows to cleanup task on interruption

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "runTask", + "throws": { + "description": "on attempt to run concurrent task", + "type": "Error" + }, + "params": [ + { + "name": "name", + "description": "Task name from the tasks registry. Should be capitalized", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "Task run", + "type": "Promise" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 247, + "description": "

Hook for extending a command before it is run in the cli.run command.\nMost common use case would be to extend availableOptions.

\n", + "itemtype": "method", + "name": "beforeRun", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 255, + "itemtype": "method", + "name": "validateAndRun", + "return": { + "description": "", + "type": "Promise" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 315, + "description": "

Reports if the given command has a command line option by a given name

\n", + "itemtype": "method", + "name": "hasOption", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 331, + "description": "

Merges any options with duplicate keys in the availableOptions array.\nUsed primarily by registerOptions.

\n", + "itemtype": "method", + "name": "mergeDuplicateOption", + "params": [ + { + "name": "key", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 366, + "description": "

Normalizes option, filling in implicit values

\n", + "itemtype": "method", + "name": "normalizeOption", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 378, + "description": "

Assigns option

\n", + "itemtype": "method", + "name": "assignOption", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + }, + { + "name": "parsedOptions", + "description": "", + "type": "Object" + }, + { + "name": "commandOptions", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 411, + "description": "

Validates option

\n", + "itemtype": "method", + "name": "validateOption", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 437, + "description": "

Parses alias for an option and adds it to optionsAliases

\n", + "itemtype": "method", + "name": "parseAlias", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + }, + { + "name": "alias", + "description": "", + "type": "Object|String" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 482, + "itemtype": "method", + "name": "assignAlias", + "params": [ + { + "name": "option", + "description": "" + }, + { + "name": "alias", + "description": "" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 497, + "description": "

Validates alias value

\n", + "itemtype": "method", + "name": "validateAlias", + "params": [ + { + "name": "alias", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 529, + "description": "

Parses command arguments and processes

\n", + "itemtype": "method", + "name": "parseArgs", + "params": [ + { + "name": "commandArgs", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object|null" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 585, + "itemtype": "method", + "name": "run", + "params": [ + { + "name": "commandArgs", + "description": "" + } + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 595, + "description": "

Prints basic help for the command.

\n

Basic help looks like this:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n
ember generate <blueprint> <options...>\n  Generates new code from blueprints\n  aliases: g\n  --dry-run (Default: false)\n  --verbose (Default: false)
\n
\n
\n \n

The default implementation is designed to cover all bases\nbut may be overridden if necessary.

\n", + "itemtype": "method", + "name": "printBasicHelp", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 626, + "description": "

Prints detailed help for the command.

\n

The default implementation is no-op and should be overridden\nfor each command where further help text is required.

\n", + "itemtype": "method", + "name": "printDetailedHelp", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 636, + "itemtype": "method", + "name": "getJson", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + } + ], + "events": [], + "properties": [ + { + "file": "lib/models/command.js", + "line": 51, + "description": "

The description of what this command does.

\n", + "final": 1, + "itemtype": "property", + "name": "description", + "type": "String", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 60, + "description": "

Does this command work everywhere or just inside or outside of projects.

\n

Possible values:

\n
    \n
  • insideProject
  • \n
  • outsideProject
  • \n
  • everywhere
  • \n
\n", + "final": 1, + "itemtype": "property", + "name": "works", + "type": "String", + "default": "`insideProject`", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 81, + "final": 1, + "itemtype": "property", + "name": "isWithinProject", + "type": "Boolean", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 88, + "description": "

The name of the command.

\n", + "final": 1, + "itemtype": "property", + "name": "name", + "type": "String", + "example": [ + " `new` or `generate`" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 100, + "description": "

An array of aliases for the command

\n", + "final": 1, + "itemtype": "property", + "name": "aliases", + "type": "Array", + "example": [ + " `['g']` for the `generate` command" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 117, + "description": "

An array of available options for the command

\n", + "final": 1, + "itemtype": "property", + "name": "availableOptions", + "type": "Array", + "example": [ + "\n```js\navailableOptions: [\n { name: 'dry-run', type: Boolean, default: false, aliases: ['d'] },\n { name: 'verbose', type: Boolean, default: false, aliases: ['v'] },\n { name: 'blueprint', type: String, default: 'app', aliases: ['b'] },\n { name: 'skip-npm', type: Boolean, default: false, aliases: ['sn'] },\n { name: 'skip-git', type: Boolean, default: false, aliases: ['sg'] },\n { name: 'directory', type: String , aliases: ['dir'] }\n],\n```" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 137, + "description": "

An array of anonymous options for the command

\n", + "final": 1, + "itemtype": "property", + "name": "anonymousOptions", + "type": "Array", + "example": [ + "\n```js\nanonymousOptions: [\n ''\n],\n```" + ], + "class": "Command", + "module": "ember-cli" + } + ] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-DefaultPackager.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-DefaultPackager.json new file mode 100644 index 000000000..b166d302a --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-DefaultPackager.json @@ -0,0 +1,43 @@ +{ + "data": { + "id": "ember-cli-5.4.0-DefaultPackager", + "type": "class", + "attributes": { + "name": "DefaultPackager", + "shortname": "DefaultPackager", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "file": "lib/broccoli/default-packager.js", + "line": 98, + "description": "

Responsible for packaging Ember.js application.

\n", + "is_constructor": 1, + "methods": [], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-EmberAddon.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-EmberAddon.json new file mode 100644 index 000000000..1f4ed5e83 --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-EmberAddon.json @@ -0,0 +1,663 @@ +{ + "data": { + "id": "ember-cli-5.4.0-EmberAddon", + "type": "class", + "attributes": { + "name": "EmberAddon", + "shortname": "EmberAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/broccoli/ember-addon.js", + "line": 13, + "description": "

EmberAddon is used during addon development.

\n", + "extends": "EmberApp", + "is_constructor": 1, + "params": [ + { + "name": "defaults", + "description": "", + "type": "Object", + "optional": true + }, + { + "name": "options", + "description": "Configuration options", + "type": "Object", + "optional": true, + "optdefault": "{}" + } + ], + "methods": [ + { + "file": "lib/broccoli/ember-app.js", + "line": 180, + "description": "

Initializes the tests and hinting properties.

\n

Defaults to false unless ember test was used or this is not a production build.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initTestsAndHinting", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 196, + "description": "

Initializes the project property from options.project or the\nclosest Ember CLI project from the current working directory.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 217, + "description": "

Initializes the options property from the options parameter and\na set of default values from Ember CLI.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 334, + "description": "

Resolves a path relative to the project's root

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_resolveLocal", + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 344, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initVendorFiles", + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 371, + "description": "

Returns the environment name

\n", + "access": "public", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "env", + "return": { + "description": "Environment name", + "type": "String" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 383, + "description": "

Delegates to broccoli-concat with the sourceMapConfig option set to options.sourcemaps.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_concatFiles", + "params": [ + { + "name": "tree", + "description": "" + }, + { + "name": "options", + "description": "" + } + ], + "return": { + "description": "" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 398, + "description": "

Checks the result of addon.isEnabled() if it exists, defaults to true otherwise.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonEnabled", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 410, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonDisabledByExclude", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 421, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonDisabledByInclude", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 432, + "description": "

Returns whether an addon should be added to the project

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldIncludeAddon", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 448, + "description": "

Calls the included hook on addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_notifyAddonIncluded", + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 484, + "description": "

Calls the importTransforms hook on addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_importAddonTransforms", + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 533, + "description": "

Loads and initializes addons for this project.\nCalls initializeAddons on the Project.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "initializeAddons", + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 560, + "description": "

Returns a list of trees for a given type, returned by all addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonTreesFor", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + } + ], + "return": { + "description": "List of trees", + "type": "Array" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 572, + "description": "

Runs addon post-processing on a given tree and returns the processed tree.

\n

This enables addons to do process immediately after the preprocessor for a\ngiven type is run, but before concatenation occurs. If an addon wishes to\napply a transform before the preprocessors run, they can instead implement the\npreprocessTree hook.

\n

To utilize this addons implement postprocessTree hook.

\n

An example, would be to apply some broccoli transform on all JS files, but\nonly after the existing pre-processors have run.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n
module.exports = {\n  name: 'my-cool-addon',\n  postprocessTree(type, tree) {\n    if (type === 'js') {\n      return someBroccoliTransform(tree);\n    }\n\n    return tree;\n  }\n}
\n
\n
\n \n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonPostprocessTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 609, + "description": "

Runs addon pre-processing on a given tree and returns the processed tree.

\n

This enables addons to do process immediately before the preprocessor for a\ngiven type is run. If an addon wishes to apply a transform after the\npreprocessors run, they can instead implement the postprocessTree hook.

\n

To utilize this addons implement preprocessTree hook.

\n

An example, would be to remove some set of files before the preprocessors run.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n
var stew = require('broccoli-stew');\n\nmodule.exports = {\n  name: 'my-cool-addon',\n  preprocessTree(type, tree) {\n    if (type === 'js' && type === 'template') {\n      return stew.rm(tree, someGlobPattern);\n    }\n\n    return tree;\n  }\n}
\n
\n
\n \n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonPreprocessTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 645, + "description": "

Runs addon lintTree hooks and returns a single tree containing all\ntheir output.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonLintTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 664, + "description": "

Imports legacy imports in this.vendorFiles

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "populateLegacyFiles", + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 841, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_podTemplatePatterns", + "return": { + "description": "An array of regular expressions.", + "type": "Array" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1048, + "description": "

Runs the app, tests and templates trees through the chain of addons that produces lint trees.

\n

Those lint trees are afterwards funneled into the tests folder, babel-ified and returned as an array.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getLintTests", + "return": { + "description": "", + "type": "Array" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1088, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "return": { + "description": "Alias to the project's dependencies function", + "type": "Object" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1097, + "description": "

Imports an asset into the application.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "import", + "params": [ + { + "name": "asset", + "description": "Either a path to the asset or an object with environment names and paths as key-value pairs.", + "type": "Object|String" + }, + { + "name": "options", + "description": "Options object", + "type": "Object", + "optional": true, + "props": [ + { + "name": "type", + "description": "Either 'vendor' or 'test'", + "type": "String", + "optional": true, + "optdefault": "'vendor'" + }, + { + "name": "prepend", + "description": "Whether or not this asset should be prepended", + "type": "Boolean", + "optional": true, + "optdefault": "false" + }, + { + "name": "destDir", + "description": "Destination directory, defaults to the name of the directory the asset is in", + "type": "String", + "optional": true + }, + { + "name": "outputFile", + "description": "Specifies the output file for given import. Defaults to assets/vendor.{js,css}", + "type": "String", + "optional": true + }, + { + "name": "using", + "description": "Specifies the array of transformations to be done on the asset. Can do an amd shim and/or custom transformation", + "type": "Array", + "optional": true + } + ] + } + ], + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1143, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_import", + "params": [ + { + "name": "assetPath", + "description": "", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "directory", + "description": "", + "type": "String" + }, + { + "name": "subdirectory", + "description": "", + "type": "String" + }, + { + "name": "extension", + "description": "", + "type": "String" + } + ], + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1228, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getAssetPath", + "params": [ + { + "name": "asset", + "description": "", + "type": "(Object|String)" + } + ], + "return": { + "description": "assetPath", + "type": "(String|undefined)" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1269, + "description": "

Returns an array of trees for this application

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "toArray", + "return": { + "description": "An array of trees", + "type": "Array" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1306, + "description": "

Returns the merged tree for this application

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "toTree", + "params": [ + { + "name": "additionalTrees", + "description": "Array of additional trees to merge", + "type": "Array", + "optional": true + } + ], + "return": { + "description": "Merged tree for this application", + "type": "Tree" + }, + "class": "EmberAddon", + "module": "ember-cli", + "inherited": true, + "inheritedFrom": "EmberApp" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": { + "id": "ember-cli-5.4.0-EmberApp", + "type": "class" + } + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-EmberApp.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-EmberApp.json new file mode 100644 index 000000000..f1d28b6c6 --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-EmberApp.json @@ -0,0 +1,610 @@ +{ + "data": { + "id": "ember-cli-5.4.0-EmberApp", + "type": "class", + "attributes": { + "name": "EmberApp", + "shortname": "EmberApp", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/broccoli/ember-app.js", + "line": 60, + "description": "

EmberApp is the main class Ember CLI uses to manage the Broccoli trees\nfor your application. It is very tightly integrated with Broccoli and has\na toTree() method you can use to get the entire tree for your application.

\n

Available init options:

\n
    \n
  • storeConfigInMeta, defaults to true
  • \n
  • autoRun, defaults to true
  • \n
  • outputPaths, defaults to {}
  • \n
  • minifyCSS, defaults to `{enabled: !!isProduction,options: { relativeTo: 'assets' }}
  • \n
  • sourcemaps, defaults to {}
  • \n
  • trees, defaults to {}
  • \n
  • vendorFiles, defaults to {}
  • \n
  • addons, defaults to { exclude: [], include: [] }
  • \n
\n", + "is_constructor": 1, + "params": [ + { + "name": "defaults", + "description": "", + "type": "Object", + "optional": true + }, + { + "name": "options", + "description": "Configuration options", + "type": "Object", + "optional": true, + "optdefault": "{}" + } + ], + "methods": [ + { + "file": "lib/broccoli/ember-app.js", + "line": 180, + "description": "

Initializes the tests and hinting properties.

\n

Defaults to false unless ember test was used or this is not a production build.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initTestsAndHinting", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 196, + "description": "

Initializes the project property from options.project or the\nclosest Ember CLI project from the current working directory.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 217, + "description": "

Initializes the options property from the options parameter and\na set of default values from Ember CLI.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 334, + "description": "

Resolves a path relative to the project's root

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_resolveLocal", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 344, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initVendorFiles", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 371, + "description": "

Returns the environment name

\n", + "access": "public", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "env", + "return": { + "description": "Environment name", + "type": "String" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 383, + "description": "

Delegates to broccoli-concat with the sourceMapConfig option set to options.sourcemaps.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_concatFiles", + "params": [ + { + "name": "tree", + "description": "" + }, + { + "name": "options", + "description": "" + } + ], + "return": { + "description": "" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 398, + "description": "

Checks the result of addon.isEnabled() if it exists, defaults to true otherwise.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonEnabled", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 410, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonDisabledByExclude", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 421, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonDisabledByInclude", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 432, + "description": "

Returns whether an addon should be added to the project

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldIncludeAddon", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 448, + "description": "

Calls the included hook on addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_notifyAddonIncluded", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 484, + "description": "

Calls the importTransforms hook on addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_importAddonTransforms", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 533, + "description": "

Loads and initializes addons for this project.\nCalls initializeAddons on the Project.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "initializeAddons", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 560, + "description": "

Returns a list of trees for a given type, returned by all addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonTreesFor", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + } + ], + "return": { + "description": "List of trees", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 572, + "description": "

Runs addon post-processing on a given tree and returns the processed tree.

\n

This enables addons to do process immediately after the preprocessor for a\ngiven type is run, but before concatenation occurs. If an addon wishes to\napply a transform before the preprocessors run, they can instead implement the\npreprocessTree hook.

\n

To utilize this addons implement postprocessTree hook.

\n

An example, would be to apply some broccoli transform on all JS files, but\nonly after the existing pre-processors have run.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n
module.exports = {\n  name: 'my-cool-addon',\n  postprocessTree(type, tree) {\n    if (type === 'js') {\n      return someBroccoliTransform(tree);\n    }\n\n    return tree;\n  }\n}
\n
\n
\n \n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonPostprocessTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 609, + "description": "

Runs addon pre-processing on a given tree and returns the processed tree.

\n

This enables addons to do process immediately before the preprocessor for a\ngiven type is run. If an addon wishes to apply a transform after the\npreprocessors run, they can instead implement the postprocessTree hook.

\n

To utilize this addons implement preprocessTree hook.

\n

An example, would be to remove some set of files before the preprocessors run.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n
var stew = require('broccoli-stew');\n\nmodule.exports = {\n  name: 'my-cool-addon',\n  preprocessTree(type, tree) {\n    if (type === 'js' && type === 'template') {\n      return stew.rm(tree, someGlobPattern);\n    }\n\n    return tree;\n  }\n}
\n
\n
\n \n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonPreprocessTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 645, + "description": "

Runs addon lintTree hooks and returns a single tree containing all\ntheir output.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonLintTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 664, + "description": "

Imports legacy imports in this.vendorFiles

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "populateLegacyFiles", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 841, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_podTemplatePatterns", + "return": { + "description": "An array of regular expressions.", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1048, + "description": "

Runs the app, tests and templates trees through the chain of addons that produces lint trees.

\n

Those lint trees are afterwards funneled into the tests folder, babel-ified and returned as an array.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getLintTests", + "return": { + "description": "", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1088, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "return": { + "description": "Alias to the project's dependencies function", + "type": "Object" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1097, + "description": "

Imports an asset into the application.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "import", + "params": [ + { + "name": "asset", + "description": "Either a path to the asset or an object with environment names and paths as key-value pairs.", + "type": "Object|String" + }, + { + "name": "options", + "description": "Options object", + "type": "Object", + "optional": true, + "props": [ + { + "name": "type", + "description": "Either 'vendor' or 'test'", + "type": "String", + "optional": true, + "optdefault": "'vendor'" + }, + { + "name": "prepend", + "description": "Whether or not this asset should be prepended", + "type": "Boolean", + "optional": true, + "optdefault": "false" + }, + { + "name": "destDir", + "description": "Destination directory, defaults to the name of the directory the asset is in", + "type": "String", + "optional": true + }, + { + "name": "outputFile", + "description": "Specifies the output file for given import. Defaults to assets/vendor.{js,css}", + "type": "String", + "optional": true + }, + { + "name": "using", + "description": "Specifies the array of transformations to be done on the asset. Can do an amd shim and/or custom transformation", + "type": "Array", + "optional": true + } + ] + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1143, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_import", + "params": [ + { + "name": "assetPath", + "description": "", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "directory", + "description": "", + "type": "String" + }, + { + "name": "subdirectory", + "description": "", + "type": "String" + }, + { + "name": "extension", + "description": "", + "type": "String" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1228, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getAssetPath", + "params": [ + { + "name": "asset", + "description": "", + "type": "(Object|String)" + } + ], + "return": { + "description": "assetPath", + "type": "(String|undefined)" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1269, + "description": "

Returns an array of trees for this application

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "toArray", + "return": { + "description": "An array of trees", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1306, + "description": "

Returns the merged tree for this application

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "toTree", + "params": [ + { + "name": "additionalTrees", + "description": "Array of additional trees to merge", + "type": "Array", + "optional": true + } + ], + "return": { + "description": "Merged tree for this application", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [ + { + "type": "class", + "id": "ember-cli-5.4.0-EmberAddon" + } + ] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-HardwareInfo.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-HardwareInfo.json new file mode 100644 index 000000000..886ffe3fb --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-HardwareInfo.json @@ -0,0 +1,182 @@ +{ + "data": { + "id": "ember-cli-5.4.0-HardwareInfo", + "type": "class", + "attributes": { + "name": "HardwareInfo", + "shortname": "HardwareInfo", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "methods": [ + { + "file": "lib/models/hardware-info.js", + "line": 232, + "description": "

Indicates whether the host is running on battery power. This can cause\nperformance degredation.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isUsingBattery", + "params": [ + { + "name": "platform", + "description": "The current hardware platform.\n USED FOR TESTING ONLY.", + "type": "String=process.platform" + } + ], + "return": { + "description": "`true` iff the host is running on battery power or\n `false` if not. `null` if the battery status\n cannot be determined.", + "type": "Null|Boolean" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 266, + "description": "

Determines the amount of swap/virtual memory currently in use.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "memorySwapUsed", + "params": [ + { + "name": "platform", + "description": "The current hardware platform.\n USED FOR TESTING ONLY.", + "type": "String=process.platform" + } + ], + "return": { + "description": "The amount of used swap space, in bytes. `null` if\n the used swap space cannot be determined.", + "type": "Null|Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 297, + "description": "

Determines the total amount of memory available to the host, as from\nos.totalmem.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "memoryTotal", + "return": { + "description": "The total memory in bytes.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 309, + "description": "

Determines the amount of memory currently being used by the current Node\nprocess, as from process.memoryUsage.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "memoryUsed", + "return": { + "description": "The Resident Set Size, as reported by\n `process.memoryUsage`.", + "type": "Object" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 322, + "description": "

Determines the number of logical processors available to the host, as from\nos.cpus.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processorCount", + "return": { + "description": "The number of logical processors.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 334, + "description": "

Determines the average processor load across the system. This is\nexpressed as a fractional number between 0 and the number of logical\nprocessors.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processorLoad", + "params": [ + { + "name": "platform", + "description": "The current hardware platform.\n USED FOR TESTING ONLY.", + "type": "String=process.platform" + } + ], + "return": { + "description": "The one-, five-, and fifteen-minute processor load\n averages.", + "type": "Array" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 358, + "description": "

Gets the speed of the host's processors.

\n

If more than one processor is found, the average of their speeds is taken.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processorSpeed", + "return": { + "description": "The average processor speed in MHz.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 373, + "description": "

Determines the time since the host was started, as from os.uptime.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "uptime", + "return": { + "description": "The number of seconds since the host was started.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-HistorySupportAddon.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-HistorySupportAddon.json new file mode 100644 index 000000000..515595dc0 --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-HistorySupportAddon.json @@ -0,0 +1,44 @@ +{ + "data": { + "id": "ember-cli-5.4.0-HistorySupportAddon", + "type": "class", + "attributes": { + "name": "HistorySupportAddon", + "shortname": "HistorySupportAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/history-support/index.js", + "line": 8, + "description": "

This addon is used to serve the index.html file at every requested\nURL that begins with rootURL and is expecting text/html output.

\n", + "is_constructor": 1, + "methods": [], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Instrumentation.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Instrumentation.json new file mode 100644 index 000000000..f887171c0 --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Instrumentation.json @@ -0,0 +1,156 @@ +{ + "data": { + "id": "ember-cli-5.4.0-Instrumentation", + "type": "class", + "attributes": { + "name": "Instrumentation", + "shortname": "Instrumentation", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/instrumentation.js", + "line": 38, + "description": "

An instance of this class is used for invoking the instrumentation\nhooks on addons.

\n

The instrumentation types currently supported are:

\n
    \n
  • init
  • \n
  • build
  • \n
  • command
  • \n
  • shutdown
  • \n
\n", + "access": "private", + "tagname": "", + "methods": [ + { + "file": "lib/models/host-info-cache.js", + "line": 16, + "description": "

Given a path (calculated as part of getHostAddonInfo), return the correct\n\"bundle host\". A bundle host is considered the project or lazy engine.

\n

For example, given the following package structure:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
 --Project--\n  /      \\\n /        \\
\n
\n
\n \n

Lazy Engine A
Addon A\n |\n |\n Lazy Engine B\n /
/
Lazy Engine A Lazy Engine C

\n

The provided paths for lazy engine A would look like:

\n
    \n
  • [Project]
  • \n
  • [Project, Addon A, Lazy Engine B]
  • \n
\n

For this project structure, this function would return [Project, [Project]]

\n

Similarly, given the following project structure:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n
       --Project--\n        /      \\\n       /        \\\nLazy Engine A    \\\n     /        Lazy Engine B\n    /               |\n   /                |
\n
\n
\n \n

Lazy Engine C Lazy Engine C

\n

The provided paths for lazy engine C would look like:

\n
    \n
  • [Project, Lazy Engine A]
  • \n
  • [Project, Lazy Engine B]
  • \n
\n

In this case, the host is the project and would also return [Project, [Project]]

\n", + "itemtype": "method", + "name": "_findNearestBundleHost", + "params": [ + { + "name": "paths", + "description": "The found paths to a given bundle host", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "[PackageInfo, PackageInfo[]]" + }, + "access": "private", + "tagname": "", + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 93, + "description": "

Returns a Set of package-info objects that a given bundle host is\ndirectly responsible for bundling (i.e., it excludes other bundle\nhosts/lazy engines when it encounters these)

\n", + "itemtype": "method", + "name": "_getBundledPackageInfos", + "params": [ + { + "name": "pkgInfoToStartAt", + "description": "", + "type": "PackageInfo" + } + ], + "return": { + "description": "", + "type": "Set" + }, + "access": "private", + "tagname": "", + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 147, + "description": "

This function intends to return a common host for a bundle host (lazy engine). The root\npackage info should be the starting point (i.e., the project's package info). We do this\nby performing a breadth-first traversal until we find the intended lazy engine (represented\nas a package-info & the 1st argument passed to this function). As part of the traversal, we keep\ntrack of all paths to said engine; then, once we find the intended engine we use this to determine\nthe nearest common host amongst all shortest paths.

\n

Some context:

\n

For a given engine/bundle host, this finds the lowest common ancestor that is considered a\nhost amongst all engines by the same name in the project.

\n

For example, given the following package structure:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
 --Project--\n  /      \\\n /        \\
\n
\n
\n \n

Lazy Engine A
Addon A\n |\n |\n Lazy Engine B\n /
/
Lazy Engine A Lazy Engine C

\n
    \n
  • The LCA host for Lazy Engine A is the project
  • \n
  • The LCA host for Lazy Engine B is the project
  • \n
  • The LCA host for Lazy Engine C is Lazy Engine B
  • \n
\n

This also returns hostAndAncestorBundledPackageInfos, which are all bundled addons above a given host:

\n
    \n
  • hostAndAncestorBundledPackageInfos for lazy engine A includes all non-lazy dependencies of its LCA host & above (in this case, just the project)
  • \n
  • hostAndAncestorBundledPackageInfos for lazy engine B includes all non-lazy dependencies of its LCA host & above (in this case, just the project)
  • \n
  • hostAndAncestorBundledPackageInfos for lazy engine C includes non-lazy deps of lazy engine B & non-lazy deps of the project (LCA host & above)
  • \n
\n

This is intended to mimic the behavior of ancestorHostAddons in ember-engines:\nhttps://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/engine-addon.js#L333

\n

Unfortunately, we can't easily repurpose the logic in ember-engines since the algorithm has to be different;\nin ember-engines we need access to the actual addon instance, however, this is intended to be used during\naddon instantiation, so we only have access to package-info objects. In having said this, we can repurpose\nthe hostPackageInfo to determine the LCA host; see below findLCAHost.

\n", + "itemtype": "method", + "name": "getHostAddonInfo", + "params": [ + { + "name": "packageInfoForLazyEngine", + "description": "", + "type": "PackageInfo" + } + ], + "return": { + "description": "}", + "type": " hostPackageInfo: PackageInfo, hostAndAncestorBundledPackageInfos: Set" + }, + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 270, + "description": "

This returns the LCA host for a given engine; we use the associated package info\nto compute this (see getHostAddonInfo above); this finds the lowest common ancestor\nthat is considered a host amongst all engines by the same name in the project. This\nfunction is intended to replace the original behavior in ember-engines.

\n

For more info, see the original implementation here:

\n

https://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/utils/find-lca-host.js

\n", + "itemtype": "method", + "name": "findLCAHost", + "params": [ + { + "name": "engineInstance", + "description": "", + "type": "EngineAddon" + } + ], + "return": { + "description": "", + "type": "EngineAddon|EmberApp" + }, + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/instantiate-addons.js", + "line": 12, + "description": "

Create instances of a set of \"child\" addons for a parent addon or project.

\n", + "itemtype": "method", + "name": "instantiateAddons", + "params": [ + { + "name": "parent", + "description": "an Addon or Project that is the direct containing object of the list\n of children defined in addonPackages.", + "type": "Object" + }, + { + "name": "project", + "description": "the project that contains the parent (so either the addon's project\n if parent is an addon, or the project itself if it is a project). It is possible when\n constructing custom addon instances that the project will actually be undefined--various\n addon tests do this, for example.", + "type": "Project" + }, + { + "name": "a", + "description": "map of addon name (including scope) to an AddonInfo with the name, path and\n 'pkg' object for that addon's package.json). These are what is turned into addons.", + "type": "Object" + } + ], + "class": "Instrumentation", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-NodeModulesList.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-NodeModulesList.json new file mode 100644 index 000000000..a706d6de6 --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-NodeModulesList.json @@ -0,0 +1,124 @@ +{ + "data": { + "id": "ember-cli-5.4.0-NodeModulesList", + "type": "class", + "attributes": { + "name": "NodeModulesList", + "shortname": "NodeModulesList", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 7, + "description": "

Class that stores information about a node_modules directory (i.e., the\npackages and subdirectories in the directory). It is one of the\ntwo types of entries in a PackageInfoCache. It is only created by the\nPackageInfoCache.

\n", + "access": "public", + "tagname": "", + "methods": [ + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 43, + "description": "

Given error data, add an ErrorEntry to the ErrorList for this object.

\n", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addError", + "params": [ + { + "name": "errorType", + "description": "one of the Errors.ERROR_* constants.", + "type": "String" + }, + { + "name": "errorData", + "description": "any error data relevant to the type of error\nbeing created. See showErrors().", + "type": "Object" + } + ], + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 56, + "description": "

Indicate if there are any errors in the NodeModulesList itself (not\nincluding errors within the individual entries).

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hasErrors", + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 67, + "description": "

Add an entry (PackageInfo or NodeModulesList instance) to the entries\nfor this list. This is only called by PackageInfoCache. It is not intended\nto be called directly by anything else.

\n", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addEntry", + "params": [ + { + "name": "entryName", + "description": "the name of the entry, i.e., the name of the\nfile or subdirectory in the directory listing.", + "type": "String" + }, + { + "name": "entryVal", + "description": "the PackageInfo or NodeModulesList tha corresponds\nto the given entry name in the file system.", + "type": "Object" + } + ], + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 84, + "description": "

Return a PackageInfo object for a given package name (which may include\na scope)

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "findPackage", + "params": [ + { + "name": "packageName", + "description": "the name (possibly including a scope) of\n the PackageInfo the caller wants returned.", + "type": "String" + } + ], + "return": { + "description": "the desired PackageInfo if one exists for the given name, else null." + }, + "class": "NodeModulesList", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-NpmTask.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-NpmTask.json new file mode 100644 index 000000000..4467b03df --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-NpmTask.json @@ -0,0 +1,79 @@ +{ + "data": { + "id": "ember-cli-5.4.0-NpmTask", + "type": "class", + "attributes": { + "name": "NpmTask", + "shortname": "NpmTask", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/npm-task.js", + "line": 14, + "access": "private", + "tagname": "", + "is_constructor": 1, + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "methods": [ + { + "file": "lib/tasks/build-watch.js", + "line": 52, + "description": "

Exit silently

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "NpmTask", + "module": "ember-cli" + }, + { + "file": "lib/tasks/npm-task.js", + "line": 128, + "description": "

This method will determine what package manager (npm or yarn) should be\nused to install the npm dependencies.

\n

Setting this.useYarn to true or false will force the use of yarn\nor npm respectively.

\n

If this.useYarn is not set we check if yarn.lock exists and if\nyarn is available and in that case set useYarn to true.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "findPackageManager", + "return": { + "description": "", + "type": "Promise" + }, + "class": "NpmTask", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-PackageInfo.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-PackageInfo.json new file mode 100644 index 000000000..1766cdba9 --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-PackageInfo.json @@ -0,0 +1,374 @@ +{ + "data": { + "id": "ember-cli-5.4.0-PackageInfo", + "type": "class", + "attributes": { + "name": "PackageInfo", + "shortname": "PackageInfo", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/package-info-cache/package-info.js", + "line": 50, + "description": "

Class that stores information about a single package (directory tree with\na package.json and other data, like and Addon or Project.) It is one of the\ntwo types of entries in a PackageInfoCache. It is only created by the\nPackageInfoCache.

\n", + "access": "public", + "tagname": "", + "methods": [ + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 96, + "description": "

Given error data, add an ErrorEntry to the ErrorList for this object.\nThis is used by the _readPackage and _readNodeModulesList methods. It\nshould not be called otherwise.

\n", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addError", + "params": [ + { + "name": "errorType", + "description": "one of the Errors.ERROR_* constants.", + "type": "String" + }, + { + "name": "errorData", + "description": "any error data relevant to the type of error\nbeing created. See showErrors().", + "type": "Object" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 111, + "description": "

Indicate if there are any errors in the ErrorList for this package. Note that this does\nNOT indicate if there are any errors in the objects referred to by this package (e.g.,\ninternal addons or dependencies).

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hasErrors", + "params": [ + { + "name": "true", + "description": "if there are errors in the ErrorList, else false.", + "type": "Boolean" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 124, + "description": "

Add a reference to an in-repo addon PackageInfo object.

\n", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addInRepoAddon", + "params": [ + { + "name": "inRepoAddonPkg", + "description": "the PackageInfo for the in-repo addon", + "type": "PackageInfo" + } + ], + "return": { + "description": "null" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 139, + "description": "

Add a reference to an internal addon PackageInfo object.\n\"internal\" addons (note: not in-repo addons) only exist in\nProjects, not other packages. Since the cache is loaded from\n'loadProject', this can be done appropriately.

\n", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addInternalAddon", + "params": [ + { + "name": "internalAddonPkg", + "description": "the PackageInfo for the internal addon", + "type": "PackageInfo" + } + ], + "return": { + "description": "null" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 157, + "description": "

For each dependency in the given list, find the corresponding\nPackageInfo object in the cache (going up the file tree if\nnecessary, as in the node resolution algorithm). Return a map\nof the dependencyName to PackageInfo object. Caller can then\nstore it wherever they like.

\n

Note: this is not to be called until all packages that can be have\nbeen added to the cache.

\n

Note: this is for ALL dependencies, not just addons. To get just\naddons, filter the result by calling pkgInfo.isForAddon().

\n

Note: this is only intended for use from PackageInfoCache._resolveDependencies.\nIt is not to be called directly by anything else.

\n", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addDependencies", + "params": [ + { + "name": "dependencies", + "description": "value of 'dependencies' or 'devDependencies'\n attributes of a package.json.", + "type": "PackageInfo" + } + ], + "return": { + "description": "a JavaScript object keyed on dependency name/path with\n values the corresponding PackageInfo object from the cache.", + "type": "Object" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 226, + "description": "

Indicate if this packageInfo is for a project. Should be called only after the project\nhas been loaded (see {@link PackageInfoCache#loadProject} for details).

\n", + "itemtype": "method", + "name": "isForProject", + "return": { + "description": "true if this packageInfo is for a Project, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 237, + "description": "

Indicate if this packageInfo is for an Addon.

\n", + "itemtype": "method", + "name": "isForAddon", + "return": { + "description": "true if this packageInfo is for an Addon, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 247, + "description": "

Indicate if this packageInfo represents an engine.

\n", + "itemtype": "method", + "name": "isForEngine", + "return": { + "description": "true if this pkgInfo is configured as an engine & false otherwise", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 257, + "description": "

Indicate if this packageInfo represents a lazy engine.

\n", + "itemtype": "method", + "name": "isForLazyEngine", + "return": { + "description": "true if this pkgInfo is configured as an engine and the\nmodule this represents has lazyLoading enabled, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 268, + "description": "

For use with the PerBundleAddonCache, is this packageInfo representing a\nbundle host (for now, a Project or a lazy engine).

\n", + "itemtype": "method", + "name": "isForBundleHost", + "return": { + "description": "true if this pkgInfo is for a bundle host, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 279, + "description": "

Add to a list of child addon PackageInfos for this packageInfo.

\n", + "itemtype": "method", + "name": "addPackages", + "params": [ + { + "name": "addonPackageList", + "description": "the list of child addon PackageInfos being constructed from various\nsources in this packageInfo.", + "type": "Array" + }, + { + "name": "packageInfoList", + "description": "a list or map of PackageInfos being considered\n(e.g., pkgInfo.dependencyPackages) for inclusion in the addonPackageList.", + "type": "Array | Object" + }, + { + "name": "excludeFn", + "description": "an optional function. If passed in, each child PackageInfo\nwill be tested against the function and only included in the package map if the function\nreturns a truthy value.", + "type": "Function" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 318, + "description": "

Discover the child addons for this packageInfo, which corresponds to an Addon.

\n", + "itemtype": "method", + "name": "discoverAddonAddons", + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 336, + "description": "

Discover the child addons for this packageInfo, which corresponds to a Project.

\n", + "itemtype": "method", + "name": "discoverProjectAddons", + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 356, + "description": "

Given a list of PackageInfo objects, generate the 'addonPackages' object (keyed by\nname, value = AddonInfo instance, for all packages marked 'valid'). This is stored in\nboth Addon and Project instances.

\n", + "itemtype": "method", + "name": "generateAddonPackages", + "params": [ + { + "name": "addonPackageList", + "description": "the list of child addon PackageInfos to work from", + "type": "Array" + }, + { + "name": "excludeFn", + "description": "an optional function. If passed in, each child PackageInfo\nwill be tested against the function and only included in the package map if the function\nreturns a truthy value.", + "type": "Function" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 419, + "description": "

This is only supposed to be called by the addon instantiation code.\nAlso, the assumption here is that this PackageInfo really is for an\nAddon, so we don't need to check each time.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getAddonConstructor", + "return": { + "description": "an instance of a constructor function for the Addon class\nwhose package information is stored in this object.", + "type": "AddonConstructor" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 457, + "description": "

Construct an addon instance.

\n

NOTE: this does NOT call constructors for the child addons. That is left to\nthe caller to do, so they can insert any other logic they want.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "constructAddonInstance", + "params": [ + { + "name": "parent", + "description": "the parent that directly contains this addon", + "type": "Project|Addon" + }, + { + "name": "project", + "description": "the project that is/contains this addon", + "type": "Project" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 492, + "description": "

Create an instance of the addon represented by this packageInfo or (if we\nare supporting per-bundle caching and this is an allow-caching-per-bundle addon)\ncheck if we should be creating a proxy instead.

\n

NOTE: we assume that the value of 'allowCachingPerBundle' does not change between\ncalls to the constructor! A given addon is either allowing or not allowing caching\nfor an entire run.

\n", + "itemtype": "method", + "name": "getAddonInstance", + "params": [ + { + "name": "parent", + "description": "the addon/project that is to be the direct parent of the\naddon instance created here" + }, + { + "name": "project", + "description": "the project that is to contain this addon instance", + "type": "*" + } + ], + "return": { + "description": "the constructed instance of the addon", + "type": "Object" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 525, + "description": "

Initialize the child addons array of a newly-created addon instance. Normally when\nan addon derives from Addon, child addons will be created during 'setupRegistry' and\nthis code is essentially unnecessary. But if an addon is created with custom constructors\nthat don't call 'setupRegistry', any child addons may not yet be initialized.

\n", + "itemtype": "method", + "name": "initChildAddons", + "params": [ + { + "name": "addonInstance", + "description": "", + "type": "Addon" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 542, + "description": "

Gets the addon entry point

\n", + "itemtype": "method", + "name": "_getAddonEntryPoint", + "return": { + "description": "The exported addon entry point", + "type": "Object|Function" + }, + "access": "private", + "tagname": "", + "class": "PackageInfo", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-PackageInfoCache.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-PackageInfoCache.json new file mode 100644 index 000000000..8351baddf --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-PackageInfoCache.json @@ -0,0 +1,302 @@ +{ + "data": { + "id": "ember-cli-5.4.0-PackageInfoCache", + "type": "class", + "attributes": { + "name": "PackageInfoCache", + "shortname": "PackageInfoCache", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/package-info-cache/index.js", + "line": 23, + "description": "

Class that stores entries that are either PackageInfo or NodeModulesList objects.\nThe entries are stored in a map keyed by real directory path.

\n", + "access": "public", + "tagname": "", + "methods": [ + { + "file": "lib/debug/assert.js", + "line": 3, + "description": "

Verify that a certain condition is met, or throw an error if otherwise.

\n

This is useful for communicating expectations in the code to other human\nreaders as well as catching bugs that accidentally violate these expectations.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n
const { assert } = require('ember-cli/lib/debug');\n\n// Test for truthiness:\nassert('Must pass a string.', typeof str === 'string');\n\n// Fail unconditionally:\nassert('This code path should never run.');
\n
\n
\n \n", + "itemtype": "method", + "name": "assert", + "params": [ + { + "name": "description", + "description": "Describes the condition.\nThis will become the message of the error thrown if the assertion fails.", + "type": "String" + }, + { + "name": "condition", + "description": "Must be truthy for the assertion to pass.\nIf falsy, an error will be thrown.", + "type": "Any" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/debug/deprecate.js", + "line": 7, + "description": "

Display a deprecation message.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n
const { deprecate } = require('ember-cli/lib/debug');\n\ndeprecate('The `foo` method is deprecated.', false, {\n  for: 'ember-cli',\n  id: 'ember-cli.foo-method',\n  since: {\n    available: '4.1.0',\n    enabled: '4.2.0',\n  },\n  until: '5.0.0',\n  url: 'https://example.com',\n});
\n
\n
\n \n", + "itemtype": "method", + "name": "deprecate", + "params": [ + { + "name": "description", + "description": "Describes the deprecation.", + "type": "String" + }, + { + "name": "condition", + "description": "If falsy, the deprecation message will be displayed.", + "type": "Any" + }, + { + "name": "options", + "description": "An object including the deprecation's details:\n- `for` The library that the deprecation is for\n- `id` The deprecation's unique id\n- `since.available` A SemVer version indicating when the deprecation was made available\n- `since.enabled` A SemVer version indicating when the deprecation was enabled\n- `until` A SemVer version indicating until when the deprecation will be active\n- `url` A URL that refers to additional information about the deprecation", + "type": "Object" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 36, + "description": "

Clear the cache information.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_clear", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 48, + "description": "

Indicates if there is at least one error in any object in the cache.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hasErrors", + "return": { + "description": "true if there are any errors in the cache, for any entries, else false." + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 65, + "description": "

Gather all the errors in the PIC and any cached objects, then dump them\nout to the ui-console.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "showErrors", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 80, + "description": "

Dump all the errors for a single object in the cache out to the ui-console.

\n

Special case: because package-info-cache also creates PackageInfo objects for entries\nthat do not actually exist (to allow simplifying the code), if there's a case where\nan object has only the single error ERROR_PACKAGE_DIR_MISSING, do not print\nanything. The package will have been found as a reference from some other\naddon or the root project, and we'll print a reference error there. Having\nboth is just confusing to users.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_showObjErrors", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 146, + "description": "

Process the root directory of a project, given a\nProject object (we need the object in order to find the internal addons).\n_readPackage takes care of the general processing of the root directory\nand common locations for addons, filling the cache with each. Once it\nreturns, we take care of the locations for addons that are specific to\nprojects, not other packages (e.g. internal addons, cli root).

\n

Once all the project processing is done, go back through all cache entries\nto create references between the packageInfo objects.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "loadProject", + "params": [ + { + "name": "projectInstance", + "description": "the instance of the Project object to load package data\nabout into the cache." + } + ], + "return": { + "description": "the PackageInfo object for the given Project object.\nNote that if the project path is already in the cache, that will be returned.\nNo copy is made.", + "type": "PackageInfo" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 203, + "description": "

To support the project.reloadPkg method, we need the ability to flush\nthe cache and reload from the updated package.json.\nThere are some issues with doing this:

\n
    \n
  • Because of the possible relationship between projects and their addons\ndue to symlinks, it's not trivial to flush only the data related to a\ngiven project.
  • \n
  • If an 'ember-build-cli.js' dynamically adds new projects to the cache,\nwe will not necessarily get called again to redo the loading of those\nprojects.\nThe solution, implemented here:
  • \n
  • Keep track of the Project objects whose packages are loaded into the cache.
  • \n
  • If a project is reloaded, flush the cache, then do loadPackage again\nfor all the known Projects.
  • \n
\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "reloadProjects", + "return": { + "description": "null" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 228, + "description": "

Do the actual processing of the root directory of an addon, when the addon\nobject already exists (i.e. the addon is acting as the root object of a\ntree, like project does). We need the object in order to find the internal addons.\n_readPackage takes care of the general processing of the root directory\nand common locations for addons, filling the cache with each.

\n

Once all the addon processing is done, go back through all cache entries\nto create references between the packageInfo objects.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "loadAddon", + "params": [ + { + "name": "addonInstance", + "description": "the instance of the Addon object to load package data\nabout into the cache." + } + ], + "return": { + "description": "the PackageInfo object for the given Addon object.\nNote that if the addon path is already in the cache, that will be returned.\nNo copy is made.", + "type": "PackageInfo" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 262, + "description": "

Resolve the node_module dependencies across all packages after they have\nbeen loaded into the cache, because we don't know when a particular package\nwill enter the cache.

\n

Since loadProject can be called multiple times for different projects,\nwe don't want to reprocess any packages that happen to be common\nbetween them. We'll handle this by marking any packageInfo once it\nhas been processed here, then ignore it in any later processing.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_resolveDependencies", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 299, + "description": "

Add an entry to the cache.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addEntry", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 309, + "description": "

Retrieve an entry from the cache.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "getEntry", + "params": [ + { + "name": "path", + "description": "the real path whose PackageInfo or NodeModulesList is desired.", + "type": "String" + } + ], + "return": { + "description": "or {NodeModulesList} the desired entry.", + "type": "PackageInfo" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 321, + "description": "

Indicate if an entry for a given path exists in the cache.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "contains", + "params": [ + { + "name": "path", + "description": "the real path to check for in the cache.", + "type": "String" + } + ], + "return": { + "description": "true if the entry is present for the given path, false otherwise." + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 395, + "description": "

Given a directory that supposedly contains a package, create a PackageInfo\nobject and try to fill it out, EVEN IF the package.json is not readable.\nErrors will then be stored in the PackageInfo for anything with the package\nthat might be wrong.\nBecause it's possible that the path given to the packageDir is not actually valid,\nwe'll just use the path.resolve() version of that path to search for the\npath in the cache, before trying to get the 'real' path (which also then\nresolves links). The cache itself is keyed on either the realPath, if the\npackageDir is actually a real valid directory path, or the normalized path (before\npath.resolve()), if it is not.

\n

NOTE: the cache is also used to store the NULL_PROJECT project object,\nwhich actually has no package.json or other files, but does have an empty\npackage object. Because of that, and to speed up processing, loadProject()\nwill pass in both the package root directory path and the project's package\nobject, if there is one. If the package object is present, we will use that\nin preference to trying to find a package.json file.

\n

If there is no package object, and there is no package.json or the package.json\nis bad or the package is an addon with\nno main, the only thing we can do is return an ErrorEntry to the caller.\nOnce past all those problems, if any error occurs with any of the contents\nof the package, they'll be cached in the PackageInfo itself.

\n

In summary, only PackageInfo or ErrorEntry will be returned.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_readPackage", + "params": [ + { + "name": "pkgDir", + "description": "the path of the directory to read the package.json from and\n process the contents and create a new cache entry or entries.", + "type": "String" + }, + { + "name": "isRoot,", + "description": "for when this is to be considered the root\npackage, whose dependencies we must all consider for discovery.", + "type": "Boolean" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 585, + "description": "

Process a directory of modules in a given package directory.

\n

We will allow cache entries for node_modules that actually\nhave no contents, just so we don't have to hit the file system more\noften than necessary--it's much quicker to check an in-memory object.\nobject.

\n

Note: only a NodeModulesList or null is returned.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_readModulesList", + "params": [ + { + "name": "nodeModulesDir", + "description": "the path of the node_modules directory\n to read the package.json from and process the contents and create a\n new cache entry or entries.", + "type": "String" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-PerBundleAddonCache%20%7B.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-PerBundleAddonCache%20%7B.json new file mode 100644 index 000000000..cfca22c69 --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-PerBundleAddonCache%20%7B.json @@ -0,0 +1,261 @@ +{ + "data": { + "id": "ember-cli-5.4.0-PerBundleAddonCache {", + "type": "class", + "attributes": { + "name": "PerBundleAddonCache {", + "shortname": "PerBundleAddonCache {", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 46, + "description": "

For large applications with many addons (and many instances of each, resulting in\npotentially many millions of addon instances during a build), the build can become\nvery, very slow (tens of minutes) partially due to the sheer number of addon instances.\nThe PerBundleAddonCache deals with this slowness by doing 3 things:

\n

(1) Making only a single copy of each of certain addons and their dependent addons\n(2) Replacing any other instances of those addons with Proxy copies to the single instance\n(3) Having the Proxies return an empty array for their dependent addons, rather\n than proxying to the contents of the single addon instance. This gives up the\n ability of the Proxies to traverse downward into their child addons,\n something that many addons do not do anyway, for the huge reduction in duplications\n of those child addons. For applications that enable ember-engines dedupe logic,\n that logic is stateful, and having the Proxies allow access to the child addons array\n just breaks everything, because that logic will try multiple times to remove items\n it thinks are duplicated, messing up the single copy of the child addon array.\n See the explanation of the dedupe logic in\n {@link https://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/utils/deeply-non-duplicated-addon.js}

\n

What follows are the more technical details of how the PerBundleAddonCache implements\nthe above 3 behaviors.

\n

This class supports per-bundle-host (bundle host = project or lazy engine)\ncaching of addon instances. During addon initialization we cannot add a\ncache to each bundle host object AFTER it is instantiated because running the\naddon constructor ultimately causes Addon class setupRegistry code to\nrun which instantiates child addons, which need the cache to already be\nin place for the parent bundle host.\nWe handle this by providing a global cache that exists independent of the\nbundle host objects. That is this object.

\n

There are a number of \"behaviors\" being implemented by this object and\nits contents. They are:\n(1) Any addon that is a lazy engine has only a single real instance per\nproject - all other references to the lazy engine are to be proxies. These\nlazy engines are compared by name, not by packageInfo.realPath.\n(2) Any addon that is not a lazy engine, there is only a single real instance\nof the addon per \"bundle host\" (i.e. lazy engine or project).\n(3) An optimization - any addon that is in a lazy engine but that is also\nin bundled by its LCA host - the single instance is the one bundled by this\nhost. All other instances (in any lazy engine) are proxies.

\n

NOTE: the optimization is only enabled if the environment variable that controls\nember-engines transitive deduplication (process.env.EMBER_ENGINES_ADDON_DEDUPE)\nis set to a truthy value. For more info, see:\nhttps://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/engine-addon.js#L396

\n", + "access": "public", + "tagname": "", + "methods": [ + { + "file": "lib/models/per-bundle-addon-cache/addon-proxy.js", + "line": 7, + "description": "

Validates that a new cache key for a given tree type matches the previous\ncache key for the same tree type. To opt-in to bundle addon caching for\na given addon it's assumed that it returns stable cache keys; specifically\nthis is because the interplay between bundle addon caching and ember-engines\nwhen transitive deduplication is enabled assumes stable cache keys, so we validate\nfor this case here.

\n", + "itemtype": "method", + "name": "validateCacheKey", + "params": [ + { + "name": "realAddonInstance", + "description": "The real addon instance", + "type": "Addon" + }, + { + "name": "treeType", + "description": "", + "type": "String" + }, + { + "name": "newCacheKey", + "description": "", + "type": "String" + } + ], + "throws": { + "description": "If the new cache key doesn't match the previous cache key", + "type": "Error" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/addon-proxy.js", + "line": 42, + "description": "

Returns a proxy to a target with specific handling for the\nparent property, as well has to handle the app property;\nthat is, the proxy should maintain correct local state in\nclosure scope for the app property if it happens to be set\nby ember-cli. Other than parent & app, this function also\nproxies almost everything to target[TARGET_INSTANCE] with a few exceptions: we trap & return []foraddons, and we don't return the original included(it's already called on the \"real\" addon byember-cli`).

\n

Note: the target is NOT the per-bundle cacheable instance of the addon. Rather,\nit is a cache entry POJO from PerBundleAddonCache.

\n", + "itemtype": "method", + "name": "getAddonProxy", + "params": [ + { + "name": "targetCacheEntry", + "description": "the PerBundleAddonCache cache entry we are to proxy. It\nhas one interesting property, the real addon instance the proxy is forwarding\ncalls to (that property is not globally exposed)." + }, + { + "name": "parent", + "description": "the parent object of the proxy being created (the same as\nthe 'parent' property of a normal addon instance)" + } + ], + "return": { + "description": "Proxy" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 17, + "description": "

Resolves the perBundleAddonCacheUtil; this prefers the custom provided version by\nthe consuming application, and defaults to an internal implementation here.

\n", + "itemtype": "method", + "name": "resolvePerBundleAddonCacheUtil", + "params": [ + { + "name": "project", + "description": "", + "type": "Project" + } + ], + "return": { + "description": "}", + "type": "AllowCachingPerBundle: Function" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 116, + "description": "

The default implementation here is to indicate if the original addon entry point has\nthe allowCachingPerBundle flag set either on itself or on its prototype.

\n

If a consuming application specifies a relative path to a custom utility via the\nember-addon.perBundleAddonCacheUtil configuration, we prefer the custom implementation\nprovided by the consumer.

\n", + "itemtype": "method", + "name": "allowCachingPerBundle", + "params": [ + { + "name": "addonEntryPointModule", + "description": "", + "type": "Object|Function" + } + ], + "return": { + "description": "true if the given constructor function or class supports caching per bundle, false otherwise", + "type": "Boolean" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 132, + "description": "

Creates a cache entry for the bundleHostCache. Because we want to use the same sort of proxy\nfor both bundle hosts and for 'regular' addon instances (though their cache entries have\nslightly different structures) we'll use the Symbol from getAddonProxy.

\n", + "itemtype": "method", + "name": "createBundleHostCacheEntry", + "params": [ + { + "name": "bundleHostPkgInfo", + "description": "bundle host's pkgInfo.realPath", + "type": "PackageInfo" + } + ], + "return": { + "description": "an object in the form of a bundle-host cache entry", + "type": "Object" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 145, + "description": "

Create a cache entry object for a given (non-bundle-host) addon to put into\nan addon cache.

\n", + "itemtype": "method", + "name": "createAddonCacheEntry", + "params": [ + { + "name": "addonInstance", + "description": "the addon instance to cache", + "type": "Addon" + }, + { + "name": "addonRealPath", + "description": "the addon's pkgInfo.realPath", + "type": "String" + } + ], + "return": { + "description": "an object in the form of an addon-cache entry", + "type": "Object" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 158, + "description": "

Given a parent object of a potential addon (another addon or the project),\ngo up the 'parent' chain to find the potential addon's bundle host object\n(i.e. lazy engine or project.) Because Projects are always bundle hosts,\nthis should always pass, but we'll throw if somehow it doesn't work.

\n", + "itemtype": "method", + "name": "findBundleHost", + "params": [ + { + "name": "addonParent", + "description": "the direct parent object of a (potential or real) addon.", + "type": "Project|Addon" + }, + { + "name": "addonPkgInfo", + "description": "the PackageInfo for an addon being instantiated. This is only\nused for information if an error is going to be thrown.", + "type": "PackageInfo" + } + ], + "return": { + "description": "the object in the 'parent' chain that is a bundle host.", + "type": "Object" + }, + "throws": { + "description": "if there is not bundle host", + "type": "Error" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 197, + "description": "

An optimization we support from lazy engines is the following:

\n

If an addon instance is supposed to be bundled with a particular lazy engine, and\nsame addon is also to be bundled by a common LCA host, prefer the one bundled by the\nhost (since it's ultimately going to be deduped later by ember-engines).

\n

NOTE: this only applies if this.engineAddonTransitiveDedupeEnabled is truthy. If it is not,\nthe bundle host always \"owns\" the addon instance.

\n

If deduping is enabled and the LCA host also depends on the same addon,\nthe lazy-engine instances of the addon will all be proxies to the one in\nthe LCA host. This function indicates whether the bundle host passed in\n(either the project or a lazy engine) is really the bundle host to \"own\" the\nnew addon.

\n", + "itemtype": "method", + "name": "bundleHostOwnsInstance", + "params": [ + { + "name": "(Object}", + "description": "bundleHost the project or lazy engine that is trying to \"own\"\nthe new addon instance specified by addonPkgInfo" + }, + { + "name": "addonPkgInfo", + "description": "the PackageInfo of the potential new addon instance", + "type": "PackageInfo" + } + ], + "return": { + "description": "true if the bundle host is to \"own\" the instance, false otherwise.", + "type": "Boolean" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 247, + "description": "

Called from PackageInfo.getAddonInstance(), return an instance of the requested\naddon or a Proxy, based on the type of addon and its bundle host.

\n", + "itemtype": "method", + "name": "getAddonInstance", + "params": [ + { + "name": "parent", + "description": "the parent Addon or Project this addon instance is\na child of.", + "type": "Addon|Project" + }, + { + "name": "addonPkgInfo", + "description": "the PackageInfo for the addon being created.", + "type": "*" + } + ], + "return": { + "description": "An addon instance (for the first copy of the addon) or a Proxy.\nAn addon that is a lazy engine will only ever have a single copy in the cache.\nAn addon that is not will have 1 copy per bundle host (Project or lazy engine),\nexcept if it is an addon that's also owned by a given LCA host and transitive\ndedupe is enabled (`engineAddonTransitiveDedupeEnabled`), in which case it will\nonly have a single copy in the project's addon cache.", + "type": "Addon|Proxy" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Project.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Project.json new file mode 100644 index 000000000..cd3e5e28e --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-Project.json @@ -0,0 +1,575 @@ +{ + "data": { + "id": "ember-cli-5.4.0-Project", + "type": "class", + "attributes": { + "name": "Project", + "shortname": "Project", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/project.js", + "line": 27, + "description": "

The Project model is tied to your package.json. It is instantiated\nby giving {{#crossLink \"Project/closestSync:method\"}}{{/crossLink}}\nthe path to your project.

\n", + "is_constructor": 1, + "params": [ + { + "name": "root", + "description": "Root directory for the project", + "type": "String" + }, + { + "name": "pkg", + "description": "Contents of package.json", + "type": "Object" + }, + { + "name": "ui", + "description": "", + "type": "UI" + }, + { + "name": "cli", + "description": "", + "type": "CLI" + } + ], + "methods": [ + { + "file": "lib/models/project.js", + "line": 154, + "description": "

Returns the name from package.json.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "name", + "return": { + "description": "Package name", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 167, + "description": "

Returns whether or not this is an Ember CLI project.\nThis checks whether ember-cli is listed in devDependencies.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isEmberCLIProject", + "return": { + "description": "Whether this is an Ember CLI project", + "type": "Boolean" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 179, + "description": "

Returns whether or not this is an Ember CLI addon.

\n", + "itemtype": "method", + "name": "isEmberCLIAddon", + "return": { + "description": "Whether or not this is an Ember CLI Addon.", + "type": "Boolean" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 189, + "description": "

Returns the path to the configuration.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "configPath", + "return": { + "description": "Configuration path", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 206, + "description": "

Loads the configuration for this project and its addons.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "config", + "params": [ + { + "name": "env", + "description": "Environment name", + "type": "String" + } + ], + "return": { + "description": "Merged configuration object", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 225, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "configWithoutCache", + "params": [ + { + "name": "env", + "description": "Environment name", + "type": "String" + } + ], + "return": { + "description": "Merged configuration object", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 271, + "description": "

Returns the addons configuration.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getAddonsConfig", + "params": [ + { + "name": "env", + "description": "Environment name", + "type": "String" + }, + { + "name": "appConfig", + "description": "Application configuration", + "type": "Object" + } + ], + "return": { + "description": "Merged configuration of all addons", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 294, + "description": "

Returns whether or not the given file name is present in this project.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "has", + "params": [ + { + "name": "file", + "description": "File name", + "type": "String" + } + ], + "return": { + "description": "Whether or not the file is present", + "type": "Boolean" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 306, + "description": "

Resolves the absolute path to a file synchronously

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "resolveSync", + "params": [ + { + "name": "file", + "description": "File to resolve", + "type": "String" + } + ], + "return": { + "description": "Absolute path to file", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 320, + "description": "

Calls require on a given module from the context of the project. For\ninstance, an addon may want to require a class from the root project's\nversion of ember-cli.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "require", + "params": [ + { + "name": "file", + "description": "File path or module name", + "type": "String" + } + ], + "return": { + "description": "Imported module", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 335, + "description": "

Returns the dependencies from a package.json

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "params": [ + { + "name": "pkg", + "description": "Package object", + "type": "Object", + "optional": true, + "optdefault": "this.pkg" + }, + { + "name": "excludeDevDeps", + "description": "Whether or not development dependencies should be excluded", + "type": "Boolean", + "optional": true, + "optdefault": "false" + } + ], + "return": { + "description": "Dependencies", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 355, + "description": "

Provides the list of paths to consult for addons that may be provided\ninternally to this project. Used for middleware addons with built-in support.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "supportedInternalAddonPaths", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 381, + "description": "

Discovers all addons for this project and stores their names and\npackage.json contents in this.addonPackages as key-value pairs.

\n

Any packageInfos that we find that are marked as not valid are excluded.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "discoverAddons", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 403, + "description": "

Loads and initializes all addons for this project.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "initializeAddons", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 424, + "description": "

Returns what commands are made available by addons by inspecting\nincludedCommands for every addon.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonCommands", + "return": { + "description": "Addon names and command maps as key-value pairs", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 465, + "description": "

Execute a given callback for every addon command.\nExample:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
project.eachAddonCommand(function(addonName, commands) {\n  console.log('Addon ' + addonName + ' exported the following commands:' + commands.keys().join(', '));\n});
\n
\n
\n \n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "eachAddonCommand", + "params": [ + { + "name": "callback", + "description": "[description]", + "type": "Function" + } + ], + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 488, + "description": "

Path to the blueprints for this project.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "localBlueprintLookupPath", + "return": { + "description": "Path to blueprints", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 499, + "description": "

Returns a list of paths (including addon paths) where blueprints will be looked up.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "blueprintLookupPaths", + "return": { + "description": "List of paths", + "type": "Array" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 517, + "description": "

Returns a list of addon paths where blueprints will be looked up.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonBlueprintLookupPaths", + "return": { + "description": "List of paths", + "type": "Array" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 540, + "description": "

Reloads package.json of the project. Clears and reloads the packageInfo and\nper-bundle addon cache, too.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "reloadPkg", + "return": { + "description": "Package content", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 568, + "description": "

Re-initializes addons.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "reloadAddons", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 581, + "description": "

Find an addon by its name

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "findAddonByName", + "params": [ + { + "name": "name", + "description": "Addon name as specified in package.json", + "type": "String" + } + ], + "return": { + "description": "Addon instance", + "type": "Addon" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 595, + "description": "

Generate test file contents.

\n

This method is supposed to be overwritten by test framework addons\nlike ember-qunit.

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "generateTestFile", + "params": [ + { + "name": "moduleName", + "description": "Name of the test module (e.g. `JSHint`)", + "type": "String" + }, + { + "name": "tests", + "description": "Array of tests with `name`, `passed` and `errorMessage` properties", + "type": "Object[]" + } + ], + "return": { + "description": "The test file content", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 619, + "description": "

Returns a new project based on the first package.json that is found\nin pathName.

\n

If the above package.json specifies ember-addon.projectRoot, we load\nthe project based on the relative path between this directory and the\nspecified projectRoot.

\n", + "access": "private", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "closestSync", + "params": [ + { + "name": "pathName", + "description": "Path to your project", + "type": "String" + }, + { + "name": "_ui", + "description": "The UI instance to provide to the created Project.", + "type": "UI" + } + ], + "return": { + "description": "Project instance", + "type": "Project" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 670, + "description": "

Returns a new project based on the first package.json that is found\nin pathName, or the nullProject.

\n

The nullProject signifies no-project, but abides by the null object pattern

\n", + "access": "private", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "projectOrnullProject", + "params": [ + { + "name": "_ui", + "description": "The UI instance to provide to the created Project.", + "type": "UI" + } + ], + "return": { + "description": "Project instance", + "type": "Project" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 694, + "description": "

Returns the project root based on the first package.json that is found

\n", + "static": 1, + "itemtype": "method", + "name": "getProjectRoot", + "return": { + "description": "The project root directory", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + } + ], + "events": [], + "properties": [ + { + "file": "lib/models/project.js", + "line": 52, + "description": "

Set when the Watcher.detectWatchman helper method finishes running,\nso that other areas of the system can be aware that watchman is being used.

\n

For example, this information is used in the broccoli build pipeline to know\nif we can watch additional directories \"cheaply\".

\n

Contains enabled and version.

\n", + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "_watchmanInfo", + "return": { + "description": "", + "type": "Object" + }, + "default": "false", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 244, + "description": "

Returns the targets of this project, or the default targets if not present.

\n", + "access": "public", + "tagname": "", + "itemtype": "property", + "name": "targets", + "return": { + "description": "Targets object", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + } + ] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-ServeFilesAddon.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-ServeFilesAddon.json new file mode 100644 index 000000000..81384b1ba --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-ServeFilesAddon.json @@ -0,0 +1,56 @@ +{ + "data": { + "id": "ember-cli-5.4.0-ServeFilesAddon", + "type": "class", + "attributes": { + "name": "ServeFilesAddon", + "shortname": "ServeFilesAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/broccoli-serve-files/index.js", + "line": 6, + "description": "

This addon is used to serve the requested assets and set the required response\nheaders. It runs after broccoli-watcher addon.

\n", + "is_constructor": 1, + "methods": [ + { + "file": "lib/models/task.js", + "line": 10, + "description": "

Interrupt comamd with an exit code\nCalled when the process is interrupted from outside, e.g. CTRL+C or process.kill()

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "ServeFilesAddon", + "module": "ember-cli" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-TestsServerAddon.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-TestsServerAddon.json new file mode 100644 index 000000000..9bba8fabd --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-TestsServerAddon.json @@ -0,0 +1,44 @@ +{ + "data": { + "id": "ember-cli-5.4.0-TestsServerAddon", + "type": "class", + "attributes": { + "name": "TestsServerAddon", + "shortname": "TestsServerAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/tests-server/index.js", + "line": 9, + "description": "

This addon is used to serve the QUnit or Mocha test runner\nat rootURL + '/tests'.

\n", + "is_constructor": 1, + "methods": [], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-WatcherAddon.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-WatcherAddon.json new file mode 100644 index 000000000..e2343b7f4 --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-WatcherAddon.json @@ -0,0 +1,44 @@ +{ + "data": { + "id": "ember-cli-5.4.0-WatcherAddon", + "type": "class", + "attributes": { + "name": "WatcherAddon", + "shortname": "WatcherAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/broccoli-watcher/index.js", + "line": 7, + "description": "

This addon is used to set the default response headers for the assets that will be\nserved by the next middleware. It waits for the watcher promise to resolve before\nsetting the response headers.

\n", + "is_constructor": 1, + "methods": [], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-WindowsSymlinkChecker.json b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-WindowsSymlinkChecker.json new file mode 100644 index 000000000..3ea5d215a --- /dev/null +++ b/json-docs/ember-cli/5.4.0/classes/ember-cli-5.4.0-WindowsSymlinkChecker.json @@ -0,0 +1,385 @@ +{ + "data": { + "id": "ember-cli-5.4.0-WindowsSymlinkChecker", + "type": "class", + "attributes": { + "name": "WindowsSymlinkChecker", + "shortname": "WindowsSymlinkChecker", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "is-lazy-engine", + "namespace": "", + "file": "lib/utilities/windows-admin.js", + "line": 6, + "description": "

On Windows, users will have a much better experience if symlinks are enabled\n and usable. When queried, this object informs Windows users regarding\n improving their build performance, and how.

\n
\n

Windows Vista: nothing we can really do, so we fall back to junctions for folders + copying of files\n <= Windows Vista: symlinks are available but using them is somewhat tricky\n * if the user is an admin, the process needs to have been started with elevated privileges\n * if the user is not an admin, a specific setting needs to be enabled\n <= Windows 10\n * if developer mode is enabled, symlinks \"just work\"\n * https://blogs.windows.com/buildingapps/2016/12/02/symlinks-windows-10

\n
\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n5\n
 let checker = WindowsSymlinkChecker;\n let {\n   windows,\n   elevated\n } = await = checker.checkIfSymlinksNeedToBeEnabled(); // aslso emits helpful warnings
\n
\n
\n \n", + "access": "public", + "tagname": "", + "methods": [ + { + "file": "lib/tasks/serve.js", + "line": 102, + "description": "

Exit silently

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/tasks/test-server.js", + "line": 61, + "description": "

Exit silently

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/directory-for-package-name.js", + "line": 5, + "description": "

Derive a directory name from a package name.\nTakes scoped packages into account.

\n", + "itemtype": "method", + "name": "directoryForPackageName", + "params": [ + { + "name": "packageName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "Derived directory name.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/ember-app-utils.js", + "line": 7, + "description": "

Returns a normalized url given a string.\nReturns an empty string if null, undefined or an empty string are passed\nin.

\n", + "itemtype": "method", + "name": "normalizeUrl", + "params": [ + { + "name": "Raw", + "description": "url.", + "type": "String" + } + ], + "return": { + "description": "Normalized url.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/ember-app-utils.js", + "line": 24, + "description": "

Converts Javascript Object to a string.\nReturns an empty object string representation if a \"falsy\" value is passed\nin.

\n", + "itemtype": "method", + "name": "convertObjectToString", + "params": [ + { + "name": "Any", + "description": "Javascript Object.", + "type": "Object" + } + ], + "return": { + "description": "A string representation of a Javascript Object.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/ember-app-utils.js", + "line": 37, + "description": "

Returns the content for a specific type (section) for index.html.

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n
{{content-for \"[type]\"}}
\n
\n
\n \n

Supported types:

\n
    \n
  • 'head'
  • \n
  • 'config-module'
  • \n
  • 'head-footer'
  • \n
  • 'test-header-footer'
  • \n
  • 'body-footer'
  • \n
  • 'test-body-footer'
  • \n
\n", + "itemtype": "method", + "name": "contentFor", + "params": [ + { + "name": "config", + "description": "Ember.js application configuration", + "type": "Object" + }, + { + "name": "match", + "description": "Regular expression to match against", + "type": "RegExp" + }, + { + "name": "type", + "description": "Type of content", + "type": "String" + }, + { + "name": "options", + "description": "Settings that control the default content", + "type": "Object", + "props": [ + { + "name": "autoRun", + "description": "Controls whether to bootstrap the\n application or not", + "type": "Boolean" + }, + { + "name": "storeConfigInMeta", + "description": "Controls whether to include the\n contents of config", + "type": "Boolean" + } + ] + } + ], + "return": { + "description": "The content.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/insert-into-file.js", + "line": 6, + "description": "

Inserts the given content into a file. If the contentsToInsert string is already\npresent in the current contents, the file will not be changed unless force option\nis passed.

\n

If options.before is specified, contentsToInsert will be inserted before\nthe first instance of that string. If options.after is specified, the\ncontents will be inserted after the first instance of that string.\nIf the string specified by options.before or options.after is not in the file,\nno change will be made. Both of these options support regular expressions.

\n

If neither options.before nor options.after are present, contentsToInsert\nwill be inserted at the end of the file.

\n

It will create a new file if one doesn't exist, unless you set the options.create\noption to false.

\n

Example:

\n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
// app/router.js\nRouter.map(function () {\n});
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n
insertIntoFile('app/router.js', '  this.route(\"admin\");', {\n  after: 'Router.map(function () {' + EOL\n});
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n
1\n2\n3\n4\n
// app/router.js\nRouter.map(function () {\n  this.route(\"admin\");\n});
\n
\n
\n \n", + "itemtype": "method", + "name": "insertIntoFile", + "params": [ + { + "name": "pathRelativeToProjectRoot", + "description": "", + "type": "String" + }, + { + "name": "contentsToInsert", + "description": "", + "type": "String" + }, + { + "name": "providedOptions", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/valid-project-name.js", + "line": 5, + "description": "

Checks if the string starts with a number.

\n", + "itemtype": "method", + "name": "startsWithNumber", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/valid-project-name.js", + "line": 24, + "description": "

Checks if project name is valid.

\n

Invalid names are some of the internal constants that Ember CLI uses, such as\napp, ember, ember-cli, test, and vendor. Names that start with\nnumbers are considered invalid as well.

\n", + "itemtype": "method", + "name": "validProjectName", + "params": [ + { + "name": "name", + "description": "The name of Ember CLI project", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 47, + "description": "

Drops all the interruption handlers and disables an ability to add new one

\n

Note: We don't call `captureExit.releaseExit() here.\nIn some rare scenarios it can lead to the hard to debug issues.\nsee: https://github.com/ember-cli/ember-cli/issues/6779#issuecomment-280940358

\n

We can more or less feel comfortable with a captured exit because it behaves very\nsimilar to the original exit except of cases when we need to do cleanup before exit.

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "release", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 69, + "description": "

Add process interruption handler

\n

When the first handler is added then automatically\nsets up process interruption signals listeners

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addHandler", + "params": [ + { + "name": "cb", + "description": "Callback to be called when process interruption fired", + "type": "Function" + } + ], + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 97, + "description": "

Remove process interruption handler

\n

If there are no remaining handlers after removal\nthen clean up all the process interruption signal listeners

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "removeHandler", + "params": [ + { + "name": "cb", + "description": "Callback to be removed", + "type": "Function" + } + ], + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 122, + "description": "

Sets up listeners for interruption signals

\n

When one of these signals is caught than raise process.exit()\nwhich enforces capture-exit to run registered interruption handlers

\n", + "itemtype": "method", + "name": "setupSignalsTrap", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 140, + "description": "

Removes interruption signal listeners and tears down capture-exit

\n", + "itemtype": "method", + "name": "teardownSignalsTrap", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 155, + "description": "

Suppresses \"Terminate batch job (Y/N)\" confirmation on Windows

\n", + "itemtype": "method", + "name": "trapWindowsSignals", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 38, + "description": "

if not windows, will fulfill with:\n { windows: false, elevated: null)\nif windows, and elevated will fulfill with:\n { windows: false, elevated: true)\nif windows, and is NOT elevated will fulfill with:\n { windows: false, elevated: false)\n will include heplful warning, so that users know (if possible) how to\n achieve better windows build performance

\n", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "checkIfSymlinksNeedToBeEnabled", + "return": { + "description": "Object describing whether we're on windows and if admin rights exist", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 60, + "description": "

sets up a WindowsSymlinkChecker

\n

providing it with defaults for:

\n
    \n
  • if we are on windows
  • \n
  • if we can symlink
  • \n
  • a reference to exec
  • \n
\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_setup", + "params": [ + { + "name": "UI", + "description": "", + "type": "UI" + } + ], + "return": { + "description": "", + "type": "WindowsSymlinkChecker" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 81, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "checkIfSymlinksNeedToBeEnabled", + "return": { + "description": "Object describing whether we're on windows and if admin rights exist", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 104, + "description": "

Uses the eon-old command NET SESSION to determine whether or not the\n current user has elevated rights (think sudo, but Windows).

\n", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkForElevatedRights", + "params": [ + { + "name": "ui", + "description": "- ui object used to call writeLine();", + "type": "Object" + } + ], + "return": { + "description": "Object describing whether we're on windows and if admin rights exist", + "type": "Object" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + } + ], + "events": [], + "properties": [] + }, + "relationships": { + "parent-class": { + "data": null + }, + "descendants": { + "data": [] + }, + "module": { + "data": { + "id": "ember-cli-5.4.0-is-lazy-engine", + "type": "module" + } + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/missings/CoreObject.json b/json-docs/ember-cli/5.4.0/missings/CoreObject.json new file mode 100644 index 000000000..398110e0d --- /dev/null +++ b/json-docs/ember-cli/5.4.0/missings/CoreObject.json @@ -0,0 +1,9 @@ +{ + "data": { + "id": "CoreObject", + "type": "missing", + "attributes": { + "name": "CoreObject" + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/modules/ember-cli-5.4.0-ember-cli.json b/json-docs/ember-cli/5.4.0/modules/ember-cli-5.4.0-ember-cli.json new file mode 100644 index 000000000..1b6dff44a --- /dev/null +++ b/json-docs/ember-cli/5.4.0/modules/ember-cli-5.4.0-ember-cli.json @@ -0,0 +1,275 @@ +{ + "data": { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module", + "attributes": { + "name": "ember-cli", + "submodules": {}, + "elements": {}, + "fors": { + "HardwareInfo": 1 + }, + "namespaces": { + "Blueprint": 1 + }, + "tag": "module", + "file": "lib/tasks/npm-task.js", + "line": 14, + "access": "private", + "tagname": "", + "is_constructor": 1, + "extends": "Task", + "parent": null, + "publicclasses": [ + "DefaultPackager", + "EmberAddon", + "EmberApp", + "PackageInfoCache", + "NodeModulesList", + "PackageInfo", + "PerBundleAddonCache {", + "Addon", + "Blueprint", + "Command", + "Project", + "ServeFilesAddon", + "WatcherAddon", + "HistorySupportAddon", + "TestsServerAddon", + "AmdTransformAddon" + ], + "privateclasses": [ + "CLI", + "Builder", + "Instrumentation", + "NpmTask" + ], + "staticfunctions": { + "EmberApp": [ + { + "file": "lib/broccoli/ember-app.js", + "line": 371, + "description": "Returns the environment name", + "access": "public", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "env", + "return": { + "description": "Environment name", + "type": "String" + }, + "class": "EmberApp", + "module": "ember-cli" + } + ] + }, + "allstaticfunctions": { + "Project": [ + { + "file": "lib/models/project.js", + "line": 619, + "description": "Returns a new project based on the first `package.json` that is found\nin `pathName`.\n\nIf the above `package.json` specifies `ember-addon.projectRoot`, we load\nthe project based on the relative path between this directory and the\nspecified `projectRoot`.", + "access": "private", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "closestSync", + "params": [ + { + "name": "pathName", + "description": "Path to your project", + "type": "String" + }, + { + "name": "_ui", + "description": "The UI instance to provide to the created Project.", + "type": "UI" + } + ], + "return": { + "description": "Project instance", + "type": "Project" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 694, + "description": "Returns the project root based on the first package.json that is found", + "static": 1, + "itemtype": "method", + "name": "getProjectRoot", + "return": { + "description": "The project root directory", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 670, + "description": "Returns a new project based on the first package.json that is found\nin `pathName`, or the nullProject.\n\nThe nullProject signifies no-project, but abides by the null object pattern", + "access": "private", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "projectOrnullProject", + "params": [ + { + "name": "_ui", + "description": "The UI instance to provide to the created Project.", + "type": "UI" + } + ], + "return": { + "description": "Project instance", + "type": "Project" + }, + "class": "Project", + "module": "ember-cli" + } + ], + "EmberApp": [ + { + "file": "lib/broccoli/ember-app.js", + "line": 371, + "description": "Returns the environment name", + "access": "public", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "env", + "return": { + "description": "Environment name", + "type": "String" + }, + "class": "EmberApp", + "module": "ember-cli" + } + ], + "Blueprint": [ + { + "file": "lib/models/blueprint.js", + "line": 1448, + "static": 1, + "itemtype": "method", + "name": "list", + "params": [ + { + "name": "options", + "description": "", + "type": "Object", + "optional": true, + "props": [ + { + "name": "paths", + "description": "Extra paths to search for blueprints", + "type": "Array", + "optional": true + } + ] + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1420, + "description": "Loads a blueprint from given path.", + "static": 1, + "itemtype": "method", + "name": "load", + "params": [ + { + "name": "blueprintPath", + "description": "", + "type": "String" + }, + { + "name": "blueprintOptions", + "description": "", + "type": "Object", + "optional": true + } + ], + "return": { + "description": "blueprint instance", + "type": "Blueprint" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1379, + "static": 1, + "itemtype": "method", + "name": "lookup", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object", + "optional": true, + "props": [ + { + "name": "paths", + "description": "Extra paths to search for blueprints", + "type": "Array", + "optional": true + }, + { + "name": "ignoreMissing", + "description": "Throw a `SilentError` if a\n matching Blueprint could not be found", + "type": "Boolean", + "optional": true + }, + { + "name": "blueprintOptions", + "description": "Options object that will be passed\n along to the Blueprint instance on creation.", + "type": "Object", + "optional": true + } + ] + } + ], + "return": { + "description": "", + "type": "Blueprint" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + } + ] + }, + "version": "5.4.0" + }, + "relationships": { + "classes": { + "data": [] + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/modules/ember-cli-5.4.0-is-lazy-engine.json b/json-docs/ember-cli/5.4.0/modules/ember-cli-5.4.0-is-lazy-engine.json new file mode 100644 index 000000000..c81b73ac2 --- /dev/null +++ b/json-docs/ember-cli/5.4.0/modules/ember-cli-5.4.0-is-lazy-engine.json @@ -0,0 +1,47 @@ +{ + "data": { + "id": "ember-cli-5.4.0-is-lazy-engine", + "type": "module", + "attributes": { + "name": "is-lazy-engine", + "submodules": {}, + "elements": {}, + "fors": {}, + "namespaces": {}, + "tag": "module", + "file": "lib/utilities/windows-admin.js", + "line": 6, + "description": "

Indicate if a given object is a constructor function or class or an instance of an Addon.

\n", + "params": [ + { + "name": "addonCtorOrInstance", + "description": "the constructor function/class or an instance of an Addon.", + "type": "Object" + } + ], + "return": { + "description": "True if the addonCtorOrInstance is a lazy engine, False otherwise.", + "type": "Boolean" + }, + "parent": null, + "publicclasses": [ + "WindowsSymlinkChecker" + ], + "privateclasses": [], + "staticfunctions": {}, + "allstaticfunctions": {}, + "version": "5.4.0" + }, + "relationships": { + "classes": { + "data": [] + }, + "project-version": { + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version" + } + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/5.4.0/project-versions/ember-cli-5.4.0.json b/json-docs/ember-cli/5.4.0/project-versions/ember-cli-5.4.0.json new file mode 100644 index 000000000..8b3e4ce07 --- /dev/null +++ b/json-docs/ember-cli/5.4.0/project-versions/ember-cli-5.4.0.json @@ -0,0 +1,234 @@ +{ + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version", + "attributes": { + "version": "5.4.0" + }, + "relationships": { + "classes": { + "data": [ + { + "id": "ember-cli-5.4.0-DefaultPackager", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-EmberAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-EmberApp", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-CLI", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-PackageInfoCache", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-NodeModulesList", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-PackageInfo", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-PerBundleAddonCache {", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Addon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Blueprint", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Builder", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Command", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Instrumentation", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Project", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-ServeFilesAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-WatcherAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-HistorySupportAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-TestsServerAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-AmdTransformAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-NpmTask", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-WindowsSymlinkChecker", + "type": "class" + } + ] + }, + "namespaces": { + "data": [] + }, + "modules": { + "data": [ + { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + }, + { + "id": "ember-cli-5.4.0-is-lazy-engine", + "type": "module" + } + ] + }, + "project": { + "data": { + "id": "ember-cli", + "type": "project" + } + }, + "private-classes": { + "data": [ + { + "id": "ember-cli-5.4.0-CLI", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Builder", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Instrumentation", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-NpmTask", + "type": "class" + } + ] + }, + "public-classes": { + "data": [ + { + "id": "ember-cli-5.4.0-DefaultPackager", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-EmberAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-EmberApp", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-PackageInfoCache", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-NodeModulesList", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-PackageInfo", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-PerBundleAddonCache {", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Addon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Blueprint", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Command", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Project", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-ServeFilesAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-WatcherAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-HistorySupportAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-TestsServerAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-AmdTransformAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-WindowsSymlinkChecker", + "type": "class" + } + ] + }, + "private-namespaces": { + "data": [] + }, + "public-namespaces": { + "data": [] + }, + "private-modules": { + "data": [ + { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + ] + }, + "public-modules": { + "data": [ + { + "id": "ember-cli-5.4.0-is-lazy-engine", + "type": "module" + } + ] + } + } + } +} \ No newline at end of file diff --git a/json-docs/ember-cli/projects/ember-cli.json b/json-docs/ember-cli/projects/ember-cli.json new file mode 100644 index 000000000..4bfed1e02 --- /dev/null +++ b/json-docs/ember-cli/projects/ember-cli.json @@ -0,0 +1,23 @@ +{ + "data": { + "id": "ember-cli", + "type": "project", + "attributes": { + "github-url": "https://github.com/emberjs/ember.js" + }, + "relationships": { + "project-versions": { + "data": [ + { + "id": "ember-cli-5.4.0", + "type": "project-version" + }, + { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + ] + } + } + } +} \ No newline at end of file diff --git a/rev-index/ember-cli-5.3.0.json b/rev-index/ember-cli-5.3.0.json new file mode 100644 index 000000000..5f370c302 --- /dev/null +++ b/rev-index/ember-cli-5.3.0.json @@ -0,0 +1,268 @@ +{ + "data": { + "id": "ember-cli-5.3.0", + "type": "project-version", + "attributes": { + "version": "5.3.0" + }, + "relationships": { + "classes": { + "data": [ + { + "id": "ember-cli-5.3.0-DefaultPackager", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-EmberAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-EmberApp", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-CLI", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-PackageInfoCache", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-NodeModulesList", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-PackageInfo", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-PerBundleAddonCache {", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Addon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Blueprint", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Builder", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Command", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Instrumentation", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Project", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-ServeFilesAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-WatcherAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-HistorySupportAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-TestsServerAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-AmdTransformAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-NpmTask", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-WindowsSymlinkChecker", + "type": "class" + } + ] + }, + "namespaces": { + "data": [] + }, + "modules": { + "data": [ + { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + }, + { + "id": "ember-cli-5.3.0-is-lazy-engine", + "type": "module" + } + ] + }, + "project": { + "data": { + "id": "ember-cli", + "type": "project" + } + }, + "private-classes": { + "data": [ + { + "id": "ember-cli-5.3.0-CLI", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Builder", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Instrumentation", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-NpmTask", + "type": "class" + } + ] + }, + "public-classes": { + "data": [ + { + "id": "ember-cli-5.3.0-DefaultPackager", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-EmberAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-EmberApp", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-PackageInfoCache", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-NodeModulesList", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-PackageInfo", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-PerBundleAddonCache {", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Addon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Blueprint", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Command", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-Project", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-ServeFilesAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-WatcherAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-HistorySupportAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-TestsServerAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-AmdTransformAddon", + "type": "class" + }, + { + "id": "ember-cli-5.3.0-WindowsSymlinkChecker", + "type": "class" + } + ] + }, + "private-namespaces": { + "data": [] + }, + "public-namespaces": { + "data": [] + }, + "private-modules": { + "data": [ + { + "id": "ember-cli-5.3.0-ember-cli", + "type": "module" + } + ] + }, + "public-modules": { + "data": [ + { + "id": "ember-cli-5.3.0-is-lazy-engine", + "type": "module" + } + ] + } + } + }, + "meta": { + "class": { + "ember-cli-5.3.0-DefaultPackager": "ember-cli-5.3.0-DefaultPackager", + "ember-cli-5.3.0-EmberAddon": "ember-cli-5.3.0-EmberAddon", + "ember-cli-5.3.0-EmberApp": "ember-cli-5.3.0-EmberApp", + "ember-cli-5.3.0-CLI": "ember-cli-5.3.0-CLI", + "ember-cli-5.3.0-PackageInfoCache": "ember-cli-5.3.0-PackageInfoCache", + "ember-cli-5.3.0-NodeModulesList": "ember-cli-5.3.0-NodeModulesList", + "ember-cli-5.3.0-PackageInfo": "ember-cli-5.3.0-PackageInfo", + "ember-cli-5.3.0-PerBundleAddonCache {": "", + "ember-cli-5.3.0-Addon": "ember-cli-5.3.0-Addon", + "ember-cli-5.3.0-Blueprint": "ember-cli-5.3.0-Blueprint", + "ember-cli-5.3.0-Builder": "ember-cli-5.3.0-Builder", + "ember-cli-5.3.0-Command": "ember-cli-5.3.0-Command", + "ember-cli-5.3.0-Instrumentation": "ember-cli-5.3.0-Instrumentation", + "ember-cli-5.3.0-Project": "ember-cli-5.3.0-Project", + "ember-cli-5.3.0-ServeFilesAddon": "ember-cli-5.3.0-ServeFilesAddon", + "ember-cli-5.3.0-WatcherAddon": "ember-cli-5.3.0-WatcherAddon", + "ember-cli-5.3.0-HistorySupportAddon": "ember-cli-5.3.0-HistorySupportAddon", + "ember-cli-5.3.0-TestsServerAddon": "ember-cli-5.3.0-TestsServerAddon", + "ember-cli-5.3.0-AmdTransformAddon": "ember-cli-5.3.0-AmdTransformAddon", + "ember-cli-5.3.0-NpmTask": "ember-cli-5.3.0-NpmTask", + "ember-cli-5.3.0-WindowsSymlinkChecker": "ember-cli-5.3.0-WindowsSymlinkChecker", + "ember-cli-5.3.0-HardwareInfo": "ember-cli-5.3.0-HardwareInfo", + "ember-cli-5.3.0-PerBundleAddonCache%20%7B": "ember-cli-5.3.0-PerBundleAddonCache%20%7B" + }, + "module": { + "ember-cli-5.3.0-ember-cli": "ember-cli-5.3.0-ember-cli", + "ember-cli-5.3.0-is-lazy-engine": "ember-cli-5.3.0-is-lazy-engine" + }, + "missing": { + "CoreObject": "CoreObject" + } + } +} diff --git a/rev-index/ember-cli-5.4.0.json b/rev-index/ember-cli-5.4.0.json new file mode 100644 index 000000000..4391160fc --- /dev/null +++ b/rev-index/ember-cli-5.4.0.json @@ -0,0 +1,268 @@ +{ + "data": { + "id": "ember-cli-5.4.0", + "type": "project-version", + "attributes": { + "version": "5.4.0" + }, + "relationships": { + "classes": { + "data": [ + { + "id": "ember-cli-5.4.0-DefaultPackager", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-EmberAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-EmberApp", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-CLI", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-PackageInfoCache", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-NodeModulesList", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-PackageInfo", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-PerBundleAddonCache {", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Addon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Blueprint", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Builder", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Command", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Instrumentation", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Project", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-ServeFilesAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-WatcherAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-HistorySupportAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-TestsServerAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-AmdTransformAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-NpmTask", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-WindowsSymlinkChecker", + "type": "class" + } + ] + }, + "namespaces": { + "data": [] + }, + "modules": { + "data": [ + { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + }, + { + "id": "ember-cli-5.4.0-is-lazy-engine", + "type": "module" + } + ] + }, + "project": { + "data": { + "id": "ember-cli", + "type": "project" + } + }, + "private-classes": { + "data": [ + { + "id": "ember-cli-5.4.0-CLI", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Builder", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Instrumentation", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-NpmTask", + "type": "class" + } + ] + }, + "public-classes": { + "data": [ + { + "id": "ember-cli-5.4.0-DefaultPackager", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-EmberAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-EmberApp", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-PackageInfoCache", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-NodeModulesList", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-PackageInfo", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-PerBundleAddonCache {", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Addon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Blueprint", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Command", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-Project", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-ServeFilesAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-WatcherAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-HistorySupportAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-TestsServerAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-AmdTransformAddon", + "type": "class" + }, + { + "id": "ember-cli-5.4.0-WindowsSymlinkChecker", + "type": "class" + } + ] + }, + "private-namespaces": { + "data": [] + }, + "public-namespaces": { + "data": [] + }, + "private-modules": { + "data": [ + { + "id": "ember-cli-5.4.0-ember-cli", + "type": "module" + } + ] + }, + "public-modules": { + "data": [ + { + "id": "ember-cli-5.4.0-is-lazy-engine", + "type": "module" + } + ] + } + } + }, + "meta": { + "class": { + "ember-cli-5.4.0-DefaultPackager": "ember-cli-5.4.0-DefaultPackager", + "ember-cli-5.4.0-EmberAddon": "ember-cli-5.4.0-EmberAddon", + "ember-cli-5.4.0-EmberApp": "ember-cli-5.4.0-EmberApp", + "ember-cli-5.4.0-CLI": "ember-cli-5.4.0-CLI", + "ember-cli-5.4.0-PackageInfoCache": "ember-cli-5.4.0-PackageInfoCache", + "ember-cli-5.4.0-NodeModulesList": "ember-cli-5.4.0-NodeModulesList", + "ember-cli-5.4.0-PackageInfo": "ember-cli-5.4.0-PackageInfo", + "ember-cli-5.4.0-PerBundleAddonCache {": "", + "ember-cli-5.4.0-Addon": "ember-cli-5.4.0-Addon", + "ember-cli-5.4.0-Blueprint": "ember-cli-5.4.0-Blueprint", + "ember-cli-5.4.0-Builder": "ember-cli-5.4.0-Builder", + "ember-cli-5.4.0-Command": "ember-cli-5.4.0-Command", + "ember-cli-5.4.0-Instrumentation": "ember-cli-5.4.0-Instrumentation", + "ember-cli-5.4.0-Project": "ember-cli-5.4.0-Project", + "ember-cli-5.4.0-ServeFilesAddon": "ember-cli-5.4.0-ServeFilesAddon", + "ember-cli-5.4.0-WatcherAddon": "ember-cli-5.4.0-WatcherAddon", + "ember-cli-5.4.0-HistorySupportAddon": "ember-cli-5.4.0-HistorySupportAddon", + "ember-cli-5.4.0-TestsServerAddon": "ember-cli-5.4.0-TestsServerAddon", + "ember-cli-5.4.0-AmdTransformAddon": "ember-cli-5.4.0-AmdTransformAddon", + "ember-cli-5.4.0-NpmTask": "ember-cli-5.4.0-NpmTask", + "ember-cli-5.4.0-WindowsSymlinkChecker": "ember-cli-5.4.0-WindowsSymlinkChecker", + "ember-cli-5.4.0-HardwareInfo": "ember-cli-5.4.0-HardwareInfo", + "ember-cli-5.4.0-PerBundleAddonCache%20%7B": "ember-cli-5.4.0-PerBundleAddonCache%20%7B" + }, + "module": { + "ember-cli-5.4.0-ember-cli": "ember-cli-5.4.0-ember-cli", + "ember-cli-5.4.0-is-lazy-engine": "ember-cli-5.4.0-is-lazy-engine" + }, + "missing": { + "CoreObject": "CoreObject" + } + } +} diff --git a/rev-index/ember-cli.json b/rev-index/ember-cli.json new file mode 100644 index 000000000..84f371409 --- /dev/null +++ b/rev-index/ember-cli.json @@ -0,0 +1,29 @@ +{ + "data": { + "id": "ember-cli", + "type": "project", + "attributes": { + "github-url": "https://github.com/emberjs/ember.js" + }, + "relationships": { + "project-versions": { + "data": [ + { + "id": "ember-cli-5.4.0", + "type": "project-version" + }, + { + "id": "ember-cli-5.3.0", + "type": "project-version" + } + ] + } + } + }, + "meta": { + "availableVersions": [ + "5.4.0", + "5.3.0" + ] + } +} diff --git a/s3-docs/v5.3.0/ember-cli-docs.json b/s3-docs/v5.3.0/ember-cli-docs.json new file mode 100644 index 000000000..a732953ce --- /dev/null +++ b/s3-docs/v5.3.0/ember-cli-docs.json @@ -0,0 +1,6699 @@ +{ + "project": { + "logo": "https://ember-cli.com/assets/images/ember-cli-logo-small-dark.png", + "name": "ember-cli", + "description": "Command line tool for developing ambitious ember.js apps", + "version": "5.3.0-4a83562d10" + }, + "files": { + "lib/broccoli/default-packager.js": { + "name": "lib/broccoli/default-packager.js", + "modules": {}, + "classes": { + "DefaultPackager": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/broccoli/ember-addon.js": { + "name": "lib/broccoli/ember-addon.js", + "modules": { + "ember-cli": 1 + }, + "classes": { + "EmberAddon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/broccoli/ember-app.js": { + "name": "lib/broccoli/ember-app.js", + "modules": {}, + "classes": { + "EmberApp": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/cli/cli.js": { + "name": "lib/cli/cli.js", + "modules": {}, + "classes": { + "CLI": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/debug/assert.js": { + "name": "lib/debug/assert.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/debug/deprecate.js": { + "name": "lib/debug/deprecate.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/models/package-info-cache/index.js": { + "name": "lib/models/package-info-cache/index.js", + "modules": {}, + "classes": { + "PackageInfoCache": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/package-info-cache/node-modules-list.js": { + "name": "lib/models/package-info-cache/node-modules-list.js", + "modules": {}, + "classes": { + "NodeModulesList": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/package-info-cache/package-info.js": { + "name": "lib/models/package-info-cache/package-info.js", + "modules": {}, + "classes": { + "PackageInfo": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/per-bundle-addon-cache/addon-proxy.js": { + "name": "lib/models/per-bundle-addon-cache/addon-proxy.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/models/per-bundle-addon-cache/index.js": { + "name": "lib/models/per-bundle-addon-cache/index.js", + "modules": {}, + "classes": { + "PerBundleAddonCache {": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/per-bundle-addon-cache/target-instance.js": { + "name": "lib/models/per-bundle-addon-cache/target-instance.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/models/addon-info.js": { + "name": "lib/models/addon-info.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/models/addon.js": { + "name": "lib/models/addon.js", + "modules": {}, + "classes": { + "Addon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/blueprint.js": { + "name": "lib/models/blueprint.js", + "modules": {}, + "classes": { + "Blueprint": 1 + }, + "fors": {}, + "namespaces": { + "Blueprint": 1 + } + }, + "lib/models/builder.js": { + "name": "lib/models/builder.js", + "modules": {}, + "classes": { + "Builder": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/command.js": { + "name": "lib/models/command.js", + "modules": {}, + "classes": { + "Command": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/hardware-info.js": { + "name": "lib/models/hardware-info.js", + "modules": {}, + "classes": {}, + "fors": { + "HardwareInfo": 1 + }, + "namespaces": {} + }, + "lib/models/host-info-cache.js": { + "name": "lib/models/host-info-cache.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/models/instantiate-addons.js": { + "name": "lib/models/instantiate-addons.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/models/instrumentation.js": { + "name": "lib/models/instrumentation.js", + "modules": {}, + "classes": { + "Instrumentation": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/project.js": { + "name": "lib/models/project.js", + "modules": {}, + "classes": { + "Project": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/task.js": { + "name": "lib/models/task.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/server/middleware/broccoli-serve-files/index.js": { + "name": "lib/tasks/server/middleware/broccoli-serve-files/index.js", + "modules": {}, + "classes": { + "ServeFilesAddon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/server/middleware/broccoli-watcher/index.js": { + "name": "lib/tasks/server/middleware/broccoli-watcher/index.js", + "modules": {}, + "classes": { + "WatcherAddon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/server/middleware/history-support/index.js": { + "name": "lib/tasks/server/middleware/history-support/index.js", + "modules": {}, + "classes": { + "HistorySupportAddon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/server/middleware/tests-server/index.js": { + "name": "lib/tasks/server/middleware/tests-server/index.js", + "modules": {}, + "classes": { + "TestsServerAddon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/transforms/amd/index.js": { + "name": "lib/tasks/transforms/amd/index.js", + "modules": {}, + "classes": { + "AmdTransformAddon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/build-watch.js": { + "name": "lib/tasks/build-watch.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/npm-task.js": { + "name": "lib/tasks/npm-task.js", + "modules": {}, + "classes": { + "NpmTask": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/serve.js": { + "name": "lib/tasks/serve.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/test-server.js": { + "name": "lib/tasks/test-server.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/directory-for-package-name.js": { + "name": "lib/utilities/directory-for-package-name.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/ember-app-utils.js": { + "name": "lib/utilities/ember-app-utils.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/get-package-manager-from-flags.js": { + "name": "lib/utilities/get-package-manager-from-flags.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/insert-into-file.js": { + "name": "lib/utilities/insert-into-file.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/is-lazy-engine.js": { + "name": "lib/utilities/is-lazy-engine.js", + "modules": { + "is-lazy-engine": 1 + }, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/is-pnpm-project.js": { + "name": "lib/utilities/is-pnpm-project.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/is-yarn-project.js": { + "name": "lib/utilities/is-yarn-project.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/valid-project-name.js": { + "name": "lib/utilities/valid-project-name.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/will-interrupt-process.js": { + "name": "lib/utilities/will-interrupt-process.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/windows-admin.js": { + "name": "lib/utilities/windows-admin.js", + "modules": {}, + "classes": { + "WindowsSymlinkChecker": 1 + }, + "fors": {}, + "namespaces": {} + } + }, + "modules": { + "ember-cli": { + "name": "ember-cli", + "submodules": {}, + "elements": {}, + "classes": { + "DefaultPackager": 1, + "EmberAddon": 1, + "EmberApp": 1, + "CLI": 1, + "PackageInfoCache": 1, + "NodeModulesList": 1, + "PackageInfo": 1, + "PerBundleAddonCache {": 1, + "Addon": 1, + "Blueprint": 1, + "Builder": 1, + "Command": 1, + "HardwareInfo": 1, + "Instrumentation": 1, + "Project": 1, + "ServeFilesAddon": 1, + "WatcherAddon": 1, + "HistorySupportAddon": 1, + "TestsServerAddon": 1, + "AmdTransformAddon": 1, + "NpmTask": 1 + }, + "fors": { + "HardwareInfo": 1 + }, + "namespaces": { + "Blueprint": 1 + }, + "tag": "module", + "file": "lib/tasks/npm-task.js", + "line": 17, + "access": "private", + "tagname": "", + "is_constructor": 1, + "extends": "Task" + }, + "is-lazy-engine": { + "name": "is-lazy-engine", + "submodules": {}, + "elements": {}, + "classes": { + "WindowsSymlinkChecker": 1 + }, + "fors": {}, + "namespaces": {}, + "tag": "module", + "file": "lib/utilities/windows-admin.js", + "line": 6, + "description": "Indicate if a given object is a constructor function or class or an instance of an Addon.", + "params": [ + { + "name": "addonCtorOrInstance", + "description": "the constructor function/class or an instance of an Addon.", + "type": "Object" + } + ], + "return": { + "description": "True if the addonCtorOrInstance is a lazy engine, False otherwise.", + "type": "Boolean" + } + } + }, + "classes": { + "DefaultPackager": { + "name": "DefaultPackager", + "shortname": "DefaultPackager", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "file": "lib/broccoli/default-packager.js", + "line": 98, + "description": "Responsible for packaging Ember.js application.", + "is_constructor": 1 + }, + "EmberAddon": { + "name": "EmberAddon", + "shortname": "EmberAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/broccoli/ember-addon.js", + "line": 13, + "description": "EmberAddon is used during addon development.", + "extends": "EmberApp", + "is_constructor": 1, + "params": [ + { + "name": "defaults", + "description": "", + "type": "Object", + "optional": true + }, + { + "name": "options", + "description": "Configuration options", + "type": "Object", + "optional": true, + "optdefault": "{}" + } + ] + }, + "EmberApp": { + "name": "EmberApp", + "shortname": "EmberApp", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/broccoli/ember-app.js", + "line": 60, + "description": "EmberApp is the main class Ember CLI uses to manage the Broccoli trees\nfor your application. It is very tightly integrated with Broccoli and has\na `toTree()` method you can use to get the entire tree for your application.\n\nAvailable init options:\n- storeConfigInMeta, defaults to `true`\n- autoRun, defaults to `true`\n- outputPaths, defaults to `{}`\n- minifyCSS, defaults to `{enabled: !!isProduction,options: { relativeTo: 'assets' }}\n- sourcemaps, defaults to `{}`\n- trees, defaults to `{}`\n- vendorFiles, defaults to `{}`\n- addons, defaults to `{ exclude: [], include: [] }`", + "is_constructor": 1, + "params": [ + { + "name": "defaults", + "description": "", + "type": "Object", + "optional": true + }, + { + "name": "options", + "description": "Configuration options", + "type": "Object", + "optional": true, + "optdefault": "{}" + } + ] + }, + "CLI": { + "name": "CLI", + "shortname": "CLI", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/cli/cli.js", + "line": 15, + "access": "private", + "tagname": "", + "is_constructor": 1, + "params": [ + { + "name": "options", + "description": "" + } + ] + }, + "PackageInfoCache": { + "name": "PackageInfoCache", + "shortname": "PackageInfoCache", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/package-info-cache/index.js", + "line": 23, + "description": "Class that stores entries that are either PackageInfo or NodeModulesList objects.\nThe entries are stored in a map keyed by real directory path.", + "access": "public", + "tagname": "" + }, + "NodeModulesList": { + "name": "NodeModulesList", + "shortname": "NodeModulesList", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 7, + "description": "Class that stores information about a node_modules directory (i.e., the\npackages and subdirectories in the directory). It is one of the\ntwo types of entries in a PackageInfoCache. It is only created by the\nPackageInfoCache.", + "access": "public", + "tagname": "" + }, + "PackageInfo": { + "name": "PackageInfo", + "shortname": "PackageInfo", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/package-info-cache/package-info.js", + "line": 50, + "description": "Class that stores information about a single package (directory tree with\na package.json and other data, like and Addon or Project.) It is one of the\ntwo types of entries in a PackageInfoCache. It is only created by the\nPackageInfoCache.", + "access": "public", + "tagname": "" + }, + "PerBundleAddonCache {": { + "name": "PerBundleAddonCache {", + "shortname": "PerBundleAddonCache {", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 46, + "description": "For large applications with many addons (and many instances of each, resulting in\npotentially many millions of addon instances during a build), the build can become\nvery, very slow (tens of minutes) partially due to the sheer number of addon instances.\nThe PerBundleAddonCache deals with this slowness by doing 3 things:\n\n(1) Making only a single copy of each of certain addons and their dependent addons\n(2) Replacing any other instances of those addons with Proxy copies to the single instance\n(3) Having the Proxies return an empty array for their dependent addons, rather\n than proxying to the contents of the single addon instance. This gives up the\n ability of the Proxies to traverse downward into their child addons,\n something that many addons do not do anyway, for the huge reduction in duplications\n of those child addons. For applications that enable `ember-engines` dedupe logic,\n that logic is stateful, and having the Proxies allow access to the child addons array\n just breaks everything, because that logic will try multiple times to remove items\n it thinks are duplicated, messing up the single copy of the child addon array.\n See the explanation of the dedupe logic in\n {@link https://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/utils/deeply-non-duplicated-addon.js}\n\nWhat follows are the more technical details of how the PerBundleAddonCache implements\nthe above 3 behaviors.\n\nThis class supports per-bundle-host (bundle host = project or lazy engine)\ncaching of addon instances. During addon initialization we cannot add a\ncache to each bundle host object AFTER it is instantiated because running the\naddon constructor ultimately causes Addon class `setupRegistry` code to\nrun which instantiates child addons, which need the cache to already be\nin place for the parent bundle host.\nWe handle this by providing a global cache that exists independent of the\nbundle host objects. That is this object.\n\nThere are a number of \"behaviors\" being implemented by this object and\nits contents. They are:\n(1) Any addon that is a lazy engine has only a single real instance per\nproject - all other references to the lazy engine are to be proxies. These\nlazy engines are compared by name, not by packageInfo.realPath.\n(2) Any addon that is not a lazy engine, there is only a single real instance\nof the addon per \"bundle host\" (i.e. lazy engine or project).\n(3) An optimization - any addon that is in a lazy engine but that is also\nin bundled by its LCA host - the single instance is the one bundled by this\nhost. All other instances (in any lazy engine) are proxies.\n\nNOTE: the optimization is only enabled if the environment variable that controls\n`ember-engines` transitive deduplication (process.env.EMBER_ENGINES_ADDON_DEDUPE)\nis set to a truthy value. For more info, see:\nhttps://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/engine-addon.js#L396", + "access": "public", + "tagname": "" + }, + "Addon": { + "name": "Addon", + "shortname": "Addon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/addon.js", + "line": 122, + "description": "Root class for an Addon. If your addon module exports an Object this\nwill be extended from this base class. If you export a constructor (function),\nit will **not** extend from this class.\n\nHooks:\n\n- {{#crossLink \"Addon/config:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/blueprintsPath:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/includedCommands:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/importTransforms:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/serverMiddleware:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/testemMiddleware:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/postBuild:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/preBuild:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/outputReady:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/buildError:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/included:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/shouldIncludeChildAddon:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/setupPreprocessorRegistry:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/preprocessTree:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/postprocessTree:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/lintTree:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/contentFor:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/treeFor:method\"}}{{/crossLink}}", + "extends": "CoreObject", + "is_constructor": 1, + "params": [ + { + "name": "parent", + "description": "The project or addon that directly depends on this addon", + "type": "Project|Addon" + }, + { + "name": "project", + "description": "The current project (deprecated)", + "type": "Project" + } + ] + }, + "Blueprint": { + "name": "Blueprint", + "shortname": "Blueprint", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "Blueprint", + "file": "lib/models/blueprint.js", + "line": 29, + "description": "A blueprint is a bundle of template files with optional install\nlogic.\n\nBlueprints follow a simple structure. Let's take the built-in\n`controller` blueprint as an example:\n\n```\nblueprints/controller\n├── files\n│ ├── app\n│ │ └── __path__\n│ │ └── __name__.js\n└── index.js\n\nblueprints/controller-test\n├── files\n│ └── tests\n│ └── unit\n│ └── controllers\n│ └── __test__.js\n└── index.js\n```\n\n## Files\n\n`files` contains templates for the all the files to be\ninstalled into the target directory.\n\nThe `__name__` token is subtituted with the dasherized\nentity name at install time. For example, when the user\ninvokes `ember generate controller foo` then `__name__` becomes\n`foo`. When the `--pod` flag is used, for example `ember\ngenerate controller foo --pod` then `__name__` becomes\n`controller`.\n\nThe `__path__` token is substituted with the blueprint\nname at install time. For example, when the user invokes\n`ember generate controller foo` then `__path__` becomes\n`controller`. When the `--pod` flag is used, for example\n`ember generate controller foo --pod` then `__path__`\nbecomes `foo` (or `/foo` if the\npodModulePrefix is defined). This token is primarily for\npod support, and is only necessary if the blueprint can be\nused in pod structure. If the blueprint does not require pod\nsupport, simply use the blueprint name instead of the\n`__path__` token.\n\nThe `__test__` token is substituted with the dasherized\nentity name and appended with `-test` at install time.\nThis token is primarily for pod support and only necessary\nif the blueprint requires support for a pod structure. If\nthe blueprint does not require pod support, simply use the\n`__name__` token instead.\n\n## Template Variables (AKA Locals)\n\nVariables can be inserted into templates with\n`<%= someVariableName %>`.\n\nFor example, the built-in `util` blueprint\n`files/app/utils/__name__.js` looks like this:\n\n```js\nexport default function <%= camelizedModuleName %>() {\n return true;\n}\n```\n\n`<%= camelizedModuleName %>` is replaced with the real\nvalue at install time.\n\nThe following template variables are provided by default:\n\n- `dasherizedPackageName`\n- `classifiedPackageName`\n- `dasherizedModuleName`\n- `classifiedModuleName`\n- `camelizedModuleName`\n\n`packageName` is the project name as found in the project's\n`package.json`.\n\n`moduleName` is the name of the entity being generated.\n\nThe mechanism for providing custom template variables is\ndescribed below.\n\n## Index.js\n\nCustom installation and uninstallation behavior can be added\nby overriding the hooks documented below. `index.js` should\nexport a plain object, which will extend the prototype of the\n`Blueprint` class. If needed, the original `Blueprint` prototype\ncan be accessed through the `_super` property.\n\n```js\nmodule.exports = {\n locals(options) {\n // Return custom template variables here.\n return {};\n },\n\n normalizeEntityName(entityName) {\n // Normalize and validate entity name here.\n return entityName;\n },\n\n fileMapTokens(options) {\n // Return custom tokens to be replaced in your files\n return {\n __token__(options){\n // logic to determine value goes here\n return 'value';\n }\n }\n },\n\n filesPath(options) {\n return path.join(this.path, 'files');\n },\n\n beforeInstall(options) {},\n afterInstall(options) {},\n beforeUninstall(options) {},\n afterUninstall(options) {}\n\n};\n```\n\n## Blueprint Hooks\n\n### beforeInstall & beforeUninstall\n\nCalled before any of the template files are processed and receives\nthe `options` and `locals` hashes as parameters. Typically used for\nvalidating any additional command line options or for any asynchronous\nsetup that is needed. As an example, the `controller` blueprint validates\nits `--type` option in this hook. If you need to run any asynchronous code,\nwrap it in a promise and return that promise from these hooks. This will\nensure that your code is executed correctly.\n\n### afterInstall & afterUninstall\n\nThe `afterInstall` and `afterUninstall` hooks receives the same\narguments as `locals`. Use it to perform any custom work after the\nfiles are processed. For example, the built-in `route` blueprint\nuses these hooks to add and remove relevant route declarations in\n`app/router.js`.\n\n### Overriding Install\n\nIf you don't want your blueprint to install the contents of\n`files` you can override the `install` method. It receives the\nsame `options` object described above and must return a promise.\nSee the built-in `resource` blueprint for an example of this.", + "is_constructor": 1, + "extends": "CoreObject", + "params": [ + { + "name": "blueprintPath", + "description": "", + "type": "String", + "optional": true + }, + { + "name": "blueprintOptions", + "description": "", + "type": "Object", + "optional": true + } + ] + }, + "Builder": { + "name": "Builder", + "shortname": "Builder", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/builder.js", + "line": 14, + "description": "Wrapper for the Broccoli [Builder](https://github.com/broccolijs/broccoli/blob/master/lib/builder.js) class.", + "access": "private", + "tagname": "" + }, + "Command": { + "name": "Command", + "shortname": "Command", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/command.js", + "line": 42 + }, + "HardwareInfo": { + "name": "HardwareInfo", + "shortname": "HardwareInfo", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "" + }, + "Instrumentation": { + "name": "Instrumentation", + "shortname": "Instrumentation", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/instrumentation.js", + "line": 38, + "description": "An instance of this class is used for invoking the instrumentation\nhooks on addons.\n\nThe instrumentation types currently supported are:\n\n* init\n* build\n* command\n* shutdown", + "access": "private", + "tagname": "" + }, + "Project": { + "name": "Project", + "shortname": "Project", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/project.js", + "line": 27, + "description": "The Project model is tied to your package.json. It is instantiated\nby giving {{#crossLink \"Project/closestSync:method\"}}{{/crossLink}}\nthe path to your project.", + "is_constructor": 1, + "params": [ + { + "name": "root", + "description": "Root directory for the project", + "type": "String" + }, + { + "name": "pkg", + "description": "Contents of package.json", + "type": "Object" + }, + { + "name": "ui", + "description": "", + "type": "UI" + }, + { + "name": "cli", + "description": "", + "type": "CLI" + } + ] + }, + "ServeFilesAddon": { + "name": "ServeFilesAddon", + "shortname": "ServeFilesAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/broccoli-serve-files/index.js", + "line": 6, + "description": "This addon is used to serve the requested assets and set the required response\nheaders. It runs after broccoli-watcher addon.", + "is_constructor": 1 + }, + "WatcherAddon": { + "name": "WatcherAddon", + "shortname": "WatcherAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/broccoli-watcher/index.js", + "line": 7, + "description": "This addon is used to set the default response headers for the assets that will be\nserved by the next middleware. It waits for the watcher promise to resolve before\nsetting the response headers.", + "is_constructor": 1 + }, + "HistorySupportAddon": { + "name": "HistorySupportAddon", + "shortname": "HistorySupportAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/history-support/index.js", + "line": 8, + "description": "This addon is used to serve the `index.html` file at every requested\nURL that begins with `rootURL` and is expecting `text/html` output.", + "is_constructor": 1 + }, + "TestsServerAddon": { + "name": "TestsServerAddon", + "shortname": "TestsServerAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/tests-server/index.js", + "line": 9, + "description": "This addon is used to serve the QUnit or Mocha test runner\nat `rootURL + '/tests'`.", + "is_constructor": 1 + }, + "AmdTransformAddon": { + "name": "AmdTransformAddon", + "shortname": "AmdTransformAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/transforms/amd/index.js", + "line": 4, + "description": "This addon is used to register a custom AMD transform for app and addons to use.", + "is_constructor": 1 + }, + "NpmTask": { + "name": "NpmTask", + "shortname": "NpmTask", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/npm-task.js", + "line": 17, + "access": "private", + "tagname": "", + "is_constructor": 1, + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ] + }, + "WindowsSymlinkChecker": { + "name": "WindowsSymlinkChecker", + "shortname": "WindowsSymlinkChecker", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "is-lazy-engine", + "namespace": "", + "file": "lib/utilities/windows-admin.js", + "line": 6, + "description": "On Windows, users will have a much better experience if symlinks are enabled\n and usable. When queried, this object informs Windows users regarding\n improving their build performance, and how.\n > Windows Vista: nothing we can really do, so we fall back to junctions for folders + copying of files\n <= Windows Vista: symlinks are available but using them is somewhat tricky\n * if the user is an admin, the process needs to have been started with elevated privileges\n * if the user is not an admin, a specific setting needs to be enabled\n <= Windows 10\n * if developer mode is enabled, symlinks \"just work\"\n * https://blogs.windows.com/buildingapps/2016/12/02/symlinks-windows-10\n```js\n let checker = WindowsSymlinkChecker;\n let {\n windows,\n elevated\n } = await = checker.checkIfSymlinksNeedToBeEnabled(); // aslso emits helpful warnings\n ```", + "access": "public", + "tagname": "" + } + }, + "elements": {}, + "classitems": [ + { + "file": "lib/broccoli/ember-app.js", + "line": 180, + "description": "Initializes the `tests` and `hinting` properties.\n\nDefaults to `false` unless `ember test` was used or this is *not* a production build.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initTestsAndHinting", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 196, + "description": "Initializes the `project` property from `options.project` or the\nclosest Ember CLI project from the current working directory.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 217, + "description": "Initializes the `options` property from the `options` parameter and\na set of default values from Ember CLI.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 334, + "description": "Resolves a path relative to the project's root", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_resolveLocal", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 344, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initVendorFiles", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 371, + "description": "Returns the environment name", + "access": "public", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "env", + "return": { + "description": "Environment name", + "type": "String" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 383, + "description": "Delegates to `broccoli-concat` with the `sourceMapConfig` option set to `options.sourcemaps`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_concatFiles", + "params": [ + { + "name": "tree", + "description": "" + }, + { + "name": "options", + "description": "" + } + ], + "return": { + "description": "" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 398, + "description": "Checks the result of `addon.isEnabled()` if it exists, defaults to `true` otherwise.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonEnabled", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 410, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonDisabledByExclude", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 421, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonDisabledByInclude", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 432, + "description": "Returns whether an addon should be added to the project", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldIncludeAddon", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 448, + "description": "Calls the included hook on addons.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_notifyAddonIncluded", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 484, + "description": "Calls the importTransforms hook on addons.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_importAddonTransforms", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 533, + "description": "Loads and initializes addons for this project.\nCalls initializeAddons on the Project.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "initializeAddons", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 560, + "description": "Returns a list of trees for a given type, returned by all addons.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonTreesFor", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + } + ], + "return": { + "description": "List of trees", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 572, + "description": "Runs addon post-processing on a given tree and returns the processed tree.\n\nThis enables addons to do process immediately **after** the preprocessor for a\ngiven type is run, but before concatenation occurs. If an addon wishes to\napply a transform before the preprocessors run, they can instead implement the\npreprocessTree hook.\n\nTo utilize this addons implement `postprocessTree` hook.\n\nAn example, would be to apply some broccoli transform on all JS files, but\nonly after the existing pre-processors have run.\n\n```js\nmodule.exports = {\n name: 'my-cool-addon',\n postprocessTree(type, tree) {\n if (type === 'js') {\n return someBroccoliTransform(tree);\n }\n\n return tree;\n }\n}\n\n```", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonPostprocessTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 609, + "description": "Runs addon pre-processing on a given tree and returns the processed tree.\n\nThis enables addons to do process immediately **before** the preprocessor for a\ngiven type is run. If an addon wishes to apply a transform after the\npreprocessors run, they can instead implement the postprocessTree hook.\n\nTo utilize this addons implement `preprocessTree` hook.\n\nAn example, would be to remove some set of files before the preprocessors run.\n\n```js\nvar stew = require('broccoli-stew');\n\nmodule.exports = {\n name: 'my-cool-addon',\n preprocessTree(type, tree) {\n if (type === 'js' && type === 'template') {\n return stew.rm(tree, someGlobPattern);\n }\n\n return tree;\n }\n}\n```", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonPreprocessTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 645, + "description": "Runs addon lintTree hooks and returns a single tree containing all\ntheir output.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonLintTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 664, + "description": "Imports legacy imports in this.vendorFiles", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "populateLegacyFiles", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 841, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_podTemplatePatterns", + "return": { + "description": "An array of regular expressions.", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1048, + "description": "Runs the `app`, `tests` and `templates` trees through the chain of addons that produces lint trees.\n\nThose lint trees are afterwards funneled into the `tests` folder, babel-ified and returned as an array.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getLintTests", + "return": { + "description": "", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1088, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "return": { + "description": "Alias to the project's dependencies function", + "type": "Object" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1097, + "description": "Imports an asset into the application.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "import", + "params": [ + { + "name": "asset", + "description": "Either a path to the asset or an object with environment names and paths as key-value pairs.", + "type": "Object|String" + }, + { + "name": "options", + "description": "Options object", + "type": "Object", + "optional": true, + "props": [ + { + "name": "type", + "description": "Either 'vendor' or 'test'", + "type": "String", + "optional": true, + "optdefault": "'vendor'" + }, + { + "name": "prepend", + "description": "Whether or not this asset should be prepended", + "type": "Boolean", + "optional": true, + "optdefault": "false" + }, + { + "name": "destDir", + "description": "Destination directory, defaults to the name of the directory the asset is in", + "type": "String", + "optional": true + }, + { + "name": "outputFile", + "description": "Specifies the output file for given import. Defaults to assets/vendor.{js,css}", + "type": "String", + "optional": true + }, + { + "name": "using", + "description": "Specifies the array of transformations to be done on the asset. Can do an amd shim and/or custom transformation", + "type": "Array", + "optional": true + } + ] + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1143, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_import", + "params": [ + { + "name": "assetPath", + "description": "", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "directory", + "description": "", + "type": "String" + }, + { + "name": "subdirectory", + "description": "", + "type": "String" + }, + { + "name": "extension", + "description": "", + "type": "String" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1228, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getAssetPath", + "params": [ + { + "name": "asset", + "description": "", + "type": "(Object|String)" + } + ], + "return": { + "description": "assetPath", + "type": "(String|undefined)" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1269, + "description": "Returns an array of trees for this application", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "toArray", + "return": { + "description": "An array of trees", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1306, + "description": "Returns the merged tree for this application", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "toTree", + "params": [ + { + "name": "additionalTrees", + "description": "Array of additional trees to merge", + "type": "Array", + "optional": true + } + ], + "return": { + "description": "Merged tree for this application", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 22, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "name", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 28, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "ui", + "type": "UI", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 35, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "analytics", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 41, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "testing", + "type": "Boolean", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 48, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "disableDependencyChecker", + "type": "Boolean", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 55, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "root", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 61, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "npmPackage", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 67, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "instrumentation", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 83, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "maybeMakeCommand", + "params": [ + { + "name": "commandName", + "description": "" + }, + { + "name": "commandArgs", + "description": "" + } + ], + "return": { + "description": "", + "type": "Null|CurrentCommand" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 122, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "run", + "params": [ + { + "name": "environmentPromiseHash", + "description": "", + "type": "Promise" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 231, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "callHelp", + "params": [ + { + "name": "options", + "description": "" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 272, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "logError", + "params": [ + { + "name": "error", + "description": "" + } + ], + "return": { + "description": "", + "type": "Number" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/debug/assert.js", + "line": 3, + "description": "Verify that a certain condition is met, or throw an error if otherwise.\n\nThis is useful for communicating expectations in the code to other human\nreaders as well as catching bugs that accidentally violate these expectations.\n\n```js\nconst { assert } = require('ember-cli/lib/debug');\n\n// Test for truthiness:\nassert('Must pass a string.', typeof str === 'string');\n\n// Fail unconditionally:\nassert('This code path should never run.');\n```", + "itemtype": "method", + "name": "assert", + "params": [ + { + "name": "description", + "description": "Describes the condition.\nThis will become the message of the error thrown if the assertion fails.", + "type": "String" + }, + { + "name": "condition", + "description": "Must be truthy for the assertion to pass.\nIf falsy, an error will be thrown.", + "type": "Any" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/debug/deprecate.js", + "line": 7, + "description": "Display a deprecation message.\n\n```js\nconst { deprecate } = require('ember-cli/lib/debug');\n\ndeprecate('The `foo` method is deprecated.', false, {\n for: 'ember-cli',\n id: 'ember-cli.foo-method',\n since: {\n available: '4.1.0',\n enabled: '4.2.0',\n },\n until: '5.0.0',\n url: 'https://example.com',\n});\n```", + "itemtype": "method", + "name": "deprecate", + "params": [ + { + "name": "description", + "description": "Describes the deprecation.", + "type": "String" + }, + { + "name": "condition", + "description": "If falsy, the deprecation message will be displayed.", + "type": "Any" + }, + { + "name": "options", + "description": "An object including the deprecation's details:\n- `for` The library that the deprecation is for\n- `id` The deprecation's unique id\n- `since.available` A SemVer version indicating when the deprecation was made available\n- `since.enabled` A SemVer version indicating when the deprecation was enabled\n- `until` A SemVer version indicating until when the deprecation will be active\n- `url` A URL that refers to additional information about the deprecation", + "type": "Object" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 36, + "description": "Clear the cache information.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_clear", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 48, + "description": "Indicates if there is at least one error in any object in the cache.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hasErrors", + "return": { + "description": "true if there are any errors in the cache, for any entries, else false." + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 65, + "description": "Gather all the errors in the PIC and any cached objects, then dump them\nout to the ui-console.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "showErrors", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 80, + "description": "Dump all the errors for a single object in the cache out to the ui-console.\n\nSpecial case: because package-info-cache also creates PackageInfo objects for entries\nthat do not actually exist (to allow simplifying the code), if there's a case where\nan object has only the single error ERROR_PACKAGE_DIR_MISSING, do not print\nanything. The package will have been found as a reference from some other\naddon or the root project, and we'll print a reference error there. Having\nboth is just confusing to users.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_showObjErrors", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 146, + "description": "Process the root directory of a project, given a\nProject object (we need the object in order to find the internal addons).\n_readPackage takes care of the general processing of the root directory\nand common locations for addons, filling the cache with each. Once it\nreturns, we take care of the locations for addons that are specific to\nprojects, not other packages (e.g. internal addons, cli root).\n\nOnce all the project processing is done, go back through all cache entries\nto create references between the packageInfo objects.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "loadProject", + "params": [ + { + "name": "projectInstance", + "description": "the instance of the Project object to load package data\nabout into the cache." + } + ], + "return": { + "description": "the PackageInfo object for the given Project object.\nNote that if the project path is already in the cache, that will be returned.\nNo copy is made.", + "type": "PackageInfo" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 203, + "description": "To support the project.reloadPkg method, we need the ability to flush\nthe cache and reload from the updated package.json.\nThere are some issues with doing this:\n - Because of the possible relationship between projects and their addons\n due to symlinks, it's not trivial to flush only the data related to a\n given project.\n - If an 'ember-build-cli.js' dynamically adds new projects to the cache,\n we will not necessarily get called again to redo the loading of those\n projects.\nThe solution, implemented here:\n - Keep track of the Project objects whose packages are loaded into the cache.\n - If a project is reloaded, flush the cache, then do loadPackage again\n for all the known Projects.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "reloadProjects", + "return": { + "description": "null" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 228, + "description": "Do the actual processing of the root directory of an addon, when the addon\nobject already exists (i.e. the addon is acting as the root object of a\ntree, like project does). We need the object in order to find the internal addons.\n_readPackage takes care of the general processing of the root directory\nand common locations for addons, filling the cache with each.\n\nOnce all the addon processing is done, go back through all cache entries\nto create references between the packageInfo objects.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "loadAddon", + "params": [ + { + "name": "addonInstance", + "description": "the instance of the Addon object to load package data\nabout into the cache." + } + ], + "return": { + "description": "the PackageInfo object for the given Addon object.\nNote that if the addon path is already in the cache, that will be returned.\nNo copy is made.", + "type": "PackageInfo" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 262, + "description": "Resolve the node_module dependencies across all packages after they have\nbeen loaded into the cache, because we don't know when a particular package\nwill enter the cache.\n\nSince loadProject can be called multiple times for different projects,\nwe don't want to reprocess any packages that happen to be common\nbetween them. We'll handle this by marking any packageInfo once it\nhas been processed here, then ignore it in any later processing.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_resolveDependencies", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 299, + "description": "Add an entry to the cache.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addEntry", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 309, + "description": "Retrieve an entry from the cache.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "getEntry", + "params": [ + { + "name": "path", + "description": "the real path whose PackageInfo or NodeModulesList is desired.", + "type": "String" + } + ], + "return": { + "description": "or {NodeModulesList} the desired entry.", + "type": "PackageInfo" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 321, + "description": "Indicate if an entry for a given path exists in the cache.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "contains", + "params": [ + { + "name": "path", + "description": "the real path to check for in the cache.", + "type": "String" + } + ], + "return": { + "description": "true if the entry is present for the given path, false otherwise." + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 395, + "description": "Given a directory that supposedly contains a package, create a PackageInfo\nobject and try to fill it out, EVEN IF the package.json is not readable.\nErrors will then be stored in the PackageInfo for anything with the package\nthat might be wrong.\nBecause it's possible that the path given to the packageDir is not actually valid,\nwe'll just use the path.resolve() version of that path to search for the\npath in the cache, before trying to get the 'real' path (which also then\nresolves links). The cache itself is keyed on either the realPath, if the\npackageDir is actually a real valid directory path, or the normalized path (before\npath.resolve()), if it is not.\n\nNOTE: the cache is also used to store the NULL_PROJECT project object,\nwhich actually has no package.json or other files, but does have an empty\npackage object. Because of that, and to speed up processing, loadProject()\nwill pass in both the package root directory path and the project's package\nobject, if there is one. If the package object is present, we will use that\nin preference to trying to find a package.json file.\n\nIf there is no package object, and there is no package.json or the package.json\nis bad or the package is an addon with\nno main, the only thing we can do is return an ErrorEntry to the caller.\nOnce past all those problems, if any error occurs with any of the contents\nof the package, they'll be cached in the PackageInfo itself.\n\nIn summary, only PackageInfo or ErrorEntry will be returned.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_readPackage", + "params": [ + { + "name": "pkgDir", + "description": "the path of the directory to read the package.json from and\n process the contents and create a new cache entry or entries.", + "type": "String" + }, + { + "name": "isRoot,", + "description": "for when this is to be considered the root\npackage, whose dependencies we must all consider for discovery.", + "type": "Boolean" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 585, + "description": "Process a directory of modules in a given package directory.\n\nWe will allow cache entries for node_modules that actually\nhave no contents, just so we don't have to hit the file system more\noften than necessary--it's much quicker to check an in-memory object.\nobject.\n\nNote: only a NodeModulesList or null is returned.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_readModulesList", + "params": [ + { + "name": "nodeModulesDir", + "description": "the path of the node_modules directory\n to read the package.json from and process the contents and create a\n new cache entry or entries.", + "type": "String" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 43, + "description": "Given error data, add an ErrorEntry to the ErrorList for this object.", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addError", + "params": [ + { + "name": "errorType", + "description": "one of the Errors.ERROR_* constants.", + "type": "String" + }, + { + "name": "errorData", + "description": "any error data relevant to the type of error\nbeing created. See showErrors().", + "type": "Object" + } + ], + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 56, + "description": "Indicate if there are any errors in the NodeModulesList itself (not\nincluding errors within the individual entries).", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hasErrors", + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 67, + "description": "Add an entry (PackageInfo or NodeModulesList instance) to the entries\nfor this list. This is only called by PackageInfoCache. It is not intended\nto be called directly by anything else.", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addEntry", + "params": [ + { + "name": "entryName", + "description": "the name of the entry, i.e., the name of the\nfile or subdirectory in the directory listing.", + "type": "String" + }, + { + "name": "entryVal", + "description": "the PackageInfo or NodeModulesList tha corresponds\nto the given entry name in the file system.", + "type": "Object" + } + ], + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 84, + "description": "Return a PackageInfo object for a given package name (which may include\na scope)", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "findPackage", + "params": [ + { + "name": "packageName", + "description": "the name (possibly including a scope) of\n the PackageInfo the caller wants returned.", + "type": "String" + } + ], + "return": { + "description": "the desired PackageInfo if one exists for the given name, else null." + }, + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 96, + "description": "Given error data, add an ErrorEntry to the ErrorList for this object.\nThis is used by the _readPackage and _readNodeModulesList methods. It\nshould not be called otherwise.", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addError", + "params": [ + { + "name": "errorType", + "description": "one of the Errors.ERROR_* constants.", + "type": "String" + }, + { + "name": "errorData", + "description": "any error data relevant to the type of error\nbeing created. See showErrors().", + "type": "Object" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 111, + "description": "Indicate if there are any errors in the ErrorList for this package. Note that this does\nNOT indicate if there are any errors in the objects referred to by this package (e.g.,\ninternal addons or dependencies).", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hasErrors", + "params": [ + { + "name": "true", + "description": "if there are errors in the ErrorList, else false.", + "type": "Boolean" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 124, + "description": "Add a reference to an in-repo addon PackageInfo object.", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addInRepoAddon", + "params": [ + { + "name": "inRepoAddonPkg", + "description": "the PackageInfo for the in-repo addon", + "type": "PackageInfo" + } + ], + "return": { + "description": "null" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 139, + "description": "Add a reference to an internal addon PackageInfo object.\n\"internal\" addons (note: not in-repo addons) only exist in\nProjects, not other packages. Since the cache is loaded from\n'loadProject', this can be done appropriately.", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addInternalAddon", + "params": [ + { + "name": "internalAddonPkg", + "description": "the PackageInfo for the internal addon", + "type": "PackageInfo" + } + ], + "return": { + "description": "null" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 157, + "description": "For each dependency in the given list, find the corresponding\nPackageInfo object in the cache (going up the file tree if\nnecessary, as in the node resolution algorithm). Return a map\nof the dependencyName to PackageInfo object. Caller can then\nstore it wherever they like.\n\nNote: this is not to be called until all packages that can be have\nbeen added to the cache.\n\nNote: this is for ALL dependencies, not just addons. To get just\naddons, filter the result by calling pkgInfo.isForAddon().\n\nNote: this is only intended for use from PackageInfoCache._resolveDependencies.\nIt is not to be called directly by anything else.", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addDependencies", + "params": [ + { + "name": "dependencies", + "description": "value of 'dependencies' or 'devDependencies'\n attributes of a package.json.", + "type": "PackageInfo" + } + ], + "return": { + "description": "a JavaScript object keyed on dependency name/path with\n values the corresponding PackageInfo object from the cache.", + "type": "Object" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 226, + "description": "Indicate if this packageInfo is for a project. Should be called only after the project\nhas been loaded (see {@link PackageInfoCache#loadProject} for details).", + "itemtype": "method", + "name": "isForProject", + "return": { + "description": "true if this packageInfo is for a Project, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 237, + "description": "Indicate if this packageInfo is for an Addon.", + "itemtype": "method", + "name": "isForAddon", + "return": { + "description": "true if this packageInfo is for an Addon, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 247, + "description": "Indicate if this packageInfo represents an engine.", + "itemtype": "method", + "name": "isForEngine", + "return": { + "description": "true if this pkgInfo is configured as an engine & false otherwise", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 257, + "description": "Indicate if this packageInfo represents a lazy engine.", + "itemtype": "method", + "name": "isForLazyEngine", + "return": { + "description": "true if this pkgInfo is configured as an engine and the\nmodule this represents has lazyLoading enabled, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 268, + "description": "For use with the PerBundleAddonCache, is this packageInfo representing a\nbundle host (for now, a Project or a lazy engine).", + "itemtype": "method", + "name": "isForBundleHost", + "return": { + "description": "true if this pkgInfo is for a bundle host, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 279, + "description": "Add to a list of child addon PackageInfos for this packageInfo.", + "itemtype": "method", + "name": "addPackages", + "params": [ + { + "name": "addonPackageList", + "description": "the list of child addon PackageInfos being constructed from various\nsources in this packageInfo.", + "type": "Array" + }, + { + "name": "packageInfoList", + "description": "a list or map of PackageInfos being considered\n(e.g., pkgInfo.dependencyPackages) for inclusion in the addonPackageList.", + "type": "Array | Object" + }, + { + "name": "excludeFn", + "description": "an optional function. If passed in, each child PackageInfo\nwill be tested against the function and only included in the package map if the function\nreturns a truthy value.", + "type": "Function" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 318, + "description": "Discover the child addons for this packageInfo, which corresponds to an Addon.", + "itemtype": "method", + "name": "discoverAddonAddons", + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 336, + "description": "Discover the child addons for this packageInfo, which corresponds to a Project.", + "itemtype": "method", + "name": "discoverProjectAddons", + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 356, + "description": "Given a list of PackageInfo objects, generate the 'addonPackages' object (keyed by\nname, value = AddonInfo instance, for all packages marked 'valid'). This is stored in\nboth Addon and Project instances.", + "itemtype": "method", + "name": "generateAddonPackages", + "params": [ + { + "name": "addonPackageList", + "description": "the list of child addon PackageInfos to work from", + "type": "Array" + }, + { + "name": "excludeFn", + "description": "an optional function. If passed in, each child PackageInfo\nwill be tested against the function and only included in the package map if the function\nreturns a truthy value.", + "type": "Function" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 419, + "description": "This is only supposed to be called by the addon instantiation code.\nAlso, the assumption here is that this PackageInfo really is for an\nAddon, so we don't need to check each time.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getAddonConstructor", + "return": { + "description": "an instance of a constructor function for the Addon class\nwhose package information is stored in this object.", + "type": "AddonConstructor" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 457, + "description": "Construct an addon instance.\n\nNOTE: this does NOT call constructors for the child addons. That is left to\nthe caller to do, so they can insert any other logic they want.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "constructAddonInstance", + "params": [ + { + "name": "parent", + "description": "the parent that directly contains this addon", + "type": "Project|Addon" + }, + { + "name": "project", + "description": "the project that is/contains this addon", + "type": "Project" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 492, + "description": "Create an instance of the addon represented by this packageInfo or (if we\nare supporting per-bundle caching and this is an allow-caching-per-bundle addon)\ncheck if we should be creating a proxy instead.\n\nNOTE: we assume that the value of 'allowCachingPerBundle' does not change between\ncalls to the constructor! A given addon is either allowing or not allowing caching\nfor an entire run.", + "itemtype": "method", + "name": "getAddonInstance", + "params": [ + { + "name": "parent", + "description": "the addon/project that is to be the direct parent of the\naddon instance created here" + }, + { + "name": "project", + "description": "the project that is to contain this addon instance", + "type": "*" + } + ], + "return": { + "description": "the constructed instance of the addon", + "type": "Object" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 525, + "description": "Initialize the child addons array of a newly-created addon instance. Normally when\nan addon derives from Addon, child addons will be created during 'setupRegistry' and\nthis code is essentially unnecessary. But if an addon is created with custom constructors\nthat don't call 'setupRegistry', any child addons may not yet be initialized.", + "itemtype": "method", + "name": "initChildAddons", + "params": [ + { + "name": "addonInstance", + "description": "", + "type": "Addon" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 542, + "description": "Gets the addon entry point", + "itemtype": "method", + "name": "_getAddonEntryPoint", + "return": { + "description": "The exported addon entry point", + "type": "Object|Function" + }, + "access": "private", + "tagname": "", + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/addon-proxy.js", + "line": 7, + "description": "Validates that a new cache key for a given tree type matches the previous\ncache key for the same tree type. To opt-in to bundle addon caching for\na given addon it's assumed that it returns stable cache keys; specifically\nthis is because the interplay between bundle addon caching and `ember-engines`\nwhen transitive deduplication is enabled assumes stable cache keys, so we validate\nfor this case here.", + "itemtype": "method", + "name": "validateCacheKey", + "params": [ + { + "name": "realAddonInstance", + "description": "The real addon instance", + "type": "Addon" + }, + { + "name": "treeType", + "description": "", + "type": "String" + }, + { + "name": "newCacheKey", + "description": "", + "type": "String" + } + ], + "throws": { + "description": "If the new cache key doesn't match the previous cache key", + "type": "Error" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/addon-proxy.js", + "line": 42, + "description": "Returns a proxy to a target with specific handling for the\n`parent` property, as well has to handle the `app` property;\nthat is, the proxy should maintain correct local state in\nclosure scope for the `app` property if it happens to be set\nby `ember-cli`. Other than `parent` & `app`, this function also\nproxies _almost_ everything to `target[TARGET_INSTANCE] with a few\nexceptions: we trap & return `[]` for `addons`, and we don't return\nthe original `included` (it's already called on the \"real\" addon\nby `ember-cli`).\n\nNote: the target is NOT the per-bundle cacheable instance of the addon. Rather,\nit is a cache entry POJO from PerBundleAddonCache.", + "itemtype": "method", + "name": "getAddonProxy", + "params": [ + { + "name": "targetCacheEntry", + "description": "the PerBundleAddonCache cache entry we are to proxy. It\nhas one interesting property, the real addon instance the proxy is forwarding\ncalls to (that property is not globally exposed)." + }, + { + "name": "parent", + "description": "the parent object of the proxy being created (the same as\nthe 'parent' property of a normal addon instance)" + } + ], + "return": { + "description": "Proxy" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 17, + "description": "Resolves the perBundleAddonCacheUtil; this prefers the custom provided version by\nthe consuming application, and defaults to an internal implementation here.", + "itemtype": "method", + "name": "resolvePerBundleAddonCacheUtil", + "params": [ + { + "name": "project", + "description": "", + "type": "Project" + } + ], + "return": { + "description": "}", + "type": "AllowCachingPerBundle: Function" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 116, + "description": "The default implementation here is to indicate if the original addon entry point has\nthe `allowCachingPerBundle` flag set either on itself or on its prototype.\n\nIf a consuming application specifies a relative path to a custom utility via the\n`ember-addon.perBundleAddonCacheUtil` configuration, we prefer the custom implementation\nprovided by the consumer.", + "itemtype": "method", + "name": "allowCachingPerBundle", + "params": [ + { + "name": "addonEntryPointModule", + "description": "", + "type": "Object|Function" + } + ], + "return": { + "description": "true if the given constructor function or class supports caching per bundle, false otherwise", + "type": "Boolean" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 132, + "description": "Creates a cache entry for the bundleHostCache. Because we want to use the same sort of proxy\nfor both bundle hosts and for 'regular' addon instances (though their cache entries have\nslightly different structures) we'll use the Symbol from getAddonProxy.", + "itemtype": "method", + "name": "createBundleHostCacheEntry", + "params": [ + { + "name": "bundleHostPkgInfo", + "description": "bundle host's pkgInfo.realPath", + "type": "PackageInfo" + } + ], + "return": { + "description": "an object in the form of a bundle-host cache entry", + "type": "Object" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 145, + "description": "Create a cache entry object for a given (non-bundle-host) addon to put into\nan addon cache.", + "itemtype": "method", + "name": "createAddonCacheEntry", + "params": [ + { + "name": "addonInstance", + "description": "the addon instance to cache", + "type": "Addon" + }, + { + "name": "addonRealPath", + "description": "the addon's pkgInfo.realPath", + "type": "String" + } + ], + "return": { + "description": "an object in the form of an addon-cache entry", + "type": "Object" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 158, + "description": "Given a parent object of a potential addon (another addon or the project),\ngo up the 'parent' chain to find the potential addon's bundle host object\n(i.e. lazy engine or project.) Because Projects are always bundle hosts,\nthis should always pass, but we'll throw if somehow it doesn't work.", + "itemtype": "method", + "name": "findBundleHost", + "params": [ + { + "name": "addonParent", + "description": "the direct parent object of a (potential or real) addon.", + "type": "Project|Addon" + }, + { + "name": "addonPkgInfo", + "description": "the PackageInfo for an addon being instantiated. This is only\nused for information if an error is going to be thrown.", + "type": "PackageInfo" + } + ], + "return": { + "description": "the object in the 'parent' chain that is a bundle host.", + "type": "Object" + }, + "throws": { + "description": "if there is not bundle host", + "type": "Error" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 197, + "description": "An optimization we support from lazy engines is the following:\n\nIf an addon instance is supposed to be bundled with a particular lazy engine, and\nsame addon is also to be bundled by a common LCA host, prefer the one bundled by the\nhost (since it's ultimately going to be deduped later by `ember-engines`).\n\nNOTE: this only applies if this.engineAddonTransitiveDedupeEnabled is truthy. If it is not,\nthe bundle host always \"owns\" the addon instance.\n\nIf deduping is enabled and the LCA host also depends on the same addon,\nthe lazy-engine instances of the addon will all be proxies to the one in\nthe LCA host. This function indicates whether the bundle host passed in\n(either the project or a lazy engine) is really the bundle host to \"own\" the\nnew addon.", + "itemtype": "method", + "name": "bundleHostOwnsInstance", + "params": [ + { + "name": "(Object}", + "description": "bundleHost the project or lazy engine that is trying to \"own\"\nthe new addon instance specified by addonPkgInfo" + }, + { + "name": "addonPkgInfo", + "description": "the PackageInfo of the potential new addon instance", + "type": "PackageInfo" + } + ], + "return": { + "description": "true if the bundle host is to \"own\" the instance, false otherwise.", + "type": "Boolean" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 247, + "description": "Called from PackageInfo.getAddonInstance(), return an instance of the requested\naddon or a Proxy, based on the type of addon and its bundle host.", + "itemtype": "method", + "name": "getAddonInstance", + "params": [ + { + "name": "parent", + "description": "the parent Addon or Project this addon instance is\na child of.", + "type": "Addon|Project" + }, + { + "name": "addonPkgInfo", + "description": "the PackageInfo for the addon being created.", + "type": "*" + } + ], + "return": { + "description": "An addon instance (for the first copy of the addon) or a Proxy.\nAn addon that is a lazy engine will only ever have a single copy in the cache.\nAn addon that is not will have 1 copy per bundle host (Project or lazy engine),\nexcept if it is an addon that's also owned by a given LCA host and transitive\ndedupe is enabled (`engineAddonTransitiveDedupeEnabled`), in which case it will\nonly have a single copy in the project's addon cache.", + "type": "Addon|Proxy" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/target-instance.js", + "line": 3, + "description": "A Symbol constant for sharing between index.js and addon-proxy.js rather than\nputting the symbol into the Symbol global cache. The symbol is used in per-bundle\ncache entries to refer to the field that points at the real instance that a Proxy\nrefers to.", + "itemtype": "property", + "name": "", + "type": "Symbol", + "final": 1, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 155, + "description": "The name of this addon.", + "access": "public", + "tagname": "", + "final": 1, + "type": "String", + "itemtype": "property", + "name": "name", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 164, + "description": "The absolute path of the root directory where this addon is located.", + "access": "public", + "tagname": "", + "final": 1, + "type": "String", + "itemtype": "property", + "name": "root", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 173, + "description": "The host app instance.\n\n**Note**: this property will only be present on addons that are a direct dependency\nof the application itself, not of other addons. It is also not available in `init()`,\nbut will be set before `setupPreprocessorRegistry()` and `included()` are invoked.", + "access": "public", + "tagname": "", + "final": 1, + "type": "EmberApp", + "itemtype": "property", + "name": "app", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 186, + "description": "The root {{#crossLink \"Project\"}}project{{/crossLink}} to which this addon belongs.", + "access": "public", + "tagname": "", + "final": 1, + "type": "Project", + "itemtype": "property", + "name": "project", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 195, + "description": "This addon's parent.\n\nIf the addon is a direct dependency of an application, then `parent` will be the\ncorresponding {{#crossLink \"Project\"}}project{{/crossLink}} instance. If it's a\ndependency of another addon, then `parent` will be a reference to that addon.", + "access": "public", + "tagname": "", + "final": 1, + "type": "Project|Addon", + "itemtype": "property", + "name": "parent", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 208, + "description": "The set of addons that this addon itself depends on.\n\nThis array is populated from the addon's listed `dependencies` and any items in\n`ember-addon.paths` in its `package.json`.", + "access": "public", + "tagname": "", + "final": 1, + "type": "Addon[]", + "itemtype": "property", + "name": "addons", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 220, + "description": "A [`console-ui`](https://github.com/ember-cli/console-ui) object that can be used\nto log messages for the user and indicate progress on long-running operations.", + "access": "public", + "tagname": "", + "final": 1, + "type": "UI", + "itemtype": "property", + "name": "ui", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 230, + "description": "The contents of the addon's `package.json`.", + "access": "public", + "tagname": "", + "final": 1, + "type": "Object", + "itemtype": "property", + "name": "pkg", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 239, + "description": "Initializes the addon. If you override this method make sure and call `this._super.init && this._super.init.apply(this, arguments);` or your addon will not work.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "init", + "params": [ + { + "name": "parent", + "description": "The project or addon that directly depends on this addon", + "type": "Project|Addon" + }, + { + "name": "project", + "description": "The current project (deprecated)", + "type": "Project" + } + ], + "example": [ + "\n```js\ninit(parent, project) {\n this._super.init && this._super.init.apply(this, arguments);\n this._someCustomSetup();\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 320, + "description": "Find an addon of the current addon.\n\nExample: ember-data depends on ember-cli-babel and wishes to have\nadditional control over transpilation this method helps.\n\n```js\n// ember-data/index.js\ntreeForAddon(tree) {\n let babel = this.findOwnAddonByName('ember-cli-babel');\n\n return babel.transpileTree(tree, {\n // customize the babel step (see: ember-cli-addons readme for more details);\n });\n}\n```", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "findOwnAddonByName", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 344, + "description": "Check if the current addon intends to be hinted. Typically this is for\nhinting/linting libraries such as eslint or jshint", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hintingEnabled", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 359, + "description": "Shorthand method for [broccoli-concat](https://github.com/ember-cli/broccoli-concat)", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "concatFiles", + "params": [ + { + "name": "tree", + "description": "Tree of files", + "type": "Tree" + }, + { + "name": "options", + "description": "Options for broccoli-concat", + "type": "Object" + } + ], + "return": { + "description": "Modified tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 373, + "description": "Allows to mark the addon as developing, triggering live-reload in the project the addon is linked to.\n\n#### Uses:\n\n- Working on projects with internal addons", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "isDevelopingAddon", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 409, + "description": "Discovers all child addons of this addon and an AddonInfo about\neach addon in this.addonPackages (keyed on addon name).\n\nChild addons include those from 'dependencies' (not devDependencies)\nand in-repo addons\n\nAny packageInfos that we find that are marked as not valid are excluded.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "discoverAddons", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 459, + "description": "Invoke the specified method for each enabled addon.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "eachAddonInvoke", + "params": [ + { + "name": "methodName", + "description": "the method to invoke on each addon", + "type": "String" + }, + { + "name": "args", + "description": "the arguments to pass to the invoked method", + "type": "Array" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 484, + "description": "Invoke the specified method for each of the project's addons.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_eachProjectAddonInvoke", + "params": [ + { + "name": "methodName", + "description": "the method to invoke on each addon", + "type": "String" + }, + { + "name": "args", + "description": "the arguments to pass to the invoked method", + "type": "Array" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 517, + "description": "Generates a tree for the specified path", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "treeGenerator", + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 552, + "description": "Returns a given type of tree (if present), merged with the\napplication tree. For each of the trees available using this\nmethod, you can also use a direct method called `treeFor[Type]` (eg. `treeForApp`).\n\nAvailable tree names:\n- {{#crossLink \"Addon/treeForApp:method\"}}app{{/crossLink}}\n- {{#crossLink \"Addon/treeForStyles:method\"}}styles{{/crossLink}}\n- {{#crossLink \"Addon/treeForTemplates:method\"}}templates{{/crossLink}}\n- {{#crossLink \"Addon/treeForAddonTemplates:method\"}}addon-templates{{/crossLink}}\n- {{#crossLink \"Addon/treeForAddon:method\"}}addon{{/crossLink}}\n- {{#crossLink \"Addon/treeForVendor:method\"}}vendor{{/crossLink}}\n- {{#crossLink \"Addon/treeForTestSupport:method\"}}test-support{{/crossLink}}\n- {{#crossLink \"Addon/treeForAddonTestSupport:method\"}}addon-test-support{{/crossLink}}\n- {{#crossLink \"Addon/treeForPublic:method\"}}public{{/crossLink}}\n\n#### Uses:\n\n- manipulating trees at build time", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeFor", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 618, + "access": "private", + "tagname": "", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + } + ], + "itemtype": "method", + "name": "_treeFor", + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 640, + "description": "Calculates a cacheKey for the given treeType. It is expected to return a\ncache key allowing multiple builds of the same tree to simply return the\noriginal tree (preventing duplicate work). If it returns null / undefined\nthe tree in question will opt out of this caching system.\n\nThis method is invoked prior to calling treeFor with the same tree name.\n\nYou should override this method if you implement custom treeFor or treeFor*\nmethods, which cause addons to opt-out of this caching.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "cacheKeyForTree", + "params": [ + { + "name": "treeType", + "description": "", + "type": "String" + } + ], + "return": { + "description": "cacheKey", + "type": "String" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 682, + "description": "This method climbs up the hierarchy of addons\nup to the host application.\n\nThis prevents previous addons (prior to `this.import`, ca 2.7.0)\nto break at importing assets when they are used nested in other addons.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_findHost", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 705, + "description": "This method is called when the addon is included in a build. You\nwould typically use this hook to perform additional imports\n\n#### Uses:\n\n- including vendor files\n- setting configuration options\n\n*Note:* Any options set in the consuming application will override the addon.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "included", + "params": [ + { + "name": "parent", + "description": "The parent object which included this addon", + "type": "EmberApp|EmberAddon" + } + ], + "example": [ + "\n```js\nincluded(parent) {\n this._super.included.apply(this, arguments);\n this.import(somePath);\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 738, + "description": "Imports an asset into this addon.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "import", + "params": [ + { + "name": "asset", + "description": "Either a path to the asset or an object with environment names and paths as key-value pairs.", + "type": "Object|String" + }, + { + "name": "options", + "description": "Options object", + "type": "Object", + "optional": true, + "props": [ + { + "name": "type", + "description": "Either 'vendor' or 'test', defaults to 'vendor'", + "type": "String", + "optional": true + }, + { + "name": "prepend", + "description": "Whether or not this asset should be prepended, defaults to false", + "type": "Boolean", + "optional": true + }, + { + "name": "destDir", + "description": "Destination directory, defaults to the name of the directory the asset is in", + "type": "String", + "optional": true + } + ] + } + ], + "since": "2.7.0", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 758, + "description": "Returns the tree for all app files", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForApp", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "App file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 770, + "description": "Returns the tree for all template files", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForTemplates", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Template file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 782, + "description": "Returns the tree for this addon's templates", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForAddonTemplates", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Addon Template file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 794, + "description": "Returns a tree for this addon", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForAddon", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Addon file tree", + "type": "Tree" + }, + "example": [ + "\n```js\ntreeForAddon() {\n let emberVersion = new VersionChecker(this.project).for('ember-source');\n let shouldUsePolyfill = emberVersion.lt('4.5.0-alpha.4');\n\n if (shouldUsePolyfill) {\n return this._super.treeForAddon.apply(this, arguments);\n }\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 825, + "description": "Returns the tree for all style files", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForStyles", + "params": [ + { + "name": "tree", + "description": "The tree to process, usually `app/styles/` in the addon.", + "type": "Tree" + } + ], + "return": { + "description": "The return tree has the same contents as the input tree, but is moved so that the `app/styles/` path is preserved.", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 844, + "description": "Returns the tree for all vendor files", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForVendor", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Vendor file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 856, + "description": "Returns the tree for all test support files", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForTestSupport", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Test Support file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 868, + "description": "Returns the tree for all public files", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForPublic", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Public file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 888, + "description": "Returns the tree for all test files namespaced to a given addon.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForAddonTestSupport", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 922, + "description": "Runs the styles tree through preprocessors.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "compileStyles", + "params": [ + { + "name": "addonStylesTree", + "description": "Styles file tree", + "type": "Tree" + } + ], + "return": { + "description": "Compiled styles tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 947, + "description": "Looks in the addon/ and addon/templates trees to determine if template files\nexist that need to be precompiled.\n\nThis is executed once when building, but not on rebuilds.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldCompileTemplates", + "return": { + "description": "indicates if templates need to be compiled for this addon", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 961, + "description": "Looks in the addon/ and addon/templates trees to determine if template files\nexist in the pods format that need to be precompiled.\n\nThis is executed once when building, but not on rebuilds.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_shouldCompilePodTemplates", + "return": { + "description": "indicates if pod based templates need to be compiled for this addon", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1079, + "description": "Runs the templates tree through preprocessors.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "compileTemplates", + "params": [ + { + "name": "tree", + "description": "Templates file tree", + "type": "Tree" + } + ], + "return": { + "description": "Compiled templates tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1113, + "description": "Runs the addon tree through preprocessors.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "compileAddon", + "params": [ + { + "name": "tree", + "description": "Addon file tree", + "type": "Tree" + } + ], + "return": { + "description": "Compiled addon tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1157, + "description": "Returns a tree with JSHint output for all addon JS.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "jshintAddonTree", + "return": { + "description": "Tree with JShint output (tests)", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1223, + "description": "Preprocesses a javascript tree.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "preprocessJs", + "return": { + "description": "Preprocessed javascript", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1234, + "description": "Returns a tree with all javascript for this addon.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processedAddonJsFiles", + "params": [ + { + "name": "the", + "description": "tree to preprocess", + "type": "Tree" + } + ], + "return": { + "description": "Processed javascript file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1263, + "description": "Returns the module name for this addon.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "moduleName", + "return": { + "description": "module name", + "type": "String" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1278, + "description": "Returns the path for addon blueprints.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "blueprintsPath", + "return": { + "description": "The path for blueprints", + "type": "String" + }, + "example": [ + "\n- [ember-cli-coffeescript](https://github.com/kimroen/ember-cli-coffeescript/blob/v1.13.2/index.js#L26)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1296, + "description": "Augments the application's configuration settings.\n\nObject returned from this hook is merged with the application's configuration object.\n\nApplication's configuration always take precedence.\n\n#### Uses:\n\n- Modifying configuration options (see list of defaults [here](https://github.com/ember-cli/ember-cli/blob/v2.4.3/lib/broccoli/ember-app.js#L163))\n - For example\n - `storeConfigInMeta`\n - et, al", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "config", + "params": [ + { + "name": "env", + "description": "Name of current environment (ie \"development\")", + "type": "String" + }, + { + "name": "baseConfig", + "description": "Initial application configuration", + "type": "Object" + } + ], + "return": { + "description": "Configuration object to be merged with application configuration.", + "type": "Object" + }, + "example": [ + "\n```js\nconfig(environment, appConfig) {\n return {\n someAddonDefault: \"foo\"\n };\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1335, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "return": { + "description": "The addon's dependencies based on the addon's package.json", + "type": "Object" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1345, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "isEnabled", + "return": { + "description": "Whether or not this addon is enabled", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1354, + "description": "Can be used to exclude addons from being added as a child addon.\n\n#### Uses:\n\n- Abstract away multiple addons while only including one into the built assets", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "shouldIncludeChildAddon", + "params": [ + { + "name": "childAddon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "Whether or not a child addon is supposed to be included", + "type": "Boolean" + }, + "example": [ + "\n```js\nshouldIncludeChildAddon(childAddon) {\n if(childAddon.name === 'ember-cli-some-legacy-select-component') {\n return this.options.legacyMode;\n } else if(childAddon.name === 'ember-cli-awesome-new-select-component') {\n return !this.options.legacyMode;\n } else {\n return this._super.shouldIncludeChildAddon.apply(this, arguments);\n }\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1386, + "description": "Allows the specification of custom addon commands.\nExpects you to return an object whose key is the name of the command and value is the command instance..\n\nThis function is not implemented by default\n\n#### Uses:\n\n- Include custom commands into consuming application", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "includedCommands", + "return": { + "description": "An object with included commands", + "type": "Object" + }, + "example": [ + "\n```js\nincludedCommands() {\n return {\n 'do-foo': require('./lib/commands/foo')\n };\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1410, + "description": "Allows addons to define a custom transform function that other addons and app can use when using `app.import`.\n\nThis function is not implemented by default\n\n#### Uses:\n\n- An app or addons want to transform a dependency that is being imported using `app.import`.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "importTransforms", + "return": { + "description": "An object with custom transforms", + "type": "Object" + }, + "example": [ + "\n```js\nimportTransforms() {\n return {\n 'my-custom-transform': function(tree, options) {\n // transform the incoming tree and return the updated tree\n }\n };\n}\n```\n\nAlternatively, if you want to process `options` before being passed into the custom transform function, use:", + "\n```js\nimportTransforms() {\n return {\n 'my-custom-transform': {\n transform: function(tree, options) {\n // transform the incoming tree and return the updated tree\n },\n processOptions: function(assetPath, entry, options) {\n // process your options\n\n return options\n }\n };\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1454, + "description": "Pre-process a tree\n\n#### Uses:\n\n- removing / adding files from the build.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "preprocessTree", + "params": [ + { + "name": "type", + "description": "What kind of tree (eg. 'js', 'css', 'template')", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1468, + "description": "Post-process a tree", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "postprocessTree", + "params": [ + { + "name": "type", + "description": "What kind of tree (eg. 'js', 'css', 'template')", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "example": [ + "\n- [broccoli-asset-rev](https://github.com/rickharrison/broccoli-asset-rev/blob/c82c3580855554a31f7d6600b866aecf69cdaa6d/index.js#L29)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1481, + "description": "This hook allows you to make changes to the express server run by ember-cli.\n\nIt's passed a `startOptions` object which contains:\n- `app` Express server instance\n- `options` A hash with:\n - `project` Current {{#crossLink \"Project\"}}project{{/crossLink}}\n - `watcher`\n - `environment`\n\nThis function is not implemented by default\n\n#### Uses:\n\n- Tacking on headers to each request\n- Modifying the request object\n\n*Note:* that this should only be used in development, and if you need the same behavior in production you'll\nneed to configure your server.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "serverMiddleware", + "params": [ + { + "name": "startOptions", + "description": "Express server start options", + "type": "Object" + } + ], + "example": [ + "\n```js\nserverMiddleware(startOptions) {\n var app = startOptions.app;\n\n app.use(function(req, res, next) {\n // Some middleware\n });\n}\n```\n\n- [ember-cli-content-security-policy](https://github.com/rwjblue/ember-cli-content-security-policy/blob/v0.5.0/index.js#L84)\n- [history-support-addon](https://github.com/ember-cli/ember-cli/blob/v2.4.3/lib/tasks/server/middleware/history-support/index.js#L25)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1520, + "description": "This hook allows you to make changes to the express server run by testem.\n\nThis function is not implemented by default\n\n#### Uses:\n\n- Adding custom test-specific endpoints\n- Manipulating HTTP requests in tests", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "testemMiddleware", + "params": [ + { + "name": "app", + "description": "the express app instance", + "type": "Object" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1535, + "description": "This hook is called before a build takes place.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "preBuild", + "params": [ + { + "name": "result", + "description": "Build object", + "type": "Object" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1543, + "description": "This hook is called after a build is complete.\n\nIt's passed a `result` object which contains:\n- `directory` Path to build output\n\n#### Uses:\n\n- Slow tree listing\n- May be used to manipulate your project after build has happened", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "postBuild", + "params": [ + { + "name": "result", + "description": "Build result object", + "type": "Object" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1559, + "description": "This hook is called after the build has been processed and the build files have been copied to the output directory\n\nIt's passed a `result` object which contains:\n- `directory` Path to build output", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "outputReady", + "params": [ + { + "name": "result", + "description": "Build result object", + "type": "Object" + } + ], + "example": [ + "\n- Opportunity to symlink or copy files elsewhere.\n- [ember-cli-rails-addon](https://github.com/rondale-sc/ember-cli-rails-addon/blob/v0.7.0/index.js#L45)\n - In this case we are using this in tandem with a rails middleware to remove a lock file.\n This allows our ruby gem to block incoming requests until after the build happens reliably." + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1576, + "description": "This hook is called when an error occurs during the preBuild, postBuild or outputReady hooks\nfor addons, or when the build fails\n\n#### Uses:\n\n- Custom error handling during build process", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "buildError", + "params": [ + { + "name": "error", + "description": "The error that was caught during the processes listed above", + "type": "Error" + } + ], + "example": [ + "\n- [ember-cli-rails-addon](https://github.com/rondale-sc/ember-cli-rails-addon/blob/v0.7.0/index.js#L11)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1592, + "description": "Used to add preprocessors to the preprocessor registry. This is often used by addons like [ember-cli-htmlbars](https://github.com/ember-cli/ember-cli-htmlbars)\nand [ember-cli-coffeescript](https://github.com/kimroen/ember-cli-coffeescript) to add a `template` or `js` preprocessor to the registry.\n\n**Uses:**\n\n- Adding preprocessors to the registry.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "setupPreprocessorRegistry", + "params": [ + { + "name": "type", + "description": "either `\"self\"` or `\"parent\"`", + "type": "String" + }, + { + "name": "registry", + "description": "the registry to be set up" + } + ], + "example": [ + "\n```js\nsetupPreprocessorRegistry(type, registry) {\n // ensure that broccoli-ember-hbs-template-compiler is not processing hbs files\n registry.remove('template', 'broccoli-ember-hbs-template-compiler');\n\n registry.add('template', {\n name: 'ember-cli-htmlbars',\n ext: 'hbs',\n _addon: this,\n toTree(tree) {\n var htmlbarsOptions = this._addon.htmlbarsOptions();\n return htmlbarsCompile(tree, htmlbarsOptions);\n },\n\n precompile(string) {\n var htmlbarsOptions = this._addon.htmlbarsOptions();\n var templateCompiler = htmlbarsOptions.templateCompiler;\n return utils.template(templateCompiler, string);\n }\n });\n\n if (type === 'parent') {\n this.parentRegistry = registry;\n }\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1634, + "description": "Return value is merged into the **tests** tree. This lets you inject\nlinter output as test results.\n\n**Uses:**\n\n- JSHint\n- any other form of automated test generation that turns code into tests", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "lintTree", + "params": [ + { + "name": "treeType", + "description": "`app`, `tests`, `templates`, or `addon`", + "type": "String" + }, + { + "name": "tree", + "description": "tree of files (JavaScript files for `app`, `tests`, and `addon` types)", + "type": "Tree" + } + ], + "example": [ + "\n- [ember-cli-qunit](https://github.com/ember-cli/ember-cli-qunit/blob/v1.4.1/index.js#L206)\n- [ember-cli-mocha](https://github.com/ef4/ember-cli-mocha/blob/66803037fe203b24e96dea83a2bd91de48b842e1/index.js#L101)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1653, + "description": "Allow addons to implement contentFor method to add string output into the associated `{{content-for 'foo'}}` section in `index.html`\n\n**Uses:**\n\n- For instance, to inject analytics code into `index.html`", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "contentFor", + "params": [ + { + "name": "type", + "description": "" + }, + { + "name": "config", + "description": "" + }, + { + "name": "content", + "description": "" + } + ], + "example": [ + "\n- [ember-cli-google-analytics](https://github.com/pgrippi/ember-cli-google-analytics/blob/v1.5.0/index.js#L79)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 198, + "description": "Indicates whether or not a blueprint is a candidate for automatic transpilation from TS to JS.\nThis property could be false in the case that the blueprint is written in JS and is not intended\nto work with TS at all, OR in the case that the blueprint is written in TS and the author does\nnot intend to support transpilation to JS.", + "access": "public", + "tagname": "", + "itemtype": "property", + "name": "shouldTransformTypeScript", + "type": "Boolean", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 219, + "description": "Process the options object coming from either\nthe `init`, `install` or `uninstall` hook.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_processOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 235, + "description": "Hook to specify the path to the blueprint's files. By default this is\n`path.join(this.path, 'files)`.\n\nThis can be used to customize which set of files to install based on options\nor environmental variables. It defaults to the `files` directory within the\nblueprint's folder.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "filesPath", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "Path to the blueprints files directory.", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 252, + "description": "Used to retrieve files for blueprint.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "files", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "Contents of the blueprint's files directory", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 275, + "itemtype": "method", + "name": "srcPath", + "params": [ + { + "name": "file", + "description": "", + "type": "String" + } + ], + "return": { + "description": "Resolved path to the file", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 284, + "description": "Hook for normalizing entity name\n\nUse the `normalizeEntityName` hook to add custom normalization and\nvalidation of the provided entity name. The default hook does not\nmake any changes to the entity name, but makes sure an entity name\nis present and that it doesn't have a trailing slash.\n\nThis hook receives the entity name as its first argument. The string\nreturned by this hook will be used as the new entity name.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "normalizeEntityName", + "params": [ + { + "name": "entityName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 304, + "description": "Write a status and message to the UI", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_writeStatusToUI", + "params": [ + { + "name": "chalkColor", + "description": "", + "type": "Function" + }, + { + "name": "keyword", + "description": "", + "type": "String" + }, + { + "name": "message", + "description": "", + "type": "String" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 318, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_writeFile", + "params": [ + { + "name": "info", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 330, + "description": "Actions lookup", + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "_actions", + "type": "Object", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 368, + "description": "Calls an action.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_commit", + "params": [ + { + "name": "result", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "throws": { + "description": "Action doesn't exist.", + "type": "Error" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 386, + "description": "Prints warning for pod unsupported.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkForPod", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 403, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_normalizeEntityName", + "params": [ + { + "name": "entity", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 414, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkInRepoAddonExists", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 443, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_process", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "beforeHook", + "description": "", + "type": "Function" + }, + { + "name": "process", + "description": "", + "type": "Function" + }, + { + "name": "afterHook", + "description": "", + "type": "Function" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 469, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldConvertToJS", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "fileInfo", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 523, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "convertToJS", + "params": [ + { + "name": "fileInfo", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 543, + "itemtype": "method", + "name": "install", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 570, + "itemtype": "method", + "name": "uninstall", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 592, + "description": "Hook for running operations before install.", + "itemtype": "method", + "name": "beforeInstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 599, + "description": "Hook for running operations after install.", + "itemtype": "method", + "name": "afterInstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 606, + "description": "Hook for running operations before uninstall.", + "itemtype": "method", + "name": "beforeUninstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 613, + "description": "Hook for running operations after uninstall.", + "itemtype": "method", + "name": "afterUninstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 622, + "description": "Hook for adding custom template variables.\n\nWhen the following is called on the command line:\n\n```sh\nember generate controller foo --type=array --dry-run isAdmin:true\n```\n\nThe object passed to `locals` looks like this:\n\n```js\n{\n entity: {\n name: 'foo',\n options: {\n isAdmin: true\n }\n },\n dryRun: true\n type: \"array\"\n // more keys\n}\n```\n\nThis hook must return an object or a Promise which resolves to an object.\nThe resolved object will be merged with the aforementioned default locals.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "locals", + "params": [ + { + "name": "options", + "description": "General and entity-specific options", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object|Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 657, + "description": "Hook to add additional or override existing fileMap tokens.\n\nUse `fileMapTokens` to add custom fileMap tokens for use\nin the `mapFile` method. The hook must return an object in the\nfollowing pattern:\n\n```js\n{\n __token__(options){\n // logic to determine value goes here\n return 'value';\n }\n}\n```\n\nIt will be merged with the default `fileMapTokens`, and can be used\nto override any of the default tokens.\n\nTokens are used in the files folder (see `files`), and get replaced with\nvalues when the `mapFile` method is called.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "fileMapTokens", + "return": { + "description": "", + "type": "Object|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 685, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_fileMapTokens", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 741, + "description": "Used to generate fileMap tokens for mapFile.", + "itemtype": "method", + "name": "generateFileMap", + "params": [ + { + "name": "fileMapVariables", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 756, + "itemtype": "method", + "name": "buildFileInfo", + "params": [ + { + "name": "destPath", + "description": "", + "type": "Function" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + }, + { + "name": "file", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "FileInfo" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 777, + "itemtype": "method", + "name": "isUpdate", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 787, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getFileInfos", + "params": [ + { + "name": "files", + "description": "", + "type": "Array" + }, + { + "name": "intoDir", + "description": "", + "type": "String" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "file infos", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 799, + "description": "Add update files to ignored files or reset them", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_ignoreUpdateFiles", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 812, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getFilesForInstall", + "params": [ + { + "name": "targetFiles", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "files", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 825, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkForNoMatch", + "params": [ + { + "name": "fileInfos", + "description": "", + "type": "Array" + }, + { + "name": "rawArgs", + "description": "", + "type": "String" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 839, + "itemtype": "method", + "name": "processFiles", + "params": [ + { + "name": "intoDir", + "description": "", + "type": "String" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 872, + "itemtype": "method", + "name": "processFilesForUninstall", + "params": [ + { + "name": "intoDir", + "description": "", + "type": "String" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 923, + "itemtype": "method", + "name": "mapFile", + "params": [ + { + "name": "file", + "description": "", + "type": "String" + }, + { + "name": "locals", + "description": "" + } + ], + "return": { + "description": "", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 940, + "description": "Looks for a __root__ token in the files folder. Must be present for\nthe blueprint to support addon tokens. The `server`, `blueprints`, and `test`", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "supportsAddon", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 952, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_generateFileMapVariables", + "params": [ + { + "name": "moduleName", + "description": "", + "type": "String" + }, + { + "name": "locals", + "description": "" + }, + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 982, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_locals", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1015, + "description": "Used to add a package to the project's `package.json`.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.", + "itemtype": "method", + "name": "addPackageToProject", + "params": [ + { + "name": "packageName", + "description": "", + "type": "String" + }, + { + "name": "target", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1037, + "description": "Used to add multiple packages to the project's `package.json`.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.\n\nExpects each array item to be an object with a `name`. Each object\nmay optionally have a `target` to specify a specific version.", + "itemtype": "method", + "name": "addPackagesToProject", + "params": [ + { + "name": "packages", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "example": [ + "\n```js\nthis.addPackagesToProject([\n { name: 'lodash' },\n { name: 'moment', target: '^2.17.0' },\n]);\n```" + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1086, + "description": "Used to remove a package from the project's `package.json`.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that any package conflicts can be resolved before the\naddon is used.", + "itemtype": "method", + "name": "removePackageFromProject", + "params": [ + { + "name": "packageName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1103, + "description": "Used to remove multiple packages from the project's `package.json`.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that any package conflicts can be resolved before the\naddon is used.\n\nExpects each array item to be an object with a `name` property.", + "itemtype": "method", + "name": "removePackagesFromProject", + "params": [ + { + "name": "packages", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1144, + "description": "Used to add an addon to the project's `package.json` and run it's\n`defaultBlueprint` if it provides one.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.", + "itemtype": "method", + "name": "addAddonToProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1164, + "description": "Used to add multiple addons to the project's `package.json` and run their\n`defaultBlueprint` if they provide one.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.", + "itemtype": "method", + "name": "addAddonsToProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1241, + "description": "Used to retrieve a task with the given name. Passes the new task\nthe standard information available (like `ui`, `analytics`, `project`, etc).", + "itemtype": "method", + "name": "taskFor", + "params": [ + { + "name": "dasherizedName", + "description": "" + } + ], + "access": "public", + "tagname": "", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1259, + "description": "Inserts the given content into a file. If the `contentsToInsert` string is already\npresent in the current contents, the file will not be changed unless `force` option\nis passed.\n\nIf `options.before` is specified, `contentsToInsert` will be inserted before\nthe first instance of that string. If `options.after` is specified, the\ncontents will be inserted after the first instance of that string.\nIf the string specified by options.before or options.after is not in the file,\nno change will be made.\n\nIf neither `options.before` nor `options.after` are present, `contentsToInsert`\nwill be inserted at the end of the file.\n\nExample:\n```\n// app/router.js\nRouter.map(function () {\n});\n```\n\n```\ninsertIntoFile('app/router.js', ' this.route(\"admin\");', {\n after: 'Router.map(function () {' + EOL\n}).then(function() {\n // file has been inserted into!\n});\n\n\n```\n\n```\n// app/router.js\nRouter.map(function () {\n this.route(\"admin\");\n});\n```", + "itemtype": "method", + "name": "insertIntoFile", + "params": [ + { + "name": "pathRelativeToProjectRoot", + "description": "", + "type": "String" + }, + { + "name": "contentsToInsert", + "description": "", + "type": "String" + }, + { + "name": "providedOptions", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1363, + "description": "Used to retrieve a blueprint with the given name.", + "itemtype": "method", + "name": "lookupBlueprint", + "params": [ + { + "name": "dasherizedName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Blueprint" + }, + "access": "public", + "tagname": "", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1380, + "static": 1, + "itemtype": "method", + "name": "lookup", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object", + "optional": true, + "props": [ + { + "name": "paths", + "description": "Extra paths to search for blueprints", + "type": "Array", + "optional": true + }, + { + "name": "ignoreMissing", + "description": "Throw a `SilentError` if a\n matching Blueprint could not be found", + "type": "Boolean", + "optional": true + }, + { + "name": "blueprintOptions", + "description": "Options object that will be passed\n along to the Blueprint instance on creation.", + "type": "Object", + "optional": true + } + ] + } + ], + "return": { + "description": "", + "type": "Blueprint" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1421, + "description": "Loads a blueprint from given path.", + "static": 1, + "itemtype": "method", + "name": "load", + "params": [ + { + "name": "blueprintPath", + "description": "", + "type": "String" + }, + { + "name": "blueprintOptions", + "description": "", + "type": "Object", + "optional": true + } + ], + "return": { + "description": "blueprint instance", + "type": "Blueprint" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1449, + "static": 1, + "itemtype": "method", + "name": "list", + "params": [ + { + "name": "options", + "description": "", + "type": "Object", + "optional": true, + "props": [ + { + "name": "paths", + "description": "Extra paths to search for blueprints", + "type": "Array", + "optional": true + } + ] + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1498, + "description": "Files that are renamed when installed into the target directory.\nThis allows including files in the blueprint that would have an effect\non another process, such as a file named `.gitignore`.\n\nThe keys are the filenames used in the files folder.\nThe values are the filenames used in the target directory.", + "static": 1, + "itemtype": "property", + "name": "renamedFiles", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1513, + "static": 1, + "itemtype": "property", + "name": "ignoredFiles", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1519, + "static": 1, + "itemtype": "property", + "name": "ignoredUpdateFiles", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1525, + "static": 1, + "itemtype": "property", + "name": "defaultLookupPaths", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1533, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "prepareConfirm", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1546, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "markIdenticalToBeSkipped", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1557, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "markToBeRemoved", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1566, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "gatherConfirmationMessages", + "params": [ + { + "name": "collection", + "description": "", + "type": "Array" + }, + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1580, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isIgnored", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1592, + "description": "Combines provided lookup paths with defaults and removes\nduplicates.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "generateLookupPaths", + "params": [ + { + "name": "lookupPaths", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1607, + "description": "Looks for a __path__ token in the files folder. Must be present for\nthe blueprint to support pod tokens.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "hasPathToken", + "params": [ + { + "name": "files", + "description": "", + "type": "Files" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1646, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isValidFile", + "params": [ + { + "name": "fileInfo", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1660, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isFilePath", + "params": [ + { + "name": "fileInfo", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1670, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "dir", + "return": { + "description": "list of files in the given directory or and empty array if no directory exists", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1683, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getDetailedHelpPath", + "params": [ + { + "name": "thisPath", + "description": "", + "type": "String" + } + ], + "return": { + "description": "help path", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/builder.js", + "line": 39, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "readBuildFile", + "params": [ + { + "name": "path", + "description": "The file path to read the build file from" + } + ], + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 60, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "setupBroccoliBuilder", + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 98, + "description": "Determine whether the output path is safe to delete. If the outputPath\nappears anywhere in the parents of the project root, the build would\ndelete the project directory. In this case return `false`, otherwise\nreturn `true`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "canDeleteOutputPath", + "params": [ + { + "name": "outputPath", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 120, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "copyToOutputPath", + "params": [ + { + "name": "inputPath", + "description": "", + "type": "String" + } + ], + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 144, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processAddonBuildSteps", + "params": [ + { + "name": "buildStep", + "description": "" + }, + { + "name": "results", + "description": "" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 169, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "build", + "return": { + "description": "", + "type": "Promise" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 244, + "description": "Delegates to the `cleanup` method of the wrapped Broccoli builder.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "cleanup", + "return": { + "description": "", + "type": "Promise" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 276, + "description": "Checks for issues in the environment that can't easily be detected until\nafter a build and issues any necessary deprecation warnings.\n\n- check for old (pre 0.1.4) versions of heimdalljs", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "checkForPostBuildEnvironmentIssues", + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 51, + "description": "The description of what this command does.", + "final": 1, + "itemtype": "property", + "name": "description", + "type": "String", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 60, + "description": "Does this command work everywhere or just inside or outside of projects.\n\nPossible values:\n\n- `insideProject`\n- `outsideProject`\n- `everywhere`", + "final": 1, + "itemtype": "property", + "name": "works", + "type": "String", + "default": "`insideProject`", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 81, + "final": 1, + "itemtype": "property", + "name": "isWithinProject", + "type": "Boolean", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 88, + "description": "The name of the command.", + "final": 1, + "itemtype": "property", + "name": "name", + "type": "String", + "example": [ + " `new` or `generate`" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 100, + "description": "An array of aliases for the command", + "final": 1, + "itemtype": "property", + "name": "aliases", + "type": "Array", + "example": [ + " `['g']` for the `generate` command" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 117, + "description": "An array of available options for the command", + "final": 1, + "itemtype": "property", + "name": "availableOptions", + "type": "Array", + "example": [ + "\n```js\navailableOptions: [\n { name: 'dry-run', type: Boolean, default: false, aliases: ['d'] },\n { name: 'verbose', type: Boolean, default: false, aliases: ['v'] },\n { name: 'blueprint', type: String, default: 'app', aliases: ['b'] },\n { name: 'skip-npm', type: Boolean, default: false, aliases: ['sn'] },\n { name: 'skip-git', type: Boolean, default: false, aliases: ['sg'] },\n { name: 'directory', type: String , aliases: ['dir'] }\n],\n```" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 137, + "description": "An array of anonymous options for the command", + "final": 1, + "itemtype": "property", + "name": "anonymousOptions", + "type": "Array", + "example": [ + "\n```js\nanonymousOptions: [\n ''\n],\n```" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 153, + "description": "Registers options with command. This method provides the ability to extend or override command options.\nExpects an object containing anonymousOptions or availableOptions, which it will then merge with\nexisting availableOptions before building the optionsAliases which are used to define shorthands.", + "itemtype": "method", + "name": "registerOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 179, + "description": "Called when command is interrupted from outside, e.g. ctrl+C or process kill\nCan be used to cleanup artifacts produced by command and control process exit code", + "itemtype": "method", + "name": "onInterrupt", + "return": { + "description": "if rejected promise then result of promise will be used as an exit code", + "type": "Promise|undefined" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 207, + "description": "Looks up for the task and runs\nIt also keeps the reference for the current active task\nKeeping reference for the current task allows to cleanup task on interruption", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "runTask", + "throws": { + "description": "on attempt to run concurrent task", + "type": "Error" + }, + "params": [ + { + "name": "name", + "description": "Task name from the tasks registry. Should be capitalized", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "Task run", + "type": "Promise" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 248, + "description": "Hook for extending a command before it is run in the cli.run command.\nMost common use case would be to extend availableOptions.", + "itemtype": "method", + "name": "beforeRun", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 256, + "itemtype": "method", + "name": "validateAndRun", + "return": { + "description": "", + "type": "Promise" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 321, + "description": "Reports if the given command has a command line option by a given name", + "itemtype": "method", + "name": "hasOption", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 337, + "description": "Merges any options with duplicate keys in the availableOptions array.\nUsed primarily by registerOptions.", + "itemtype": "method", + "name": "mergeDuplicateOption", + "params": [ + { + "name": "key", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 372, + "description": "Normalizes option, filling in implicit values", + "itemtype": "method", + "name": "normalizeOption", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 384, + "description": "Assigns option", + "itemtype": "method", + "name": "assignOption", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + }, + { + "name": "parsedOptions", + "description": "", + "type": "Object" + }, + { + "name": "commandOptions", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 417, + "description": "Validates option", + "itemtype": "method", + "name": "validateOption", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 443, + "description": "Parses alias for an option and adds it to optionsAliases", + "itemtype": "method", + "name": "parseAlias", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + }, + { + "name": "alias", + "description": "", + "type": "Object|String" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 488, + "itemtype": "method", + "name": "assignAlias", + "params": [ + { + "name": "option", + "description": "" + }, + { + "name": "alias", + "description": "" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 503, + "description": "Validates alias value", + "itemtype": "method", + "name": "validateAlias", + "params": [ + { + "name": "alias", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 535, + "description": "Parses command arguments and processes", + "itemtype": "method", + "name": "parseArgs", + "params": [ + { + "name": "commandArgs", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object|null" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 591, + "itemtype": "method", + "name": "run", + "params": [ + { + "name": "commandArgs", + "description": "" + } + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 601, + "description": "Prints basic help for the command.\n\nBasic help looks like this:\n\n ember generate \n Generates new code from blueprints\n aliases: g\n --dry-run (Default: false)\n --verbose (Default: false)\n\nThe default implementation is designed to cover all bases\nbut may be overridden if necessary.", + "itemtype": "method", + "name": "printBasicHelp", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 632, + "description": "Prints detailed help for the command.\n\nThe default implementation is no-op and should be overridden\nfor each command where further help text is required.", + "itemtype": "method", + "name": "printDetailedHelp", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 642, + "itemtype": "method", + "name": "getJson", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 232, + "description": "Indicates whether the host is running on battery power. This can cause\nperformance degredation.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isUsingBattery", + "params": [ + { + "name": "platform", + "description": "The current hardware platform.\n USED FOR TESTING ONLY.", + "type": "String=process.platform" + } + ], + "return": { + "description": "`true` iff the host is running on battery power or\n `false` if not. `null` if the battery status\n cannot be determined.", + "type": "Null|Boolean" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 266, + "description": "Determines the amount of swap/virtual memory currently in use.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "memorySwapUsed", + "params": [ + { + "name": "platform", + "description": "The current hardware platform.\n USED FOR TESTING ONLY.", + "type": "String=process.platform" + } + ], + "return": { + "description": "The amount of used swap space, in bytes. `null` if\n the used swap space cannot be determined.", + "type": "Null|Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 297, + "description": "Determines the total amount of memory available to the host, as from\n`os.totalmem`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "memoryTotal", + "return": { + "description": "The total memory in bytes.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 309, + "description": "Determines the amount of memory currently being used by the current Node\nprocess, as from `process.memoryUsage`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "memoryUsed", + "return": { + "description": "The Resident Set Size, as reported by\n `process.memoryUsage`.", + "type": "Object" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 322, + "description": "Determines the number of logical processors available to the host, as from\n`os.cpus`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processorCount", + "return": { + "description": "The number of logical processors.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 334, + "description": "Determines the average processor load across the system. This is\nexpressed as a fractional number between 0 and the number of logical\nprocessors.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processorLoad", + "params": [ + { + "name": "platform", + "description": "The current hardware platform.\n USED FOR TESTING ONLY.", + "type": "String=process.platform" + } + ], + "return": { + "description": "The one-, five-, and fifteen-minute processor load\n averages.", + "type": "Array" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 358, + "description": "Gets the speed of the host's processors.\n\nIf more than one processor is found, the average of their speeds is taken.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processorSpeed", + "return": { + "description": "The average processor speed in MHz.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 373, + "description": "Determines the time since the host was started, as from `os.uptime`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "uptime", + "return": { + "description": "The number of seconds since the host was started.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 16, + "description": "Given a path (calculated as part of `getHostAddonInfo`), return the correct\n\"bundle host\". A bundle host is considered the project or lazy engine.\n\nFor example, given the following package structure:\n\n --Project--\n / \\\n / \\\nLazy Engine A \\\n Addon A\n |\n |\n Lazy Engine B\n / \\\n / \\\n Lazy Engine A Lazy Engine C\n\nThe provided paths for lazy engine A would look like:\n\n- [Project]\n- [Project, Addon A, Lazy Engine B]\n\nFor this project structure, this function would return [Project, [Project]]\n\nSimilarly, given the following project structure:\n\n --Project--\n / \\\n / \\\n Lazy Engine A \\\n / Lazy Engine B\n / |\n / |\n Lazy Engine C Lazy Engine C\n\nThe provided paths for lazy engine C would look like:\n\n- [Project, Lazy Engine A]\n- [Project, Lazy Engine B]\n\nIn this case, the host is the project and would also return [Project, [Project]]", + "itemtype": "method", + "name": "_findNearestBundleHost", + "params": [ + { + "name": "paths", + "description": "The found paths to a given bundle host", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "[PackageInfo, PackageInfo[]]" + }, + "access": "private", + "tagname": "", + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 93, + "description": "Returns a `Set` of package-info objects that a given bundle host is\n_directly_ responsible for bundling (i.e., it excludes other bundle\nhosts/lazy engines when it encounters these)", + "itemtype": "method", + "name": "_getBundledPackageInfos", + "params": [ + { + "name": "pkgInfoToStartAt", + "description": "", + "type": "PackageInfo" + } + ], + "return": { + "description": "", + "type": "Set" + }, + "access": "private", + "tagname": "", + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 147, + "description": "This function intends to return a common host for a bundle host (lazy engine). The root\npackage info should be the starting point (i.e., the project's package info). We do this\nby performing a breadth-first traversal until we find the intended lazy engine (represented\nas a package-info & the 1st argument passed to this function). As part of the traversal, we keep\ntrack of all paths to said engine; then, once we find the intended engine we use this to determine\nthe nearest common host amongst all shortest paths.\n\nSome context:\n\nFor a given engine/bundle host, this finds the lowest common ancestor that is considered a\nhost amongst _all_ engines by the same name in the project.\n\nFor example, given the following package structure:\n\n --Project--\n / \\\n / \\\nLazy Engine A \\\n Addon A\n |\n |\n Lazy Engine B\n / \\\n / \\\n Lazy Engine A Lazy Engine C\n\n- The LCA host for Lazy Engine A is the project\n- The LCA host for Lazy Engine B is the project\n- The LCA host for Lazy Engine C is Lazy Engine B\n\nThis also returns `hostAndAncestorBundledPackageInfos`, which are all bundled addons above a given host:\n\n- `hostAndAncestorBundledPackageInfos` for lazy engine A includes all non-lazy dependencies of its LCA host & above (in this case, just the project)\n- `hostAndAncestorBundledPackageInfos` for lazy engine B includes all non-lazy dependencies of its LCA host & above (in this case, just the project)\n- `hostAndAncestorBundledPackageInfos` for lazy engine C includes non-lazy deps of lazy engine B & non-lazy deps of the project (LCA host & above)\n\nThis is intended to mimic the behavior of `ancestorHostAddons` in `ember-engines`:\nhttps://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/engine-addon.js#L333\n\nUnfortunately, we can't easily repurpose the logic in `ember-engines` since the algorithm has to be different;\nin `ember-engines` we need access to the actual addon instance, however, this is intended to be used _during_\naddon instantiation, so we only have access to package-info objects. In having said this, we _can_ repurpose\nthe `hostPackageInfo` to determine the LCA host; see below `findLCAHost`.", + "itemtype": "method", + "name": "getHostAddonInfo", + "params": [ + { + "name": "packageInfoForLazyEngine", + "description": "", + "type": "PackageInfo" + } + ], + "return": { + "description": "}", + "type": " hostPackageInfo: PackageInfo, hostAndAncestorBundledPackageInfos: Set" + }, + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 270, + "description": "This returns the LCA host for a given engine; we use the associated package info\nto compute this (see `getHostAddonInfo` above); this finds the lowest common ancestor\nthat is considered a host amongst _all_ engines by the same name in the project. This\nfunction is intended to replace the original behavior in `ember-engines`.\n\nFor more info, see the original implementation here:\n\nhttps://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/utils/find-lca-host.js", + "itemtype": "method", + "name": "findLCAHost", + "params": [ + { + "name": "engineInstance", + "description": "", + "type": "EngineAddon" + } + ], + "return": { + "description": "", + "type": "EngineAddon|EmberApp" + }, + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/instantiate-addons.js", + "line": 12, + "description": "Create instances of a set of \"child\" addons for a parent addon or project.", + "itemtype": "method", + "name": "instantiateAddons", + "params": [ + { + "name": "parent", + "description": "an Addon or Project that is the direct containing object of the list\n of children defined in addonPackages.", + "type": "Object" + }, + { + "name": "project", + "description": "the project that contains the parent (so either the addon's project\n if parent is an addon, or the project itself if it is a project). It is possible when\n constructing custom addon instances that the project will actually be undefined--various\n addon tests do this, for example.", + "type": "Project" + }, + { + "name": "a", + "description": "map of addon name (including scope) to an AddonInfo with the name, path and\n 'pkg' object for that addon's package.json). These are what is turned into addons.", + "type": "Object" + } + ], + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 52, + "description": "Set when the `Watcher.detectWatchman` helper method finishes running,\nso that other areas of the system can be aware that watchman is being used.\n\nFor example, this information is used in the broccoli build pipeline to know\nif we can watch additional directories \"cheaply\".\n\nContains `enabled` and `version`.", + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "_watchmanInfo", + "return": { + "description": "", + "type": "Object" + }, + "default": "false", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 154, + "description": "Returns the name from package.json.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "name", + "return": { + "description": "Package name", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 167, + "description": "Returns whether or not this is an Ember CLI project.\nThis checks whether ember-cli is listed in devDependencies.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isEmberCLIProject", + "return": { + "description": "Whether this is an Ember CLI project", + "type": "Boolean" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 179, + "description": "Returns whether or not this is an Ember CLI addon.", + "itemtype": "method", + "name": "isEmberCLIAddon", + "return": { + "description": "Whether or not this is an Ember CLI Addon.", + "type": "Boolean" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 189, + "description": "Returns the path to the configuration.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "configPath", + "return": { + "description": "Configuration path", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 206, + "description": "Loads the configuration for this project and its addons.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "config", + "params": [ + { + "name": "env", + "description": "Environment name", + "type": "String" + } + ], + "return": { + "description": "Merged configuration object", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 225, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "configWithoutCache", + "params": [ + { + "name": "env", + "description": "Environment name", + "type": "String" + } + ], + "return": { + "description": "Merged configuration object", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 244, + "description": "Returns the targets of this project, or the default targets if not present.", + "access": "public", + "tagname": "", + "itemtype": "property", + "name": "targets", + "return": { + "description": "Targets object", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 271, + "description": "Returns the addons configuration.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getAddonsConfig", + "params": [ + { + "name": "env", + "description": "Environment name", + "type": "String" + }, + { + "name": "appConfig", + "description": "Application configuration", + "type": "Object" + } + ], + "return": { + "description": "Merged configuration of all addons", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 294, + "description": "Returns whether or not the given file name is present in this project.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "has", + "params": [ + { + "name": "file", + "description": "File name", + "type": "String" + } + ], + "return": { + "description": "Whether or not the file is present", + "type": "Boolean" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 306, + "description": "Resolves the absolute path to a file synchronously", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "resolveSync", + "params": [ + { + "name": "file", + "description": "File to resolve", + "type": "String" + } + ], + "return": { + "description": "Absolute path to file", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 320, + "description": "Calls `require` on a given module from the context of the project. For\ninstance, an addon may want to require a class from the root project's\nversion of ember-cli.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "require", + "params": [ + { + "name": "file", + "description": "File path or module name", + "type": "String" + } + ], + "return": { + "description": "Imported module", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 335, + "description": "Returns the dependencies from a package.json", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "params": [ + { + "name": "pkg", + "description": "Package object", + "type": "Object", + "optional": true, + "optdefault": "this.pkg" + }, + { + "name": "excludeDevDeps", + "description": "Whether or not development dependencies should be excluded", + "type": "Boolean", + "optional": true, + "optdefault": "false" + } + ], + "return": { + "description": "Dependencies", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 355, + "description": "Provides the list of paths to consult for addons that may be provided\ninternally to this project. Used for middleware addons with built-in support.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "supportedInternalAddonPaths", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 381, + "description": "Discovers all addons for this project and stores their names and\npackage.json contents in this.addonPackages as key-value pairs.\n\nAny packageInfos that we find that are marked as not valid are excluded.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "discoverAddons", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 403, + "description": "Loads and initializes all addons for this project.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "initializeAddons", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 424, + "description": "Returns what commands are made available by addons by inspecting\n`includedCommands` for every addon.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonCommands", + "return": { + "description": "Addon names and command maps as key-value pairs", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 465, + "description": "Execute a given callback for every addon command.\nExample:\n\n```\nproject.eachAddonCommand(function(addonName, commands) {\n console.log('Addon ' + addonName + ' exported the following commands:' + commands.keys().join(', '));\n});\n```", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "eachAddonCommand", + "params": [ + { + "name": "callback", + "description": "[description]", + "type": "Function" + } + ], + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 488, + "description": "Path to the blueprints for this project.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "localBlueprintLookupPath", + "return": { + "description": "Path to blueprints", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 499, + "description": "Returns a list of paths (including addon paths) where blueprints will be looked up.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "blueprintLookupPaths", + "return": { + "description": "List of paths", + "type": "Array" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 517, + "description": "Returns a list of addon paths where blueprints will be looked up.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonBlueprintLookupPaths", + "return": { + "description": "List of paths", + "type": "Array" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 540, + "description": "Reloads package.json of the project. Clears and reloads the packageInfo and\nper-bundle addon cache, too.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "reloadPkg", + "return": { + "description": "Package content", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 568, + "description": "Re-initializes addons.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "reloadAddons", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 581, + "description": "Find an addon by its name", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "findAddonByName", + "params": [ + { + "name": "name", + "description": "Addon name as specified in package.json", + "type": "String" + } + ], + "return": { + "description": "Addon instance", + "type": "Addon" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 595, + "description": "Generate test file contents.\n\nThis method is supposed to be overwritten by test framework addons\nlike `ember-qunit`.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "generateTestFile", + "params": [ + { + "name": "moduleName", + "description": "Name of the test module (e.g. `JSHint`)", + "type": "String" + }, + { + "name": "tests", + "description": "Array of tests with `name`, `passed` and `errorMessage` properties", + "type": "Object[]" + } + ], + "return": { + "description": "The test file content", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 619, + "description": "Returns a new project based on the first `package.json` that is found\nin `pathName`.\n\nIf the above `package.json` specifies `ember-addon.projectRoot`, we load\nthe project based on the relative path between this directory and the\nspecified `projectRoot`.", + "access": "private", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "closestSync", + "params": [ + { + "name": "pathName", + "description": "Path to your project", + "type": "String" + }, + { + "name": "_ui", + "description": "The UI instance to provide to the created Project.", + "type": "UI" + } + ], + "return": { + "description": "Project instance", + "type": "Project" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 670, + "description": "Returns a new project based on the first package.json that is found\nin `pathName`, or the nullProject.\n\nThe nullProject signifies no-project, but abides by the null object pattern", + "access": "private", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "projectOrnullProject", + "params": [ + { + "name": "_ui", + "description": "The UI instance to provide to the created Project.", + "type": "UI" + } + ], + "return": { + "description": "Project instance", + "type": "Project" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 694, + "description": "Returns the project root based on the first package.json that is found", + "static": 1, + "itemtype": "method", + "name": "getProjectRoot", + "return": { + "description": "The project root directory", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/task.js", + "line": 10, + "description": "Interrupt comamd with an exit code\nCalled when the process is interrupted from outside, e.g. CTRL+C or `process.kill()`", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "ServeFilesAddon", + "module": "ember-cli" + }, + { + "file": "lib/tasks/build-watch.js", + "line": 53, + "description": "Exit silently", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "NpmTask", + "module": "ember-cli" + }, + { + "file": "lib/tasks/npm-task.js", + "line": 131, + "description": "This method will determine what package manager (npm or yarn) should be\nused to install the npm dependencies.\n\nSetting `this.useYarn` to `true` or `false` will force the use of yarn\nor npm respectively.\n\nIf `this.useYarn` is not set we check if `yarn.lock` exists and if\n`yarn` is available and in that case set `useYarn` to `true`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "findPackageManager", + "return": { + "description": "", + "type": "Promise" + }, + "class": "NpmTask", + "module": "ember-cli" + }, + { + "file": "lib/tasks/serve.js", + "line": 105, + "description": "Exit silently", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/tasks/test-server.js", + "line": 61, + "description": "Exit silently", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/directory-for-package-name.js", + "line": 5, + "description": "Derive a directory name from a package name.\nTakes scoped packages into account.", + "itemtype": "method", + "name": "directoryForPackageName", + "params": [ + { + "name": "packageName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "Derived directory name.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/ember-app-utils.js", + "line": 7, + "description": "Returns a normalized url given a string.\nReturns an empty string if `null`, `undefined` or an empty string are passed\nin.", + "itemtype": "method", + "name": "normalizeUrl", + "params": [ + { + "name": "Raw", + "description": "url.", + "type": "String" + } + ], + "return": { + "description": "Normalized url.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/ember-app-utils.js", + "line": 24, + "description": "Converts Javascript Object to a string.\nReturns an empty object string representation if a \"falsy\" value is passed\nin.", + "itemtype": "method", + "name": "convertObjectToString", + "params": [ + { + "name": "Any", + "description": "Javascript Object.", + "type": "Object" + } + ], + "return": { + "description": "A string representation of a Javascript Object.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/ember-app-utils.js", + "line": 37, + "description": "Returns the content for a specific type (section) for index.html.\n\n```\n{{content-for \"[type]\"}}\n```\n\nSupported types:\n\n- 'head'\n- 'config-module'\n- 'head-footer'\n- 'test-header-footer'\n- 'body-footer'\n- 'test-body-footer'", + "itemtype": "method", + "name": "contentFor", + "params": [ + { + "name": "config", + "description": "Ember.js application configuration", + "type": "Object" + }, + { + "name": "match", + "description": "Regular expression to match against", + "type": "RegExp" + }, + { + "name": "type", + "description": "Type of content", + "type": "String" + }, + { + "name": "options", + "description": "Settings that control the default content", + "type": "Object", + "props": [ + { + "name": "autoRun", + "description": "Controls whether to bootstrap the\n application or not", + "type": "Boolean" + }, + { + "name": "storeConfigInMeta", + "description": "Controls whether to include the\n contents of config", + "type": "Boolean" + } + ] + } + ], + "return": { + "description": "The content.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/get-package-manager-from-flags.js", + "line": 3, + "description": "Returns the package manager, given an object where folks can *technically*\npass --pnpm --yarn --npm. But using multiple package managers at the\nsame time is not supported (by anything).\n\nThis function defines the priority of package managers, if multiple are present.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getPackageManagerFromFlags", + "params": [ + { + "name": "}", + "description": "options", + "type": " pnpm?: boolean; yarn?: boolean; packageManager?: 'pnpm' | 'yarn' | 'npm'" + } + ], + "return": { + "description": "", + "type": "'pnpm' | 'yarn' | 'npm' | undefined" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/insert-into-file.js", + "line": 6, + "description": "Inserts the given content into a file. If the `contentsToInsert` string is already\npresent in the current contents, the file will not be changed unless `force` option\nis passed.\n\nIf `options.before` is specified, `contentsToInsert` will be inserted before\nthe first instance of that string. If `options.after` is specified, the\ncontents will be inserted after the first instance of that string.\nIf the string specified by options.before or options.after is not in the file,\nno change will be made. Both of these options support regular expressions.\n\nIf neither `options.before` nor `options.after` are present, `contentsToInsert`\nwill be inserted at the end of the file.\n\nIt will create a new file if one doesn't exist, unless you set the `options.create`\noption to `false`.\n\nExample:\n\n```\n// app/router.js\nRouter.map(function () {\n});\n```\n\n```\ninsertIntoFile('app/router.js', ' this.route(\"admin\");', {\n after: 'Router.map(function () {' + EOL\n});\n```\n\n```\n// app/router.js\nRouter.map(function () {\n this.route(\"admin\");\n});\n```", + "itemtype": "method", + "name": "insertIntoFile", + "params": [ + { + "name": "pathRelativeToProjectRoot", + "description": "", + "type": "String" + }, + { + "name": "contentsToInsert", + "description": "", + "type": "String" + }, + { + "name": "providedOptions", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/is-pnpm-project.js", + "line": 5, + "description": "Returns true if and only if the given directory has a pnpm-lock.yaml file or is a child of a\npnpm workspace root.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isPnpmProject", + "params": [ + { + "name": "thePath", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/is-yarn-project.js", + "line": 6, + "description": "Returns true if and only if the given directory has a yarn.lock file or is a child of a\nyarn workspace root.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isYarnProject", + "params": [ + { + "name": "thePath", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/valid-project-name.js", + "line": 5, + "description": "Checks if the string starts with a number.", + "itemtype": "method", + "name": "startsWithNumber", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/valid-project-name.js", + "line": 24, + "description": "Checks if project name is valid.\n\nInvalid names are some of the internal constants that Ember CLI uses, such as\n`app`, `ember`, `ember-cli`, `test`, and `vendor`. Names that start with\nnumbers are considered invalid as well.", + "itemtype": "method", + "name": "validProjectName", + "params": [ + { + "name": "name", + "description": "The name of Ember CLI project", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 47, + "description": "Drops all the interruption handlers and disables an ability to add new one\n\nNote: We don't call `captureExit.releaseExit() here.\nIn some rare scenarios it can lead to the hard to debug issues.\nsee: https://github.com/ember-cli/ember-cli/issues/6779#issuecomment-280940358\n\nWe can more or less feel comfortable with a captured exit because it behaves very\nsimilar to the original `exit` except of cases when we need to do cleanup before exit.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "release", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 69, + "description": "Add process interruption handler\n\nWhen the first handler is added then automatically\nsets up process interruption signals listeners", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addHandler", + "params": [ + { + "name": "cb", + "description": "Callback to be called when process interruption fired", + "type": "Function" + } + ], + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 97, + "description": "Remove process interruption handler\n\nIf there are no remaining handlers after removal\nthen clean up all the process interruption signal listeners", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "removeHandler", + "params": [ + { + "name": "cb", + "description": "Callback to be removed", + "type": "Function" + } + ], + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 122, + "description": "Sets up listeners for interruption signals\n\nWhen one of these signals is caught than raise process.exit()\nwhich enforces `capture-exit` to run registered interruption handlers", + "itemtype": "method", + "name": "setupSignalsTrap", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 140, + "description": "Removes interruption signal listeners and tears down capture-exit", + "itemtype": "method", + "name": "teardownSignalsTrap", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 155, + "description": "Suppresses \"Terminate batch job (Y/N)\" confirmation on Windows", + "itemtype": "method", + "name": "trapWindowsSignals", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 38, + "description": "if not windows, will fulfill with:\n `{ windows: false, elevated: null)`\nif windows, and elevated will fulfill with:\n `{ windows: false, elevated: true)`\nif windows, and is NOT elevated will fulfill with:\n `{ windows: false, elevated: false)`\n will include heplful warning, so that users know (if possible) how to\n achieve better windows build performance", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "checkIfSymlinksNeedToBeEnabled", + "return": { + "description": "Object describing whether we're on windows and if admin rights exist", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 60, + "description": "sets up a WindowsSymlinkChecker\n\nproviding it with defaults for:\n\n* if we are on windows\n* if we can symlink\n* a reference to exec", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_setup", + "params": [ + { + "name": "UI", + "description": "", + "type": "UI" + } + ], + "return": { + "description": "", + "type": "WindowsSymlinkChecker" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 81, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "checkIfSymlinksNeedToBeEnabled", + "return": { + "description": "Object describing whether we're on windows and if admin rights exist", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 104, + "description": "Uses the eon-old command NET SESSION to determine whether or not the\n current user has elevated rights (think sudo, but Windows).", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkForElevatedRights", + "params": [ + { + "name": "ui", + "description": "- ui object used to call writeLine();", + "type": "Object" + } + ], + "return": { + "description": "Object describing whether we're on windows and if admin rights exist", + "type": "Object" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + } + ], + "warnings": [] +} diff --git a/s3-docs/v5.4.0/ember-cli-docs.json b/s3-docs/v5.4.0/ember-cli-docs.json new file mode 100644 index 000000000..6b350f20e --- /dev/null +++ b/s3-docs/v5.4.0/ember-cli-docs.json @@ -0,0 +1,6602 @@ +{ + "project": { + "logo": "https://ember-cli.com/assets/images/ember-cli-logo-small-dark.png", + "name": "ember-cli", + "description": "Command line tool for developing ambitious ember.js apps", + "version": "5.4.0-a905f346b9" + }, + "files": { + "lib/broccoli/default-packager.js": { + "name": "lib/broccoli/default-packager.js", + "modules": {}, + "classes": { + "DefaultPackager": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/broccoli/ember-addon.js": { + "name": "lib/broccoli/ember-addon.js", + "modules": { + "ember-cli": 1 + }, + "classes": { + "EmberAddon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/broccoli/ember-app.js": { + "name": "lib/broccoli/ember-app.js", + "modules": {}, + "classes": { + "EmberApp": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/cli/cli.js": { + "name": "lib/cli/cli.js", + "modules": {}, + "classes": { + "CLI": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/debug/assert.js": { + "name": "lib/debug/assert.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/debug/deprecate.js": { + "name": "lib/debug/deprecate.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/models/package-info-cache/index.js": { + "name": "lib/models/package-info-cache/index.js", + "modules": {}, + "classes": { + "PackageInfoCache": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/package-info-cache/node-modules-list.js": { + "name": "lib/models/package-info-cache/node-modules-list.js", + "modules": {}, + "classes": { + "NodeModulesList": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/package-info-cache/package-info.js": { + "name": "lib/models/package-info-cache/package-info.js", + "modules": {}, + "classes": { + "PackageInfo": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/per-bundle-addon-cache/addon-proxy.js": { + "name": "lib/models/per-bundle-addon-cache/addon-proxy.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/models/per-bundle-addon-cache/index.js": { + "name": "lib/models/per-bundle-addon-cache/index.js", + "modules": {}, + "classes": { + "PerBundleAddonCache {": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/per-bundle-addon-cache/target-instance.js": { + "name": "lib/models/per-bundle-addon-cache/target-instance.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/models/addon-info.js": { + "name": "lib/models/addon-info.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/models/addon.js": { + "name": "lib/models/addon.js", + "modules": {}, + "classes": { + "Addon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/blueprint.js": { + "name": "lib/models/blueprint.js", + "modules": {}, + "classes": { + "Blueprint": 1 + }, + "fors": {}, + "namespaces": { + "Blueprint": 1 + } + }, + "lib/models/builder.js": { + "name": "lib/models/builder.js", + "modules": {}, + "classes": { + "Builder": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/command.js": { + "name": "lib/models/command.js", + "modules": {}, + "classes": { + "Command": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/hardware-info.js": { + "name": "lib/models/hardware-info.js", + "modules": {}, + "classes": {}, + "fors": { + "HardwareInfo": 1 + }, + "namespaces": {} + }, + "lib/models/host-info-cache.js": { + "name": "lib/models/host-info-cache.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/models/instantiate-addons.js": { + "name": "lib/models/instantiate-addons.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/models/instrumentation.js": { + "name": "lib/models/instrumentation.js", + "modules": {}, + "classes": { + "Instrumentation": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/project.js": { + "name": "lib/models/project.js", + "modules": {}, + "classes": { + "Project": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/models/task.js": { + "name": "lib/models/task.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/server/middleware/broccoli-serve-files/index.js": { + "name": "lib/tasks/server/middleware/broccoli-serve-files/index.js", + "modules": {}, + "classes": { + "ServeFilesAddon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/server/middleware/broccoli-watcher/index.js": { + "name": "lib/tasks/server/middleware/broccoli-watcher/index.js", + "modules": {}, + "classes": { + "WatcherAddon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/server/middleware/history-support/index.js": { + "name": "lib/tasks/server/middleware/history-support/index.js", + "modules": {}, + "classes": { + "HistorySupportAddon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/server/middleware/tests-server/index.js": { + "name": "lib/tasks/server/middleware/tests-server/index.js", + "modules": {}, + "classes": { + "TestsServerAddon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/transforms/amd/index.js": { + "name": "lib/tasks/transforms/amd/index.js", + "modules": {}, + "classes": { + "AmdTransformAddon": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/build-watch.js": { + "name": "lib/tasks/build-watch.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/npm-task.js": { + "name": "lib/tasks/npm-task.js", + "modules": {}, + "classes": { + "NpmTask": 1 + }, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/serve.js": { + "name": "lib/tasks/serve.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/tasks/test-server.js": { + "name": "lib/tasks/test-server.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/directory-for-package-name.js": { + "name": "lib/utilities/directory-for-package-name.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/ember-app-utils.js": { + "name": "lib/utilities/ember-app-utils.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/insert-into-file.js": { + "name": "lib/utilities/insert-into-file.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/is-lazy-engine.js": { + "name": "lib/utilities/is-lazy-engine.js", + "modules": { + "is-lazy-engine": 1 + }, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/valid-project-name.js": { + "name": "lib/utilities/valid-project-name.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/will-interrupt-process.js": { + "name": "lib/utilities/will-interrupt-process.js", + "modules": {}, + "classes": {}, + "fors": {}, + "namespaces": {} + }, + "lib/utilities/windows-admin.js": { + "name": "lib/utilities/windows-admin.js", + "modules": {}, + "classes": { + "WindowsSymlinkChecker": 1 + }, + "fors": {}, + "namespaces": {} + } + }, + "modules": { + "ember-cli": { + "name": "ember-cli", + "submodules": {}, + "elements": {}, + "classes": { + "DefaultPackager": 1, + "EmberAddon": 1, + "EmberApp": 1, + "CLI": 1, + "PackageInfoCache": 1, + "NodeModulesList": 1, + "PackageInfo": 1, + "PerBundleAddonCache {": 1, + "Addon": 1, + "Blueprint": 1, + "Builder": 1, + "Command": 1, + "HardwareInfo": 1, + "Instrumentation": 1, + "Project": 1, + "ServeFilesAddon": 1, + "WatcherAddon": 1, + "HistorySupportAddon": 1, + "TestsServerAddon": 1, + "AmdTransformAddon": 1, + "NpmTask": 1 + }, + "fors": { + "HardwareInfo": 1 + }, + "namespaces": { + "Blueprint": 1 + }, + "tag": "module", + "file": "lib/tasks/npm-task.js", + "line": 14, + "access": "private", + "tagname": "", + "is_constructor": 1, + "extends": "Task" + }, + "is-lazy-engine": { + "name": "is-lazy-engine", + "submodules": {}, + "elements": {}, + "classes": { + "WindowsSymlinkChecker": 1 + }, + "fors": {}, + "namespaces": {}, + "tag": "module", + "file": "lib/utilities/windows-admin.js", + "line": 6, + "description": "Indicate if a given object is a constructor function or class or an instance of an Addon.", + "params": [ + { + "name": "addonCtorOrInstance", + "description": "the constructor function/class or an instance of an Addon.", + "type": "Object" + } + ], + "return": { + "description": "True if the addonCtorOrInstance is a lazy engine, False otherwise.", + "type": "Boolean" + } + } + }, + "classes": { + "DefaultPackager": { + "name": "DefaultPackager", + "shortname": "DefaultPackager", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "file": "lib/broccoli/default-packager.js", + "line": 98, + "description": "Responsible for packaging Ember.js application.", + "is_constructor": 1 + }, + "EmberAddon": { + "name": "EmberAddon", + "shortname": "EmberAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/broccoli/ember-addon.js", + "line": 13, + "description": "EmberAddon is used during addon development.", + "extends": "EmberApp", + "is_constructor": 1, + "params": [ + { + "name": "defaults", + "description": "", + "type": "Object", + "optional": true + }, + { + "name": "options", + "description": "Configuration options", + "type": "Object", + "optional": true, + "optdefault": "{}" + } + ] + }, + "EmberApp": { + "name": "EmberApp", + "shortname": "EmberApp", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/broccoli/ember-app.js", + "line": 60, + "description": "EmberApp is the main class Ember CLI uses to manage the Broccoli trees\nfor your application. It is very tightly integrated with Broccoli and has\na `toTree()` method you can use to get the entire tree for your application.\n\nAvailable init options:\n- storeConfigInMeta, defaults to `true`\n- autoRun, defaults to `true`\n- outputPaths, defaults to `{}`\n- minifyCSS, defaults to `{enabled: !!isProduction,options: { relativeTo: 'assets' }}\n- sourcemaps, defaults to `{}`\n- trees, defaults to `{}`\n- vendorFiles, defaults to `{}`\n- addons, defaults to `{ exclude: [], include: [] }`", + "is_constructor": 1, + "params": [ + { + "name": "defaults", + "description": "", + "type": "Object", + "optional": true + }, + { + "name": "options", + "description": "Configuration options", + "type": "Object", + "optional": true, + "optdefault": "{}" + } + ] + }, + "CLI": { + "name": "CLI", + "shortname": "CLI", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/cli/cli.js", + "line": 15, + "access": "private", + "tagname": "", + "is_constructor": 1, + "params": [ + { + "name": "options", + "description": "" + } + ] + }, + "PackageInfoCache": { + "name": "PackageInfoCache", + "shortname": "PackageInfoCache", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/package-info-cache/index.js", + "line": 23, + "description": "Class that stores entries that are either PackageInfo or NodeModulesList objects.\nThe entries are stored in a map keyed by real directory path.", + "access": "public", + "tagname": "" + }, + "NodeModulesList": { + "name": "NodeModulesList", + "shortname": "NodeModulesList", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 7, + "description": "Class that stores information about a node_modules directory (i.e., the\npackages and subdirectories in the directory). It is one of the\ntwo types of entries in a PackageInfoCache. It is only created by the\nPackageInfoCache.", + "access": "public", + "tagname": "" + }, + "PackageInfo": { + "name": "PackageInfo", + "shortname": "PackageInfo", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/package-info-cache/package-info.js", + "line": 50, + "description": "Class that stores information about a single package (directory tree with\na package.json and other data, like and Addon or Project.) It is one of the\ntwo types of entries in a PackageInfoCache. It is only created by the\nPackageInfoCache.", + "access": "public", + "tagname": "" + }, + "PerBundleAddonCache {": { + "name": "PerBundleAddonCache {", + "shortname": "PerBundleAddonCache {", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 46, + "description": "For large applications with many addons (and many instances of each, resulting in\npotentially many millions of addon instances during a build), the build can become\nvery, very slow (tens of minutes) partially due to the sheer number of addon instances.\nThe PerBundleAddonCache deals with this slowness by doing 3 things:\n\n(1) Making only a single copy of each of certain addons and their dependent addons\n(2) Replacing any other instances of those addons with Proxy copies to the single instance\n(3) Having the Proxies return an empty array for their dependent addons, rather\n than proxying to the contents of the single addon instance. This gives up the\n ability of the Proxies to traverse downward into their child addons,\n something that many addons do not do anyway, for the huge reduction in duplications\n of those child addons. For applications that enable `ember-engines` dedupe logic,\n that logic is stateful, and having the Proxies allow access to the child addons array\n just breaks everything, because that logic will try multiple times to remove items\n it thinks are duplicated, messing up the single copy of the child addon array.\n See the explanation of the dedupe logic in\n {@link https://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/utils/deeply-non-duplicated-addon.js}\n\nWhat follows are the more technical details of how the PerBundleAddonCache implements\nthe above 3 behaviors.\n\nThis class supports per-bundle-host (bundle host = project or lazy engine)\ncaching of addon instances. During addon initialization we cannot add a\ncache to each bundle host object AFTER it is instantiated because running the\naddon constructor ultimately causes Addon class `setupRegistry` code to\nrun which instantiates child addons, which need the cache to already be\nin place for the parent bundle host.\nWe handle this by providing a global cache that exists independent of the\nbundle host objects. That is this object.\n\nThere are a number of \"behaviors\" being implemented by this object and\nits contents. They are:\n(1) Any addon that is a lazy engine has only a single real instance per\nproject - all other references to the lazy engine are to be proxies. These\nlazy engines are compared by name, not by packageInfo.realPath.\n(2) Any addon that is not a lazy engine, there is only a single real instance\nof the addon per \"bundle host\" (i.e. lazy engine or project).\n(3) An optimization - any addon that is in a lazy engine but that is also\nin bundled by its LCA host - the single instance is the one bundled by this\nhost. All other instances (in any lazy engine) are proxies.\n\nNOTE: the optimization is only enabled if the environment variable that controls\n`ember-engines` transitive deduplication (process.env.EMBER_ENGINES_ADDON_DEDUPE)\nis set to a truthy value. For more info, see:\nhttps://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/engine-addon.js#L396", + "access": "public", + "tagname": "" + }, + "Addon": { + "name": "Addon", + "shortname": "Addon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/addon.js", + "line": 122, + "description": "Root class for an Addon. If your addon module exports an Object this\nwill be extended from this base class. If you export a constructor (function),\nit will **not** extend from this class.\n\nHooks:\n\n- {{#crossLink \"Addon/config:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/blueprintsPath:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/includedCommands:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/importTransforms:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/serverMiddleware:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/testemMiddleware:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/postBuild:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/preBuild:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/outputReady:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/buildError:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/included:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/shouldIncludeChildAddon:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/setupPreprocessorRegistry:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/preprocessTree:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/postprocessTree:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/lintTree:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/contentFor:method\"}}{{/crossLink}}\n- {{#crossLink \"Addon/treeFor:method\"}}{{/crossLink}}", + "extends": "CoreObject", + "is_constructor": 1, + "params": [ + { + "name": "parent", + "description": "The project or addon that directly depends on this addon", + "type": "Project|Addon" + }, + { + "name": "project", + "description": "The current project (deprecated)", + "type": "Project" + } + ] + }, + "Blueprint": { + "name": "Blueprint", + "shortname": "Blueprint", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "Blueprint", + "file": "lib/models/blueprint.js", + "line": 29, + "description": "A blueprint is a bundle of template files with optional install\nlogic.\n\nBlueprints follow a simple structure. Let's take the built-in\n`controller` blueprint as an example:\n\n```\nblueprints/controller\n├── files\n│ ├── app\n│ │ └── __path__\n│ │ └── __name__.js\n└── index.js\n\nblueprints/controller-test\n├── files\n│ └── tests\n│ └── unit\n│ └── controllers\n│ └── __test__.js\n└── index.js\n```\n\n## Files\n\n`files` contains templates for the all the files to be\ninstalled into the target directory.\n\nThe `__name__` token is subtituted with the dasherized\nentity name at install time. For example, when the user\ninvokes `ember generate controller foo` then `__name__` becomes\n`foo`. When the `--pod` flag is used, for example `ember\ngenerate controller foo --pod` then `__name__` becomes\n`controller`.\n\nThe `__path__` token is substituted with the blueprint\nname at install time. For example, when the user invokes\n`ember generate controller foo` then `__path__` becomes\n`controller`. When the `--pod` flag is used, for example\n`ember generate controller foo --pod` then `__path__`\nbecomes `foo` (or `/foo` if the\npodModulePrefix is defined). This token is primarily for\npod support, and is only necessary if the blueprint can be\nused in pod structure. If the blueprint does not require pod\nsupport, simply use the blueprint name instead of the\n`__path__` token.\n\nThe `__test__` token is substituted with the dasherized\nentity name and appended with `-test` at install time.\nThis token is primarily for pod support and only necessary\nif the blueprint requires support for a pod structure. If\nthe blueprint does not require pod support, simply use the\n`__name__` token instead.\n\n## Template Variables (AKA Locals)\n\nVariables can be inserted into templates with\n`<%= someVariableName %>`.\n\nFor example, the built-in `util` blueprint\n`files/app/utils/__name__.js` looks like this:\n\n```js\nexport default function <%= camelizedModuleName %>() {\n return true;\n}\n```\n\n`<%= camelizedModuleName %>` is replaced with the real\nvalue at install time.\n\nThe following template variables are provided by default:\n\n- `dasherizedPackageName`\n- `classifiedPackageName`\n- `dasherizedModuleName`\n- `classifiedModuleName`\n- `camelizedModuleName`\n\n`packageName` is the project name as found in the project's\n`package.json`.\n\n`moduleName` is the name of the entity being generated.\n\nThe mechanism for providing custom template variables is\ndescribed below.\n\n## Index.js\n\nCustom installation and uninstallation behavior can be added\nby overriding the hooks documented below. `index.js` should\nexport a plain object, which will extend the prototype of the\n`Blueprint` class. If needed, the original `Blueprint` prototype\ncan be accessed through the `_super` property.\n\n```js\nmodule.exports = {\n locals(options) {\n // Return custom template variables here.\n return {};\n },\n\n normalizeEntityName(entityName) {\n // Normalize and validate entity name here.\n return entityName;\n },\n\n fileMapTokens(options) {\n // Return custom tokens to be replaced in your files\n return {\n __token__(options){\n // logic to determine value goes here\n return 'value';\n }\n }\n },\n\n filesPath(options) {\n return path.join(this.path, 'files');\n },\n\n beforeInstall(options) {},\n afterInstall(options) {},\n beforeUninstall(options) {},\n afterUninstall(options) {}\n\n};\n```\n\n## Blueprint Hooks\n\n### beforeInstall & beforeUninstall\n\nCalled before any of the template files are processed and receives\nthe `options` and `locals` hashes as parameters. Typically used for\nvalidating any additional command line options or for any asynchronous\nsetup that is needed. As an example, the `controller` blueprint validates\nits `--type` option in this hook. If you need to run any asynchronous code,\nwrap it in a promise and return that promise from these hooks. This will\nensure that your code is executed correctly.\n\n### afterInstall & afterUninstall\n\nThe `afterInstall` and `afterUninstall` hooks receives the same\narguments as `locals`. Use it to perform any custom work after the\nfiles are processed. For example, the built-in `route` blueprint\nuses these hooks to add and remove relevant route declarations in\n`app/router.js`.\n\n### Overriding Install\n\nIf you don't want your blueprint to install the contents of\n`files` you can override the `install` method. It receives the\nsame `options` object described above and must return a promise.\nSee the built-in `resource` blueprint for an example of this.", + "is_constructor": 1, + "extends": "CoreObject", + "params": [ + { + "name": "blueprintPath", + "description": "", + "type": "String", + "optional": true + }, + { + "name": "blueprintOptions", + "description": "", + "type": "Object", + "optional": true + } + ] + }, + "Builder": { + "name": "Builder", + "shortname": "Builder", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/builder.js", + "line": 14, + "description": "Wrapper for the Broccoli [Builder](https://github.com/broccolijs/broccoli/blob/master/lib/builder.js) class.", + "access": "private", + "tagname": "" + }, + "Command": { + "name": "Command", + "shortname": "Command", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/command.js", + "line": 42 + }, + "HardwareInfo": { + "name": "HardwareInfo", + "shortname": "HardwareInfo", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "" + }, + "Instrumentation": { + "name": "Instrumentation", + "shortname": "Instrumentation", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/instrumentation.js", + "line": 38, + "description": "An instance of this class is used for invoking the instrumentation\nhooks on addons.\n\nThe instrumentation types currently supported are:\n\n* init\n* build\n* command\n* shutdown", + "access": "private", + "tagname": "" + }, + "Project": { + "name": "Project", + "shortname": "Project", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/models/project.js", + "line": 27, + "description": "The Project model is tied to your package.json. It is instantiated\nby giving {{#crossLink \"Project/closestSync:method\"}}{{/crossLink}}\nthe path to your project.", + "is_constructor": 1, + "params": [ + { + "name": "root", + "description": "Root directory for the project", + "type": "String" + }, + { + "name": "pkg", + "description": "Contents of package.json", + "type": "Object" + }, + { + "name": "ui", + "description": "", + "type": "UI" + }, + { + "name": "cli", + "description": "", + "type": "CLI" + } + ] + }, + "ServeFilesAddon": { + "name": "ServeFilesAddon", + "shortname": "ServeFilesAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/broccoli-serve-files/index.js", + "line": 6, + "description": "This addon is used to serve the requested assets and set the required response\nheaders. It runs after broccoli-watcher addon.", + "is_constructor": 1 + }, + "WatcherAddon": { + "name": "WatcherAddon", + "shortname": "WatcherAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/broccoli-watcher/index.js", + "line": 7, + "description": "This addon is used to set the default response headers for the assets that will be\nserved by the next middleware. It waits for the watcher promise to resolve before\nsetting the response headers.", + "is_constructor": 1 + }, + "HistorySupportAddon": { + "name": "HistorySupportAddon", + "shortname": "HistorySupportAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/history-support/index.js", + "line": 8, + "description": "This addon is used to serve the `index.html` file at every requested\nURL that begins with `rootURL` and is expecting `text/html` output.", + "is_constructor": 1 + }, + "TestsServerAddon": { + "name": "TestsServerAddon", + "shortname": "TestsServerAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/server/middleware/tests-server/index.js", + "line": 9, + "description": "This addon is used to serve the QUnit or Mocha test runner\nat `rootURL + '/tests'`.", + "is_constructor": 1 + }, + "AmdTransformAddon": { + "name": "AmdTransformAddon", + "shortname": "AmdTransformAddon", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/transforms/amd/index.js", + "line": 4, + "description": "This addon is used to register a custom AMD transform for app and addons to use.", + "is_constructor": 1 + }, + "NpmTask": { + "name": "NpmTask", + "shortname": "NpmTask", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-cli", + "namespace": "", + "file": "lib/tasks/npm-task.js", + "line": 14, + "access": "private", + "tagname": "", + "is_constructor": 1, + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ] + }, + "WindowsSymlinkChecker": { + "name": "WindowsSymlinkChecker", + "shortname": "WindowsSymlinkChecker", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "is-lazy-engine", + "namespace": "", + "file": "lib/utilities/windows-admin.js", + "line": 6, + "description": "On Windows, users will have a much better experience if symlinks are enabled\n and usable. When queried, this object informs Windows users regarding\n improving their build performance, and how.\n > Windows Vista: nothing we can really do, so we fall back to junctions for folders + copying of files\n <= Windows Vista: symlinks are available but using them is somewhat tricky\n * if the user is an admin, the process needs to have been started with elevated privileges\n * if the user is not an admin, a specific setting needs to be enabled\n <= Windows 10\n * if developer mode is enabled, symlinks \"just work\"\n * https://blogs.windows.com/buildingapps/2016/12/02/symlinks-windows-10\n```js\n let checker = WindowsSymlinkChecker;\n let {\n windows,\n elevated\n } = await = checker.checkIfSymlinksNeedToBeEnabled(); // aslso emits helpful warnings\n ```", + "access": "public", + "tagname": "" + } + }, + "elements": {}, + "classitems": [ + { + "file": "lib/broccoli/ember-app.js", + "line": 180, + "description": "Initializes the `tests` and `hinting` properties.\n\nDefaults to `false` unless `ember test` was used or this is *not* a production build.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initTestsAndHinting", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 196, + "description": "Initializes the `project` property from `options.project` or the\nclosest Ember CLI project from the current working directory.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 217, + "description": "Initializes the `options` property from the `options` parameter and\na set of default values from Ember CLI.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 334, + "description": "Resolves a path relative to the project's root", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_resolveLocal", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 344, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_initVendorFiles", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 371, + "description": "Returns the environment name", + "access": "public", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "env", + "return": { + "description": "Environment name", + "type": "String" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 383, + "description": "Delegates to `broccoli-concat` with the `sourceMapConfig` option set to `options.sourcemaps`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_concatFiles", + "params": [ + { + "name": "tree", + "description": "" + }, + { + "name": "options", + "description": "" + } + ], + "return": { + "description": "" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 398, + "description": "Checks the result of `addon.isEnabled()` if it exists, defaults to `true` otherwise.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonEnabled", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 410, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonDisabledByExclude", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 421, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addonDisabledByInclude", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 432, + "description": "Returns whether an addon should be added to the project", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldIncludeAddon", + "params": [ + { + "name": "addon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 448, + "description": "Calls the included hook on addons.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_notifyAddonIncluded", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 484, + "description": "Calls the importTransforms hook on addons.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_importAddonTransforms", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 533, + "description": "Loads and initializes addons for this project.\nCalls initializeAddons on the Project.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "initializeAddons", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 560, + "description": "Returns a list of trees for a given type, returned by all addons.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonTreesFor", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + } + ], + "return": { + "description": "List of trees", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 572, + "description": "Runs addon post-processing on a given tree and returns the processed tree.\n\nThis enables addons to do process immediately **after** the preprocessor for a\ngiven type is run, but before concatenation occurs. If an addon wishes to\napply a transform before the preprocessors run, they can instead implement the\npreprocessTree hook.\n\nTo utilize this addons implement `postprocessTree` hook.\n\nAn example, would be to apply some broccoli transform on all JS files, but\nonly after the existing pre-processors have run.\n\n```js\nmodule.exports = {\n name: 'my-cool-addon',\n postprocessTree(type, tree) {\n if (type === 'js') {\n return someBroccoliTransform(tree);\n }\n\n return tree;\n }\n}\n\n```", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonPostprocessTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 609, + "description": "Runs addon pre-processing on a given tree and returns the processed tree.\n\nThis enables addons to do process immediately **before** the preprocessor for a\ngiven type is run. If an addon wishes to apply a transform after the\npreprocessors run, they can instead implement the postprocessTree hook.\n\nTo utilize this addons implement `preprocessTree` hook.\n\nAn example, would be to remove some set of files before the preprocessors run.\n\n```js\nvar stew = require('broccoli-stew');\n\nmodule.exports = {\n name: 'my-cool-addon',\n preprocessTree(type, tree) {\n if (type === 'js' && type === 'template') {\n return stew.rm(tree, someGlobPattern);\n }\n\n return tree;\n }\n}\n```", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonPreprocessTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 645, + "description": "Runs addon lintTree hooks and returns a single tree containing all\ntheir output.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonLintTree", + "params": [ + { + "name": "type", + "description": "Type of tree", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 664, + "description": "Imports legacy imports in this.vendorFiles", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "populateLegacyFiles", + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 841, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_podTemplatePatterns", + "return": { + "description": "An array of regular expressions.", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1048, + "description": "Runs the `app`, `tests` and `templates` trees through the chain of addons that produces lint trees.\n\nThose lint trees are afterwards funneled into the `tests` folder, babel-ified and returned as an array.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getLintTests", + "return": { + "description": "", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1088, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "return": { + "description": "Alias to the project's dependencies function", + "type": "Object" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1097, + "description": "Imports an asset into the application.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "import", + "params": [ + { + "name": "asset", + "description": "Either a path to the asset or an object with environment names and paths as key-value pairs.", + "type": "Object|String" + }, + { + "name": "options", + "description": "Options object", + "type": "Object", + "optional": true, + "props": [ + { + "name": "type", + "description": "Either 'vendor' or 'test'", + "type": "String", + "optional": true, + "optdefault": "'vendor'" + }, + { + "name": "prepend", + "description": "Whether or not this asset should be prepended", + "type": "Boolean", + "optional": true, + "optdefault": "false" + }, + { + "name": "destDir", + "description": "Destination directory, defaults to the name of the directory the asset is in", + "type": "String", + "optional": true + }, + { + "name": "outputFile", + "description": "Specifies the output file for given import. Defaults to assets/vendor.{js,css}", + "type": "String", + "optional": true + }, + { + "name": "using", + "description": "Specifies the array of transformations to be done on the asset. Can do an amd shim and/or custom transformation", + "type": "Array", + "optional": true + } + ] + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1143, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_import", + "params": [ + { + "name": "assetPath", + "description": "", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "directory", + "description": "", + "type": "String" + }, + { + "name": "subdirectory", + "description": "", + "type": "String" + }, + { + "name": "extension", + "description": "", + "type": "String" + } + ], + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1228, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getAssetPath", + "params": [ + { + "name": "asset", + "description": "", + "type": "(Object|String)" + } + ], + "return": { + "description": "assetPath", + "type": "(String|undefined)" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1269, + "description": "Returns an array of trees for this application", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "toArray", + "return": { + "description": "An array of trees", + "type": "Array" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/broccoli/ember-app.js", + "line": 1306, + "description": "Returns the merged tree for this application", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "toTree", + "params": [ + { + "name": "additionalTrees", + "description": "Array of additional trees to merge", + "type": "Array", + "optional": true + } + ], + "return": { + "description": "Merged tree for this application", + "type": "Tree" + }, + "class": "EmberApp", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 22, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "name", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 28, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "ui", + "type": "UI", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 35, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "testing", + "type": "Boolean", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 42, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "disableDependencyChecker", + "type": "Boolean", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 49, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "root", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 55, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "npmPackage", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 61, + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "instrumentation", + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 77, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "maybeMakeCommand", + "params": [ + { + "name": "commandName", + "description": "" + }, + { + "name": "commandArgs", + "description": "" + } + ], + "return": { + "description": "", + "type": "Null|CurrentCommand" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 115, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "run", + "params": [ + { + "name": "environmentPromiseHash", + "description": "", + "type": "Promise" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 224, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "callHelp", + "params": [ + { + "name": "options", + "description": "" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/cli/cli.js", + "line": 264, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "logError", + "params": [ + { + "name": "error", + "description": "" + } + ], + "return": { + "description": "", + "type": "Number" + }, + "class": "CLI", + "module": "ember-cli" + }, + { + "file": "lib/debug/assert.js", + "line": 3, + "description": "Verify that a certain condition is met, or throw an error if otherwise.\n\nThis is useful for communicating expectations in the code to other human\nreaders as well as catching bugs that accidentally violate these expectations.\n\n```js\nconst { assert } = require('ember-cli/lib/debug');\n\n// Test for truthiness:\nassert('Must pass a string.', typeof str === 'string');\n\n// Fail unconditionally:\nassert('This code path should never run.');\n```", + "itemtype": "method", + "name": "assert", + "params": [ + { + "name": "description", + "description": "Describes the condition.\nThis will become the message of the error thrown if the assertion fails.", + "type": "String" + }, + { + "name": "condition", + "description": "Must be truthy for the assertion to pass.\nIf falsy, an error will be thrown.", + "type": "Any" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/debug/deprecate.js", + "line": 7, + "description": "Display a deprecation message.\n\n```js\nconst { deprecate } = require('ember-cli/lib/debug');\n\ndeprecate('The `foo` method is deprecated.', false, {\n for: 'ember-cli',\n id: 'ember-cli.foo-method',\n since: {\n available: '4.1.0',\n enabled: '4.2.0',\n },\n until: '5.0.0',\n url: 'https://example.com',\n});\n```", + "itemtype": "method", + "name": "deprecate", + "params": [ + { + "name": "description", + "description": "Describes the deprecation.", + "type": "String" + }, + { + "name": "condition", + "description": "If falsy, the deprecation message will be displayed.", + "type": "Any" + }, + { + "name": "options", + "description": "An object including the deprecation's details:\n- `for` The library that the deprecation is for\n- `id` The deprecation's unique id\n- `since.available` A SemVer version indicating when the deprecation was made available\n- `since.enabled` A SemVer version indicating when the deprecation was enabled\n- `until` A SemVer version indicating until when the deprecation will be active\n- `url` A URL that refers to additional information about the deprecation", + "type": "Object" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 36, + "description": "Clear the cache information.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_clear", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 48, + "description": "Indicates if there is at least one error in any object in the cache.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hasErrors", + "return": { + "description": "true if there are any errors in the cache, for any entries, else false." + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 65, + "description": "Gather all the errors in the PIC and any cached objects, then dump them\nout to the ui-console.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "showErrors", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 80, + "description": "Dump all the errors for a single object in the cache out to the ui-console.\n\nSpecial case: because package-info-cache also creates PackageInfo objects for entries\nthat do not actually exist (to allow simplifying the code), if there's a case where\nan object has only the single error ERROR_PACKAGE_DIR_MISSING, do not print\nanything. The package will have been found as a reference from some other\naddon or the root project, and we'll print a reference error there. Having\nboth is just confusing to users.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_showObjErrors", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 146, + "description": "Process the root directory of a project, given a\nProject object (we need the object in order to find the internal addons).\n_readPackage takes care of the general processing of the root directory\nand common locations for addons, filling the cache with each. Once it\nreturns, we take care of the locations for addons that are specific to\nprojects, not other packages (e.g. internal addons, cli root).\n\nOnce all the project processing is done, go back through all cache entries\nto create references between the packageInfo objects.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "loadProject", + "params": [ + { + "name": "projectInstance", + "description": "the instance of the Project object to load package data\nabout into the cache." + } + ], + "return": { + "description": "the PackageInfo object for the given Project object.\nNote that if the project path is already in the cache, that will be returned.\nNo copy is made.", + "type": "PackageInfo" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 203, + "description": "To support the project.reloadPkg method, we need the ability to flush\nthe cache and reload from the updated package.json.\nThere are some issues with doing this:\n - Because of the possible relationship between projects and their addons\n due to symlinks, it's not trivial to flush only the data related to a\n given project.\n - If an 'ember-build-cli.js' dynamically adds new projects to the cache,\n we will not necessarily get called again to redo the loading of those\n projects.\nThe solution, implemented here:\n - Keep track of the Project objects whose packages are loaded into the cache.\n - If a project is reloaded, flush the cache, then do loadPackage again\n for all the known Projects.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "reloadProjects", + "return": { + "description": "null" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 228, + "description": "Do the actual processing of the root directory of an addon, when the addon\nobject already exists (i.e. the addon is acting as the root object of a\ntree, like project does). We need the object in order to find the internal addons.\n_readPackage takes care of the general processing of the root directory\nand common locations for addons, filling the cache with each.\n\nOnce all the addon processing is done, go back through all cache entries\nto create references between the packageInfo objects.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "loadAddon", + "params": [ + { + "name": "addonInstance", + "description": "the instance of the Addon object to load package data\nabout into the cache." + } + ], + "return": { + "description": "the PackageInfo object for the given Addon object.\nNote that if the addon path is already in the cache, that will be returned.\nNo copy is made.", + "type": "PackageInfo" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 262, + "description": "Resolve the node_module dependencies across all packages after they have\nbeen loaded into the cache, because we don't know when a particular package\nwill enter the cache.\n\nSince loadProject can be called multiple times for different projects,\nwe don't want to reprocess any packages that happen to be common\nbetween them. We'll handle this by marking any packageInfo once it\nhas been processed here, then ignore it in any later processing.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_resolveDependencies", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 299, + "description": "Add an entry to the cache.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_addEntry", + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 309, + "description": "Retrieve an entry from the cache.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "getEntry", + "params": [ + { + "name": "path", + "description": "the real path whose PackageInfo or NodeModulesList is desired.", + "type": "String" + } + ], + "return": { + "description": "or {NodeModulesList} the desired entry.", + "type": "PackageInfo" + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 321, + "description": "Indicate if an entry for a given path exists in the cache.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "contains", + "params": [ + { + "name": "path", + "description": "the real path to check for in the cache.", + "type": "String" + } + ], + "return": { + "description": "true if the entry is present for the given path, false otherwise." + }, + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 395, + "description": "Given a directory that supposedly contains a package, create a PackageInfo\nobject and try to fill it out, EVEN IF the package.json is not readable.\nErrors will then be stored in the PackageInfo for anything with the package\nthat might be wrong.\nBecause it's possible that the path given to the packageDir is not actually valid,\nwe'll just use the path.resolve() version of that path to search for the\npath in the cache, before trying to get the 'real' path (which also then\nresolves links). The cache itself is keyed on either the realPath, if the\npackageDir is actually a real valid directory path, or the normalized path (before\npath.resolve()), if it is not.\n\nNOTE: the cache is also used to store the NULL_PROJECT project object,\nwhich actually has no package.json or other files, but does have an empty\npackage object. Because of that, and to speed up processing, loadProject()\nwill pass in both the package root directory path and the project's package\nobject, if there is one. If the package object is present, we will use that\nin preference to trying to find a package.json file.\n\nIf there is no package object, and there is no package.json or the package.json\nis bad or the package is an addon with\nno main, the only thing we can do is return an ErrorEntry to the caller.\nOnce past all those problems, if any error occurs with any of the contents\nof the package, they'll be cached in the PackageInfo itself.\n\nIn summary, only PackageInfo or ErrorEntry will be returned.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_readPackage", + "params": [ + { + "name": "pkgDir", + "description": "the path of the directory to read the package.json from and\n process the contents and create a new cache entry or entries.", + "type": "String" + }, + { + "name": "isRoot,", + "description": "for when this is to be considered the root\npackage, whose dependencies we must all consider for discovery.", + "type": "Boolean" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/index.js", + "line": 585, + "description": "Process a directory of modules in a given package directory.\n\nWe will allow cache entries for node_modules that actually\nhave no contents, just so we don't have to hit the file system more\noften than necessary--it's much quicker to check an in-memory object.\nobject.\n\nNote: only a NodeModulesList or null is returned.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_readModulesList", + "params": [ + { + "name": "nodeModulesDir", + "description": "the path of the node_modules directory\n to read the package.json from and process the contents and create a\n new cache entry or entries.", + "type": "String" + } + ], + "class": "PackageInfoCache", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 43, + "description": "Given error data, add an ErrorEntry to the ErrorList for this object.", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addError", + "params": [ + { + "name": "errorType", + "description": "one of the Errors.ERROR_* constants.", + "type": "String" + }, + { + "name": "errorData", + "description": "any error data relevant to the type of error\nbeing created. See showErrors().", + "type": "Object" + } + ], + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 56, + "description": "Indicate if there are any errors in the NodeModulesList itself (not\nincluding errors within the individual entries).", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hasErrors", + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 67, + "description": "Add an entry (PackageInfo or NodeModulesList instance) to the entries\nfor this list. This is only called by PackageInfoCache. It is not intended\nto be called directly by anything else.", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addEntry", + "params": [ + { + "name": "entryName", + "description": "the name of the entry, i.e., the name of the\nfile or subdirectory in the directory listing.", + "type": "String" + }, + { + "name": "entryVal", + "description": "the PackageInfo or NodeModulesList tha corresponds\nto the given entry name in the file system.", + "type": "Object" + } + ], + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/node-modules-list.js", + "line": 84, + "description": "Return a PackageInfo object for a given package name (which may include\na scope)", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "findPackage", + "params": [ + { + "name": "packageName", + "description": "the name (possibly including a scope) of\n the PackageInfo the caller wants returned.", + "type": "String" + } + ], + "return": { + "description": "the desired PackageInfo if one exists for the given name, else null." + }, + "class": "NodeModulesList", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 96, + "description": "Given error data, add an ErrorEntry to the ErrorList for this object.\nThis is used by the _readPackage and _readNodeModulesList methods. It\nshould not be called otherwise.", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addError", + "params": [ + { + "name": "errorType", + "description": "one of the Errors.ERROR_* constants.", + "type": "String" + }, + { + "name": "errorData", + "description": "any error data relevant to the type of error\nbeing created. See showErrors().", + "type": "Object" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 111, + "description": "Indicate if there are any errors in the ErrorList for this package. Note that this does\nNOT indicate if there are any errors in the objects referred to by this package (e.g.,\ninternal addons or dependencies).", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hasErrors", + "params": [ + { + "name": "true", + "description": "if there are errors in the ErrorList, else false.", + "type": "Boolean" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 124, + "description": "Add a reference to an in-repo addon PackageInfo object.", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addInRepoAddon", + "params": [ + { + "name": "inRepoAddonPkg", + "description": "the PackageInfo for the in-repo addon", + "type": "PackageInfo" + } + ], + "return": { + "description": "null" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 139, + "description": "Add a reference to an internal addon PackageInfo object.\n\"internal\" addons (note: not in-repo addons) only exist in\nProjects, not other packages. Since the cache is loaded from\n'loadProject', this can be done appropriately.", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addInternalAddon", + "params": [ + { + "name": "internalAddonPkg", + "description": "the PackageInfo for the internal addon", + "type": "PackageInfo" + } + ], + "return": { + "description": "null" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 157, + "description": "For each dependency in the given list, find the corresponding\nPackageInfo object in the cache (going up the file tree if\nnecessary, as in the node resolution algorithm). Return a map\nof the dependencyName to PackageInfo object. Caller can then\nstore it wherever they like.\n\nNote: this is not to be called until all packages that can be have\nbeen added to the cache.\n\nNote: this is for ALL dependencies, not just addons. To get just\naddons, filter the result by calling pkgInfo.isForAddon().\n\nNote: this is only intended for use from PackageInfoCache._resolveDependencies.\nIt is not to be called directly by anything else.", + "access": "protected", + "tagname": "", + "itemtype": "method", + "name": "addDependencies", + "params": [ + { + "name": "dependencies", + "description": "value of 'dependencies' or 'devDependencies'\n attributes of a package.json.", + "type": "PackageInfo" + } + ], + "return": { + "description": "a JavaScript object keyed on dependency name/path with\n values the corresponding PackageInfo object from the cache.", + "type": "Object" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 226, + "description": "Indicate if this packageInfo is for a project. Should be called only after the project\nhas been loaded (see {@link PackageInfoCache#loadProject} for details).", + "itemtype": "method", + "name": "isForProject", + "return": { + "description": "true if this packageInfo is for a Project, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 237, + "description": "Indicate if this packageInfo is for an Addon.", + "itemtype": "method", + "name": "isForAddon", + "return": { + "description": "true if this packageInfo is for an Addon, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 247, + "description": "Indicate if this packageInfo represents an engine.", + "itemtype": "method", + "name": "isForEngine", + "return": { + "description": "true if this pkgInfo is configured as an engine & false otherwise", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 257, + "description": "Indicate if this packageInfo represents a lazy engine.", + "itemtype": "method", + "name": "isForLazyEngine", + "return": { + "description": "true if this pkgInfo is configured as an engine and the\nmodule this represents has lazyLoading enabled, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 268, + "description": "For use with the PerBundleAddonCache, is this packageInfo representing a\nbundle host (for now, a Project or a lazy engine).", + "itemtype": "method", + "name": "isForBundleHost", + "return": { + "description": "true if this pkgInfo is for a bundle host, false otherwise.", + "type": "Boolean" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 279, + "description": "Add to a list of child addon PackageInfos for this packageInfo.", + "itemtype": "method", + "name": "addPackages", + "params": [ + { + "name": "addonPackageList", + "description": "the list of child addon PackageInfos being constructed from various\nsources in this packageInfo.", + "type": "Array" + }, + { + "name": "packageInfoList", + "description": "a list or map of PackageInfos being considered\n(e.g., pkgInfo.dependencyPackages) for inclusion in the addonPackageList.", + "type": "Array | Object" + }, + { + "name": "excludeFn", + "description": "an optional function. If passed in, each child PackageInfo\nwill be tested against the function and only included in the package map if the function\nreturns a truthy value.", + "type": "Function" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 318, + "description": "Discover the child addons for this packageInfo, which corresponds to an Addon.", + "itemtype": "method", + "name": "discoverAddonAddons", + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 336, + "description": "Discover the child addons for this packageInfo, which corresponds to a Project.", + "itemtype": "method", + "name": "discoverProjectAddons", + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 356, + "description": "Given a list of PackageInfo objects, generate the 'addonPackages' object (keyed by\nname, value = AddonInfo instance, for all packages marked 'valid'). This is stored in\nboth Addon and Project instances.", + "itemtype": "method", + "name": "generateAddonPackages", + "params": [ + { + "name": "addonPackageList", + "description": "the list of child addon PackageInfos to work from", + "type": "Array" + }, + { + "name": "excludeFn", + "description": "an optional function. If passed in, each child PackageInfo\nwill be tested against the function and only included in the package map if the function\nreturns a truthy value.", + "type": "Function" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 419, + "description": "This is only supposed to be called by the addon instantiation code.\nAlso, the assumption here is that this PackageInfo really is for an\nAddon, so we don't need to check each time.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getAddonConstructor", + "return": { + "description": "an instance of a constructor function for the Addon class\nwhose package information is stored in this object.", + "type": "AddonConstructor" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 457, + "description": "Construct an addon instance.\n\nNOTE: this does NOT call constructors for the child addons. That is left to\nthe caller to do, so they can insert any other logic they want.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "constructAddonInstance", + "params": [ + { + "name": "parent", + "description": "the parent that directly contains this addon", + "type": "Project|Addon" + }, + { + "name": "project", + "description": "the project that is/contains this addon", + "type": "Project" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 492, + "description": "Create an instance of the addon represented by this packageInfo or (if we\nare supporting per-bundle caching and this is an allow-caching-per-bundle addon)\ncheck if we should be creating a proxy instead.\n\nNOTE: we assume that the value of 'allowCachingPerBundle' does not change between\ncalls to the constructor! A given addon is either allowing or not allowing caching\nfor an entire run.", + "itemtype": "method", + "name": "getAddonInstance", + "params": [ + { + "name": "parent", + "description": "the addon/project that is to be the direct parent of the\naddon instance created here" + }, + { + "name": "project", + "description": "the project that is to contain this addon instance", + "type": "*" + } + ], + "return": { + "description": "the constructed instance of the addon", + "type": "Object" + }, + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 525, + "description": "Initialize the child addons array of a newly-created addon instance. Normally when\nan addon derives from Addon, child addons will be created during 'setupRegistry' and\nthis code is essentially unnecessary. But if an addon is created with custom constructors\nthat don't call 'setupRegistry', any child addons may not yet be initialized.", + "itemtype": "method", + "name": "initChildAddons", + "params": [ + { + "name": "addonInstance", + "description": "", + "type": "Addon" + } + ], + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/package-info-cache/package-info.js", + "line": 542, + "description": "Gets the addon entry point", + "itemtype": "method", + "name": "_getAddonEntryPoint", + "return": { + "description": "The exported addon entry point", + "type": "Object|Function" + }, + "access": "private", + "tagname": "", + "class": "PackageInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/addon-proxy.js", + "line": 7, + "description": "Validates that a new cache key for a given tree type matches the previous\ncache key for the same tree type. To opt-in to bundle addon caching for\na given addon it's assumed that it returns stable cache keys; specifically\nthis is because the interplay between bundle addon caching and `ember-engines`\nwhen transitive deduplication is enabled assumes stable cache keys, so we validate\nfor this case here.", + "itemtype": "method", + "name": "validateCacheKey", + "params": [ + { + "name": "realAddonInstance", + "description": "The real addon instance", + "type": "Addon" + }, + { + "name": "treeType", + "description": "", + "type": "String" + }, + { + "name": "newCacheKey", + "description": "", + "type": "String" + } + ], + "throws": { + "description": "If the new cache key doesn't match the previous cache key", + "type": "Error" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/addon-proxy.js", + "line": 42, + "description": "Returns a proxy to a target with specific handling for the\n`parent` property, as well has to handle the `app` property;\nthat is, the proxy should maintain correct local state in\nclosure scope for the `app` property if it happens to be set\nby `ember-cli`. Other than `parent` & `app`, this function also\nproxies _almost_ everything to `target[TARGET_INSTANCE] with a few\nexceptions: we trap & return `[]` for `addons`, and we don't return\nthe original `included` (it's already called on the \"real\" addon\nby `ember-cli`).\n\nNote: the target is NOT the per-bundle cacheable instance of the addon. Rather,\nit is a cache entry POJO from PerBundleAddonCache.", + "itemtype": "method", + "name": "getAddonProxy", + "params": [ + { + "name": "targetCacheEntry", + "description": "the PerBundleAddonCache cache entry we are to proxy. It\nhas one interesting property, the real addon instance the proxy is forwarding\ncalls to (that property is not globally exposed)." + }, + { + "name": "parent", + "description": "the parent object of the proxy being created (the same as\nthe 'parent' property of a normal addon instance)" + } + ], + "return": { + "description": "Proxy" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 17, + "description": "Resolves the perBundleAddonCacheUtil; this prefers the custom provided version by\nthe consuming application, and defaults to an internal implementation here.", + "itemtype": "method", + "name": "resolvePerBundleAddonCacheUtil", + "params": [ + { + "name": "project", + "description": "", + "type": "Project" + } + ], + "return": { + "description": "}", + "type": "AllowCachingPerBundle: Function" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 116, + "description": "The default implementation here is to indicate if the original addon entry point has\nthe `allowCachingPerBundle` flag set either on itself or on its prototype.\n\nIf a consuming application specifies a relative path to a custom utility via the\n`ember-addon.perBundleAddonCacheUtil` configuration, we prefer the custom implementation\nprovided by the consumer.", + "itemtype": "method", + "name": "allowCachingPerBundle", + "params": [ + { + "name": "addonEntryPointModule", + "description": "", + "type": "Object|Function" + } + ], + "return": { + "description": "true if the given constructor function or class supports caching per bundle, false otherwise", + "type": "Boolean" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 132, + "description": "Creates a cache entry for the bundleHostCache. Because we want to use the same sort of proxy\nfor both bundle hosts and for 'regular' addon instances (though their cache entries have\nslightly different structures) we'll use the Symbol from getAddonProxy.", + "itemtype": "method", + "name": "createBundleHostCacheEntry", + "params": [ + { + "name": "bundleHostPkgInfo", + "description": "bundle host's pkgInfo.realPath", + "type": "PackageInfo" + } + ], + "return": { + "description": "an object in the form of a bundle-host cache entry", + "type": "Object" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 145, + "description": "Create a cache entry object for a given (non-bundle-host) addon to put into\nan addon cache.", + "itemtype": "method", + "name": "createAddonCacheEntry", + "params": [ + { + "name": "addonInstance", + "description": "the addon instance to cache", + "type": "Addon" + }, + { + "name": "addonRealPath", + "description": "the addon's pkgInfo.realPath", + "type": "String" + } + ], + "return": { + "description": "an object in the form of an addon-cache entry", + "type": "Object" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 158, + "description": "Given a parent object of a potential addon (another addon or the project),\ngo up the 'parent' chain to find the potential addon's bundle host object\n(i.e. lazy engine or project.) Because Projects are always bundle hosts,\nthis should always pass, but we'll throw if somehow it doesn't work.", + "itemtype": "method", + "name": "findBundleHost", + "params": [ + { + "name": "addonParent", + "description": "the direct parent object of a (potential or real) addon.", + "type": "Project|Addon" + }, + { + "name": "addonPkgInfo", + "description": "the PackageInfo for an addon being instantiated. This is only\nused for information if an error is going to be thrown.", + "type": "PackageInfo" + } + ], + "return": { + "description": "the object in the 'parent' chain that is a bundle host.", + "type": "Object" + }, + "throws": { + "description": "if there is not bundle host", + "type": "Error" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 197, + "description": "An optimization we support from lazy engines is the following:\n\nIf an addon instance is supposed to be bundled with a particular lazy engine, and\nsame addon is also to be bundled by a common LCA host, prefer the one bundled by the\nhost (since it's ultimately going to be deduped later by `ember-engines`).\n\nNOTE: this only applies if this.engineAddonTransitiveDedupeEnabled is truthy. If it is not,\nthe bundle host always \"owns\" the addon instance.\n\nIf deduping is enabled and the LCA host also depends on the same addon,\nthe lazy-engine instances of the addon will all be proxies to the one in\nthe LCA host. This function indicates whether the bundle host passed in\n(either the project or a lazy engine) is really the bundle host to \"own\" the\nnew addon.", + "itemtype": "method", + "name": "bundleHostOwnsInstance", + "params": [ + { + "name": "(Object}", + "description": "bundleHost the project or lazy engine that is trying to \"own\"\nthe new addon instance specified by addonPkgInfo" + }, + { + "name": "addonPkgInfo", + "description": "the PackageInfo of the potential new addon instance", + "type": "PackageInfo" + } + ], + "return": { + "description": "true if the bundle host is to \"own\" the instance, false otherwise.", + "type": "Boolean" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/index.js", + "line": 247, + "description": "Called from PackageInfo.getAddonInstance(), return an instance of the requested\naddon or a Proxy, based on the type of addon and its bundle host.", + "itemtype": "method", + "name": "getAddonInstance", + "params": [ + { + "name": "parent", + "description": "the parent Addon or Project this addon instance is\na child of.", + "type": "Addon|Project" + }, + { + "name": "addonPkgInfo", + "description": "the PackageInfo for the addon being created.", + "type": "*" + } + ], + "return": { + "description": "An addon instance (for the first copy of the addon) or a Proxy.\nAn addon that is a lazy engine will only ever have a single copy in the cache.\nAn addon that is not will have 1 copy per bundle host (Project or lazy engine),\nexcept if it is an addon that's also owned by a given LCA host and transitive\ndedupe is enabled (`engineAddonTransitiveDedupeEnabled`), in which case it will\nonly have a single copy in the project's addon cache.", + "type": "Addon|Proxy" + }, + "class": "PerBundleAddonCache {", + "module": "ember-cli" + }, + { + "file": "lib/models/per-bundle-addon-cache/target-instance.js", + "line": 3, + "description": "A Symbol constant for sharing between index.js and addon-proxy.js rather than\nputting the symbol into the Symbol global cache. The symbol is used in per-bundle\ncache entries to refer to the field that points at the real instance that a Proxy\nrefers to.", + "itemtype": "property", + "name": "", + "type": "Symbol", + "final": 1, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 155, + "description": "The name of this addon.", + "access": "public", + "tagname": "", + "final": 1, + "type": "String", + "itemtype": "property", + "name": "name", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 164, + "description": "The absolute path of the root directory where this addon is located.", + "access": "public", + "tagname": "", + "final": 1, + "type": "String", + "itemtype": "property", + "name": "root", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 173, + "description": "The host app instance.\n\n**Note**: this property will only be present on addons that are a direct dependency\nof the application itself, not of other addons. It is also not available in `init()`,\nbut will be set before `setupPreprocessorRegistry()` and `included()` are invoked.", + "access": "public", + "tagname": "", + "final": 1, + "type": "EmberApp", + "itemtype": "property", + "name": "app", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 186, + "description": "The root {{#crossLink \"Project\"}}project{{/crossLink}} to which this addon belongs.", + "access": "public", + "tagname": "", + "final": 1, + "type": "Project", + "itemtype": "property", + "name": "project", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 195, + "description": "This addon's parent.\n\nIf the addon is a direct dependency of an application, then `parent` will be the\ncorresponding {{#crossLink \"Project\"}}project{{/crossLink}} instance. If it's a\ndependency of another addon, then `parent` will be a reference to that addon.", + "access": "public", + "tagname": "", + "final": 1, + "type": "Project|Addon", + "itemtype": "property", + "name": "parent", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 208, + "description": "The set of addons that this addon itself depends on.\n\nThis array is populated from the addon's listed `dependencies` and any items in\n`ember-addon.paths` in its `package.json`.", + "access": "public", + "tagname": "", + "final": 1, + "type": "Addon[]", + "itemtype": "property", + "name": "addons", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 220, + "description": "A [`console-ui`](https://github.com/ember-cli/console-ui) object that can be used\nto log messages for the user and indicate progress on long-running operations.", + "access": "public", + "tagname": "", + "final": 1, + "type": "UI", + "itemtype": "property", + "name": "ui", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 230, + "description": "The contents of the addon's `package.json`.", + "access": "public", + "tagname": "", + "final": 1, + "type": "Object", + "itemtype": "property", + "name": "pkg", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 239, + "description": "Initializes the addon. If you override this method make sure and call `this._super.init && this._super.init.apply(this, arguments);` or your addon will not work.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "init", + "params": [ + { + "name": "parent", + "description": "The project or addon that directly depends on this addon", + "type": "Project|Addon" + }, + { + "name": "project", + "description": "The current project (deprecated)", + "type": "Project" + } + ], + "example": [ + "\n```js\ninit(parent, project) {\n this._super.init && this._super.init.apply(this, arguments);\n this._someCustomSetup();\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 320, + "description": "Find an addon of the current addon.\n\nExample: ember-data depends on ember-cli-babel and wishes to have\nadditional control over transpilation this method helps.\n\n```js\n// ember-data/index.js\ntreeForAddon(tree) {\n let babel = this.findOwnAddonByName('ember-cli-babel');\n\n return babel.transpileTree(tree, {\n // customize the babel step (see: ember-cli-addons readme for more details);\n });\n}\n```", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "findOwnAddonByName", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 344, + "description": "Check if the current addon intends to be hinted. Typically this is for\nhinting/linting libraries such as eslint or jshint", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "hintingEnabled", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 359, + "description": "Shorthand method for [broccoli-concat](https://github.com/ember-cli/broccoli-concat)", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "concatFiles", + "params": [ + { + "name": "tree", + "description": "Tree of files", + "type": "Tree" + }, + { + "name": "options", + "description": "Options for broccoli-concat", + "type": "Object" + } + ], + "return": { + "description": "Modified tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 373, + "description": "Allows to mark the addon as developing, triggering live-reload in the project the addon is linked to.\n\n#### Uses:\n\n- Working on projects with internal addons", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "isDevelopingAddon", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 409, + "description": "Discovers all child addons of this addon and an AddonInfo about\neach addon in this.addonPackages (keyed on addon name).\n\nChild addons include those from 'dependencies' (not devDependencies)\nand in-repo addons\n\nAny packageInfos that we find that are marked as not valid are excluded.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "discoverAddons", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 459, + "description": "Invoke the specified method for each enabled addon.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "eachAddonInvoke", + "params": [ + { + "name": "methodName", + "description": "the method to invoke on each addon", + "type": "String" + }, + { + "name": "args", + "description": "the arguments to pass to the invoked method", + "type": "Array" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 484, + "description": "Invoke the specified method for each of the project's addons.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_eachProjectAddonInvoke", + "params": [ + { + "name": "methodName", + "description": "the method to invoke on each addon", + "type": "String" + }, + { + "name": "args", + "description": "the arguments to pass to the invoked method", + "type": "Array" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 517, + "description": "Generates a tree for the specified path", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "treeGenerator", + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 552, + "description": "Returns a given type of tree (if present), merged with the\napplication tree. For each of the trees available using this\nmethod, you can also use a direct method called `treeFor[Type]` (eg. `treeForApp`).\n\nAvailable tree names:\n- {{#crossLink \"Addon/treeForApp:method\"}}app{{/crossLink}}\n- {{#crossLink \"Addon/treeForStyles:method\"}}styles{{/crossLink}}\n- {{#crossLink \"Addon/treeForTemplates:method\"}}templates{{/crossLink}}\n- {{#crossLink \"Addon/treeForAddonTemplates:method\"}}addon-templates{{/crossLink}}\n- {{#crossLink \"Addon/treeForAddon:method\"}}addon{{/crossLink}}\n- {{#crossLink \"Addon/treeForVendor:method\"}}vendor{{/crossLink}}\n- {{#crossLink \"Addon/treeForTestSupport:method\"}}test-support{{/crossLink}}\n- {{#crossLink \"Addon/treeForAddonTestSupport:method\"}}addon-test-support{{/crossLink}}\n- {{#crossLink \"Addon/treeForPublic:method\"}}public{{/crossLink}}\n\n#### Uses:\n\n- manipulating trees at build time", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeFor", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 618, + "access": "private", + "tagname": "", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + } + ], + "itemtype": "method", + "name": "_treeFor", + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 640, + "description": "Calculates a cacheKey for the given treeType. It is expected to return a\ncache key allowing multiple builds of the same tree to simply return the\noriginal tree (preventing duplicate work). If it returns null / undefined\nthe tree in question will opt out of this caching system.\n\nThis method is invoked prior to calling treeFor with the same tree name.\n\nYou should override this method if you implement custom treeFor or treeFor*\nmethods, which cause addons to opt-out of this caching.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "cacheKeyForTree", + "params": [ + { + "name": "treeType", + "description": "", + "type": "String" + } + ], + "return": { + "description": "cacheKey", + "type": "String" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 682, + "description": "This method climbs up the hierarchy of addons\nup to the host application.\n\nThis prevents previous addons (prior to `this.import`, ca 2.7.0)\nto break at importing assets when they are used nested in other addons.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_findHost", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 705, + "description": "This method is called when the addon is included in a build. You\nwould typically use this hook to perform additional imports\n\n#### Uses:\n\n- including vendor files\n- setting configuration options\n\n*Note:* Any options set in the consuming application will override the addon.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "included", + "params": [ + { + "name": "parent", + "description": "The parent object which included this addon", + "type": "EmberApp|EmberAddon" + } + ], + "example": [ + "\n```js\nincluded(parent) {\n this._super.included.apply(this, arguments);\n this.import(somePath);\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 738, + "description": "Imports an asset into this addon.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "import", + "params": [ + { + "name": "asset", + "description": "Either a path to the asset or an object with environment names and paths as key-value pairs.", + "type": "Object|String" + }, + { + "name": "options", + "description": "Options object", + "type": "Object", + "optional": true, + "props": [ + { + "name": "type", + "description": "Either 'vendor' or 'test', defaults to 'vendor'", + "type": "String", + "optional": true + }, + { + "name": "prepend", + "description": "Whether or not this asset should be prepended, defaults to false", + "type": "Boolean", + "optional": true + }, + { + "name": "destDir", + "description": "Destination directory, defaults to the name of the directory the asset is in", + "type": "String", + "optional": true + } + ] + } + ], + "since": "2.7.0", + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 758, + "description": "Returns the tree for all app files", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForApp", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "App file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 770, + "description": "Returns the tree for all template files", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForTemplates", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Template file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 782, + "description": "Returns the tree for this addon's templates", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForAddonTemplates", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Addon Template file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 794, + "description": "Returns a tree for this addon", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForAddon", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Addon file tree", + "type": "Tree" + }, + "example": [ + "\n```js\ntreeForAddon() {\n let emberVersion = new VersionChecker(this.project).for('ember-source');\n let shouldUsePolyfill = emberVersion.lt('4.5.0-alpha.4');\n\n if (shouldUsePolyfill) {\n return this._super.treeForAddon.apply(this, arguments);\n }\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 825, + "description": "Returns the tree for all style files", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForStyles", + "params": [ + { + "name": "tree", + "description": "The tree to process, usually `app/styles/` in the addon.", + "type": "Tree" + } + ], + "return": { + "description": "The return tree has the same contents as the input tree, but is moved so that the `app/styles/` path is preserved.", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 844, + "description": "Returns the tree for all vendor files", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForVendor", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Vendor file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 856, + "description": "Returns the tree for all test support files", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForTestSupport", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Test Support file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 868, + "description": "Returns the tree for all public files", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForPublic", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "Public file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 888, + "description": "Returns the tree for all test files namespaced to a given addon.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "treeForAddonTestSupport", + "params": [ + { + "name": "tree", + "description": "", + "type": "Tree" + } + ], + "return": { + "description": "", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 922, + "description": "Runs the styles tree through preprocessors.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "compileStyles", + "params": [ + { + "name": "addonStylesTree", + "description": "Styles file tree", + "type": "Tree" + } + ], + "return": { + "description": "Compiled styles tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 947, + "description": "Looks in the addon/ and addon/templates trees to determine if template files\nexist that need to be precompiled.\n\nThis is executed once when building, but not on rebuilds.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldCompileTemplates", + "return": { + "description": "indicates if templates need to be compiled for this addon", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 961, + "description": "Looks in the addon/ and addon/templates trees to determine if template files\nexist in the pods format that need to be precompiled.\n\nThis is executed once when building, but not on rebuilds.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_shouldCompilePodTemplates", + "return": { + "description": "indicates if pod based templates need to be compiled for this addon", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1079, + "description": "Runs the templates tree through preprocessors.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "compileTemplates", + "params": [ + { + "name": "tree", + "description": "Templates file tree", + "type": "Tree" + } + ], + "return": { + "description": "Compiled templates tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1113, + "description": "Runs the addon tree through preprocessors.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "compileAddon", + "params": [ + { + "name": "tree", + "description": "Addon file tree", + "type": "Tree" + } + ], + "return": { + "description": "Compiled addon tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1157, + "description": "Returns a tree with JSHint output for all addon JS.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "jshintAddonTree", + "return": { + "description": "Tree with JShint output (tests)", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1223, + "description": "Preprocesses a javascript tree.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "preprocessJs", + "return": { + "description": "Preprocessed javascript", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1234, + "description": "Returns a tree with all javascript for this addon.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processedAddonJsFiles", + "params": [ + { + "name": "the", + "description": "tree to preprocess", + "type": "Tree" + } + ], + "return": { + "description": "Processed javascript file tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1263, + "description": "Returns the module name for this addon.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "moduleName", + "return": { + "description": "module name", + "type": "String" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1278, + "description": "Returns the path for addon blueprints.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "blueprintsPath", + "return": { + "description": "The path for blueprints", + "type": "String" + }, + "example": [ + "\n- [ember-cli-coffeescript](https://github.com/kimroen/ember-cli-coffeescript/blob/v1.13.2/index.js#L26)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1296, + "description": "Augments the application's configuration settings.\n\nObject returned from this hook is merged with the application's configuration object.\n\nApplication's configuration always take precedence.\n\n#### Uses:\n\n- Modifying configuration options (see list of defaults [here](https://github.com/ember-cli/ember-cli/blob/v2.4.3/lib/broccoli/ember-app.js#L163))\n - For example\n - `storeConfigInMeta`\n - et, al", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "config", + "params": [ + { + "name": "env", + "description": "Name of current environment (ie \"development\")", + "type": "String" + }, + { + "name": "baseConfig", + "description": "Initial application configuration", + "type": "Object" + } + ], + "return": { + "description": "Configuration object to be merged with application configuration.", + "type": "Object" + }, + "example": [ + "\n```js\nconfig(environment, appConfig) {\n return {\n someAddonDefault: \"foo\"\n };\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1335, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "return": { + "description": "The addon's dependencies based on the addon's package.json", + "type": "Object" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1345, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "isEnabled", + "return": { + "description": "Whether or not this addon is enabled", + "type": "Boolean" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1354, + "description": "Can be used to exclude addons from being added as a child addon.\n\n#### Uses:\n\n- Abstract away multiple addons while only including one into the built assets", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "shouldIncludeChildAddon", + "params": [ + { + "name": "childAddon", + "description": "", + "type": "Addon" + } + ], + "return": { + "description": "Whether or not a child addon is supposed to be included", + "type": "Boolean" + }, + "example": [ + "\n```js\nshouldIncludeChildAddon(childAddon) {\n if(childAddon.name === 'ember-cli-some-legacy-select-component') {\n return this.options.legacyMode;\n } else if(childAddon.name === 'ember-cli-awesome-new-select-component') {\n return !this.options.legacyMode;\n } else {\n return this._super.shouldIncludeChildAddon.apply(this, arguments);\n }\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1386, + "description": "Allows the specification of custom addon commands.\nExpects you to return an object whose key is the name of the command and value is the command instance..\n\nThis function is not implemented by default\n\n#### Uses:\n\n- Include custom commands into consuming application", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "includedCommands", + "return": { + "description": "An object with included commands", + "type": "Object" + }, + "example": [ + "\n```js\nincludedCommands() {\n return {\n 'do-foo': require('./lib/commands/foo')\n };\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1410, + "description": "Allows addons to define a custom transform function that other addons and app can use when using `app.import`.\n\nThis function is not implemented by default\n\n#### Uses:\n\n- An app or addons want to transform a dependency that is being imported using `app.import`.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "importTransforms", + "return": { + "description": "An object with custom transforms", + "type": "Object" + }, + "example": [ + "\n```js\nimportTransforms() {\n return {\n 'my-custom-transform': function(tree, options) {\n // transform the incoming tree and return the updated tree\n }\n };\n}\n```\n\nAlternatively, if you want to process `options` before being passed into the custom transform function, use:", + "\n```js\nimportTransforms() {\n return {\n 'my-custom-transform': {\n transform: function(tree, options) {\n // transform the incoming tree and return the updated tree\n },\n processOptions: function(assetPath, entry, options) {\n // process your options\n\n return options\n }\n };\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1454, + "description": "Pre-process a tree\n\n#### Uses:\n\n- removing / adding files from the build.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "preprocessTree", + "params": [ + { + "name": "type", + "description": "What kind of tree (eg. 'js', 'css', 'template')", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1468, + "description": "Post-process a tree", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "postprocessTree", + "params": [ + { + "name": "type", + "description": "What kind of tree (eg. 'js', 'css', 'template')", + "type": "String" + }, + { + "name": "tree", + "description": "Tree to process", + "type": "Tree" + } + ], + "return": { + "description": "Processed tree", + "type": "Tree" + }, + "example": [ + "\n- [broccoli-asset-rev](https://github.com/rickharrison/broccoli-asset-rev/blob/c82c3580855554a31f7d6600b866aecf69cdaa6d/index.js#L29)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1481, + "description": "This hook allows you to make changes to the express server run by ember-cli.\n\nIt's passed a `startOptions` object which contains:\n- `app` Express server instance\n- `options` A hash with:\n - `project` Current {{#crossLink \"Project\"}}project{{/crossLink}}\n - `watcher`\n - `environment`\n\nThis function is not implemented by default\n\n#### Uses:\n\n- Tacking on headers to each request\n- Modifying the request object\n\n*Note:* that this should only be used in development, and if you need the same behavior in production you'll\nneed to configure your server.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "serverMiddleware", + "params": [ + { + "name": "startOptions", + "description": "Express server start options", + "type": "Object" + } + ], + "example": [ + "\n```js\nserverMiddleware(startOptions) {\n var app = startOptions.app;\n\n app.use(function(req, res, next) {\n // Some middleware\n });\n}\n```\n\n- [ember-cli-content-security-policy](https://github.com/rwjblue/ember-cli-content-security-policy/blob/v0.5.0/index.js#L84)\n- [history-support-addon](https://github.com/ember-cli/ember-cli/blob/v2.4.3/lib/tasks/server/middleware/history-support/index.js#L25)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1520, + "description": "This hook allows you to make changes to the express server run by testem.\n\nThis function is not implemented by default\n\n#### Uses:\n\n- Adding custom test-specific endpoints\n- Manipulating HTTP requests in tests", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "testemMiddleware", + "params": [ + { + "name": "app", + "description": "the express app instance", + "type": "Object" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1535, + "description": "This hook is called before a build takes place.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "preBuild", + "params": [ + { + "name": "result", + "description": "Build object", + "type": "Object" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1543, + "description": "This hook is called after a build is complete.\n\nIt's passed a `result` object which contains:\n- `directory` Path to build output\n\n#### Uses:\n\n- Slow tree listing\n- May be used to manipulate your project after build has happened", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "postBuild", + "params": [ + { + "name": "result", + "description": "Build result object", + "type": "Object" + } + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1559, + "description": "This hook is called after the build has been processed and the build files have been copied to the output directory\n\nIt's passed a `result` object which contains:\n- `directory` Path to build output", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "outputReady", + "params": [ + { + "name": "result", + "description": "Build result object", + "type": "Object" + } + ], + "example": [ + "\n- Opportunity to symlink or copy files elsewhere.\n- [ember-cli-rails-addon](https://github.com/rondale-sc/ember-cli-rails-addon/blob/v0.7.0/index.js#L45)\n - In this case we are using this in tandem with a rails middleware to remove a lock file.\n This allows our ruby gem to block incoming requests until after the build happens reliably." + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1576, + "description": "This hook is called when an error occurs during the preBuild, postBuild or outputReady hooks\nfor addons, or when the build fails\n\n#### Uses:\n\n- Custom error handling during build process", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "buildError", + "params": [ + { + "name": "error", + "description": "The error that was caught during the processes listed above", + "type": "Error" + } + ], + "example": [ + "\n- [ember-cli-rails-addon](https://github.com/rondale-sc/ember-cli-rails-addon/blob/v0.7.0/index.js#L11)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1592, + "description": "Used to add preprocessors to the preprocessor registry. This is often used by addons like [ember-cli-htmlbars](https://github.com/ember-cli/ember-cli-htmlbars)\nand [ember-cli-coffeescript](https://github.com/kimroen/ember-cli-coffeescript) to add a `template` or `js` preprocessor to the registry.\n\n**Uses:**\n\n- Adding preprocessors to the registry.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "setupPreprocessorRegistry", + "params": [ + { + "name": "type", + "description": "either `\"self\"` or `\"parent\"`", + "type": "String" + }, + { + "name": "registry", + "description": "the registry to be set up" + } + ], + "example": [ + "\n```js\nsetupPreprocessorRegistry(type, registry) {\n // ensure that broccoli-ember-hbs-template-compiler is not processing hbs files\n registry.remove('template', 'broccoli-ember-hbs-template-compiler');\n\n registry.add('template', {\n name: 'ember-cli-htmlbars',\n ext: 'hbs',\n _addon: this,\n toTree(tree) {\n var htmlbarsOptions = this._addon.htmlbarsOptions();\n return htmlbarsCompile(tree, htmlbarsOptions);\n },\n\n precompile(string) {\n var htmlbarsOptions = this._addon.htmlbarsOptions();\n var templateCompiler = htmlbarsOptions.templateCompiler;\n return utils.template(templateCompiler, string);\n }\n });\n\n if (type === 'parent') {\n this.parentRegistry = registry;\n }\n}\n```" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1634, + "description": "Return value is merged into the **tests** tree. This lets you inject\nlinter output as test results.\n\n**Uses:**\n\n- JSHint\n- any other form of automated test generation that turns code into tests", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "lintTree", + "params": [ + { + "name": "treeType", + "description": "`app`, `tests`, `templates`, or `addon`", + "type": "String" + }, + { + "name": "tree", + "description": "tree of files (JavaScript files for `app`, `tests`, and `addon` types)", + "type": "Tree" + } + ], + "example": [ + "\n- [ember-cli-qunit](https://github.com/ember-cli/ember-cli-qunit/blob/v1.4.1/index.js#L206)\n- [ember-cli-mocha](https://github.com/ef4/ember-cli-mocha/blob/66803037fe203b24e96dea83a2bd91de48b842e1/index.js#L101)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/addon.js", + "line": 1653, + "description": "Allow addons to implement contentFor method to add string output into the associated `{{content-for 'foo'}}` section in `index.html`\n\n**Uses:**\n\n- For instance, to inject analytics code into `index.html`", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "contentFor", + "params": [ + { + "name": "type", + "description": "" + }, + { + "name": "config", + "description": "" + }, + { + "name": "content", + "description": "" + } + ], + "example": [ + "\n- [ember-cli-google-analytics](https://github.com/pgrippi/ember-cli-google-analytics/blob/v1.5.0/index.js#L79)" + ], + "class": "Addon", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 198, + "description": "Indicates whether or not a blueprint is a candidate for automatic transpilation from TS to JS.\nThis property could be false in the case that the blueprint is written in JS and is not intended\nto work with TS at all, OR in the case that the blueprint is written in TS and the author does\nnot intend to support transpilation to JS.", + "access": "public", + "tagname": "", + "itemtype": "property", + "name": "shouldTransformTypeScript", + "type": "Boolean", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 219, + "description": "Process the options object coming from either\nthe `init`, `install` or `uninstall` hook.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_processOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 235, + "description": "Hook to specify the path to the blueprint's files. By default this is\n`path.join(this.path, 'files)`.\n\nThis can be used to customize which set of files to install based on options\nor environmental variables. It defaults to the `files` directory within the\nblueprint's folder.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "filesPath", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "Path to the blueprints files directory.", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 252, + "description": "Used to retrieve files for blueprint.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "files", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "Contents of the blueprint's files directory", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 275, + "itemtype": "method", + "name": "srcPath", + "params": [ + { + "name": "file", + "description": "", + "type": "String" + } + ], + "return": { + "description": "Resolved path to the file", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 284, + "description": "Hook for normalizing entity name\n\nUse the `normalizeEntityName` hook to add custom normalization and\nvalidation of the provided entity name. The default hook does not\nmake any changes to the entity name, but makes sure an entity name\nis present and that it doesn't have a trailing slash.\n\nThis hook receives the entity name as its first argument. The string\nreturned by this hook will be used as the new entity name.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "normalizeEntityName", + "params": [ + { + "name": "entityName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 304, + "description": "Write a status and message to the UI", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_writeStatusToUI", + "params": [ + { + "name": "chalkColor", + "description": "", + "type": "Function" + }, + { + "name": "keyword", + "description": "", + "type": "String" + }, + { + "name": "message", + "description": "", + "type": "String" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 318, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_writeFile", + "params": [ + { + "name": "info", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 330, + "description": "Actions lookup", + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "_actions", + "type": "Object", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 368, + "description": "Calls an action.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_commit", + "params": [ + { + "name": "result", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "throws": { + "description": "Action doesn't exist.", + "type": "Error" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 386, + "description": "Prints warning for pod unsupported.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkForPod", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 403, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_normalizeEntityName", + "params": [ + { + "name": "entity", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 414, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkInRepoAddonExists", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 443, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_process", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "beforeHook", + "description": "", + "type": "Function" + }, + { + "name": "process", + "description": "", + "type": "Function" + }, + { + "name": "afterHook", + "description": "", + "type": "Function" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 469, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "shouldConvertToJS", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + }, + { + "name": "fileInfo", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 523, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "convertToJS", + "params": [ + { + "name": "fileInfo", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 543, + "itemtype": "method", + "name": "install", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 570, + "itemtype": "method", + "name": "uninstall", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 592, + "description": "Hook for running operations before install.", + "itemtype": "method", + "name": "beforeInstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 599, + "description": "Hook for running operations after install.", + "itemtype": "method", + "name": "afterInstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 606, + "description": "Hook for running operations before uninstall.", + "itemtype": "method", + "name": "beforeUninstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 613, + "description": "Hook for running operations after uninstall.", + "itemtype": "method", + "name": "afterUninstall", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 622, + "description": "Hook for adding custom template variables.\n\nWhen the following is called on the command line:\n\n```sh\nember generate controller foo --type=array --dry-run isAdmin:true\n```\n\nThe object passed to `locals` looks like this:\n\n```js\n{\n entity: {\n name: 'foo',\n options: {\n isAdmin: true\n }\n },\n dryRun: true\n type: \"array\"\n // more keys\n}\n```\n\nThis hook must return an object or a Promise which resolves to an object.\nThe resolved object will be merged with the aforementioned default locals.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "locals", + "params": [ + { + "name": "options", + "description": "General and entity-specific options", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object|Promise|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 657, + "description": "Hook to add additional or override existing fileMap tokens.\n\nUse `fileMapTokens` to add custom fileMap tokens for use\nin the `mapFile` method. The hook must return an object in the\nfollowing pattern:\n\n```js\n{\n __token__(options){\n // logic to determine value goes here\n return 'value';\n }\n}\n```\n\nIt will be merged with the default `fileMapTokens`, and can be used\nto override any of the default tokens.\n\nTokens are used in the files folder (see `files`), and get replaced with\nvalues when the `mapFile` method is called.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "fileMapTokens", + "return": { + "description": "", + "type": "Object|null" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 685, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_fileMapTokens", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 741, + "description": "Used to generate fileMap tokens for mapFile.", + "itemtype": "method", + "name": "generateFileMap", + "params": [ + { + "name": "fileMapVariables", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 756, + "itemtype": "method", + "name": "buildFileInfo", + "params": [ + { + "name": "destPath", + "description": "", + "type": "Function" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + }, + { + "name": "file", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "FileInfo" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 777, + "itemtype": "method", + "name": "isUpdate", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 787, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getFileInfos", + "params": [ + { + "name": "files", + "description": "", + "type": "Array" + }, + { + "name": "intoDir", + "description": "", + "type": "String" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "file infos", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 799, + "description": "Add update files to ignored files or reset them", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_ignoreUpdateFiles", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 812, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_getFilesForInstall", + "params": [ + { + "name": "targetFiles", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "files", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 825, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkForNoMatch", + "params": [ + { + "name": "fileInfos", + "description": "", + "type": "Array" + }, + { + "name": "rawArgs", + "description": "", + "type": "String" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 839, + "itemtype": "method", + "name": "processFiles", + "params": [ + { + "name": "intoDir", + "description": "", + "type": "String" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 872, + "itemtype": "method", + "name": "processFilesForUninstall", + "params": [ + { + "name": "intoDir", + "description": "", + "type": "String" + }, + { + "name": "templateVariables", + "description": "", + "type": "Object" + } + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 923, + "itemtype": "method", + "name": "mapFile", + "params": [ + { + "name": "file", + "description": "", + "type": "String" + }, + { + "name": "locals", + "description": "" + } + ], + "return": { + "description": "", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 940, + "description": "Looks for a __root__ token in the files folder. Must be present for\nthe blueprint to support addon tokens. The `server`, `blueprints`, and `test`", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "supportsAddon", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 952, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_generateFileMapVariables", + "params": [ + { + "name": "moduleName", + "description": "", + "type": "String" + }, + { + "name": "locals", + "description": "" + }, + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 982, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_locals", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1015, + "description": "Used to add a package to the project's `package.json`.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.", + "itemtype": "method", + "name": "addPackageToProject", + "params": [ + { + "name": "packageName", + "description": "", + "type": "String" + }, + { + "name": "target", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1037, + "description": "Used to add multiple packages to the project's `package.json`.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.\n\nExpects each array item to be an object with a `name`. Each object\nmay optionally have a `target` to specify a specific version.", + "itemtype": "method", + "name": "addPackagesToProject", + "params": [ + { + "name": "packages", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "example": [ + "\n```js\nthis.addPackagesToProject([\n { name: 'lodash' },\n { name: 'moment', target: '^2.17.0' },\n]);\n```" + ], + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1086, + "description": "Used to remove a package from the project's `package.json`.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that any package conflicts can be resolved before the\naddon is used.", + "itemtype": "method", + "name": "removePackageFromProject", + "params": [ + { + "name": "packageName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1103, + "description": "Used to remove multiple packages from the project's `package.json`.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that any package conflicts can be resolved before the\naddon is used.\n\nExpects each array item to be an object with a `name` property.", + "itemtype": "method", + "name": "removePackagesFromProject", + "params": [ + { + "name": "packages", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1144, + "description": "Used to add an addon to the project's `package.json` and run it's\n`defaultBlueprint` if it provides one.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.", + "itemtype": "method", + "name": "addAddonToProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1164, + "description": "Used to add multiple addons to the project's `package.json` and run their\n`defaultBlueprint` if they provide one.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.", + "itemtype": "method", + "name": "addAddonsToProject", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1241, + "description": "Used to retrieve a task with the given name. Passes the new task\nthe standard information available (like `ui`, `project`, etc).", + "itemtype": "method", + "name": "taskFor", + "params": [ + { + "name": "dasherizedName", + "description": "" + } + ], + "access": "public", + "tagname": "", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1258, + "description": "Inserts the given content into a file. If the `contentsToInsert` string is already\npresent in the current contents, the file will not be changed unless `force` option\nis passed.\n\nIf `options.before` is specified, `contentsToInsert` will be inserted before\nthe first instance of that string. If `options.after` is specified, the\ncontents will be inserted after the first instance of that string.\nIf the string specified by options.before or options.after is not in the file,\nno change will be made.\n\nIf neither `options.before` nor `options.after` are present, `contentsToInsert`\nwill be inserted at the end of the file.\n\nExample:\n```\n// app/router.js\nRouter.map(function () {\n});\n```\n\n```\ninsertIntoFile('app/router.js', ' this.route(\"admin\");', {\n after: 'Router.map(function () {' + EOL\n}).then(function() {\n // file has been inserted into!\n});\n\n\n```\n\n```\n// app/router.js\nRouter.map(function () {\n this.route(\"admin\");\n});\n```", + "itemtype": "method", + "name": "insertIntoFile", + "params": [ + { + "name": "pathRelativeToProjectRoot", + "description": "", + "type": "String" + }, + { + "name": "contentsToInsert", + "description": "", + "type": "String" + }, + { + "name": "providedOptions", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1362, + "description": "Used to retrieve a blueprint with the given name.", + "itemtype": "method", + "name": "lookupBlueprint", + "params": [ + { + "name": "dasherizedName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Blueprint" + }, + "access": "public", + "tagname": "", + "class": "Blueprint", + "module": "ember-cli" + }, + { + "file": "lib/models/blueprint.js", + "line": 1379, + "static": 1, + "itemtype": "method", + "name": "lookup", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object", + "optional": true, + "props": [ + { + "name": "paths", + "description": "Extra paths to search for blueprints", + "type": "Array", + "optional": true + }, + { + "name": "ignoreMissing", + "description": "Throw a `SilentError` if a\n matching Blueprint could not be found", + "type": "Boolean", + "optional": true + }, + { + "name": "blueprintOptions", + "description": "Options object that will be passed\n along to the Blueprint instance on creation.", + "type": "Object", + "optional": true + } + ] + } + ], + "return": { + "description": "", + "type": "Blueprint" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1420, + "description": "Loads a blueprint from given path.", + "static": 1, + "itemtype": "method", + "name": "load", + "params": [ + { + "name": "blueprintPath", + "description": "", + "type": "String" + }, + { + "name": "blueprintOptions", + "description": "", + "type": "Object", + "optional": true + } + ], + "return": { + "description": "blueprint instance", + "type": "Blueprint" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1448, + "static": 1, + "itemtype": "method", + "name": "list", + "params": [ + { + "name": "options", + "description": "", + "type": "Object", + "optional": true, + "props": [ + { + "name": "paths", + "description": "Extra paths to search for blueprints", + "type": "Array", + "optional": true + } + ] + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1497, + "description": "Files that are renamed when installed into the target directory.\nThis allows including files in the blueprint that would have an effect\non another process, such as a file named `.gitignore`.\n\nThe keys are the filenames used in the files folder.\nThe values are the filenames used in the target directory.", + "static": 1, + "itemtype": "property", + "name": "renamedFiles", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1512, + "static": 1, + "itemtype": "property", + "name": "ignoredFiles", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1518, + "static": 1, + "itemtype": "property", + "name": "ignoredUpdateFiles", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1524, + "static": 1, + "itemtype": "property", + "name": "defaultLookupPaths", + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1532, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "prepareConfirm", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1545, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "markIdenticalToBeSkipped", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1556, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "markToBeRemoved", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1565, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "gatherConfirmationMessages", + "params": [ + { + "name": "collection", + "description": "", + "type": "Array" + }, + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1579, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isIgnored", + "params": [ + { + "name": "info", + "description": "", + "type": "FileInfo" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1591, + "description": "Combines provided lookup paths with defaults and removes\nduplicates.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "generateLookupPaths", + "params": [ + { + "name": "lookupPaths", + "description": "", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1606, + "description": "Looks for a __path__ token in the files folder. Must be present for\nthe blueprint to support pod tokens.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "hasPathToken", + "params": [ + { + "name": "files", + "description": "", + "type": "Files" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1645, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isValidFile", + "params": [ + { + "name": "fileInfo", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1659, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isFilePath", + "params": [ + { + "name": "fileInfo", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1669, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "dir", + "return": { + "description": "list of files in the given directory or and empty array if no directory exists", + "type": "Array" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/blueprint.js", + "line": 1682, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getDetailedHelpPath", + "params": [ + { + "name": "thisPath", + "description": "", + "type": "String" + } + ], + "return": { + "description": "help path", + "type": "String" + }, + "class": "Blueprint", + "module": "ember-cli", + "namespace": "Blueprint" + }, + { + "file": "lib/models/builder.js", + "line": 39, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "readBuildFile", + "params": [ + { + "name": "path", + "description": "The file path to read the build file from" + } + ], + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 60, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "setupBroccoliBuilder", + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 98, + "description": "Determine whether the output path is safe to delete. If the outputPath\nappears anywhere in the parents of the project root, the build would\ndelete the project directory. In this case return `false`, otherwise\nreturn `true`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "canDeleteOutputPath", + "params": [ + { + "name": "outputPath", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 120, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "copyToOutputPath", + "params": [ + { + "name": "inputPath", + "description": "", + "type": "String" + } + ], + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 144, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processAddonBuildSteps", + "params": [ + { + "name": "buildStep", + "description": "" + }, + { + "name": "results", + "description": "" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 169, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "build", + "return": { + "description": "", + "type": "Promise" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 244, + "description": "Delegates to the `cleanup` method of the wrapped Broccoli builder.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "cleanup", + "return": { + "description": "", + "type": "Promise" + }, + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/builder.js", + "line": 276, + "description": "Checks for issues in the environment that can't easily be detected until\nafter a build and issues any necessary deprecation warnings.\n\n- check for old (pre 0.1.4) versions of heimdalljs", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "checkForPostBuildEnvironmentIssues", + "class": "Builder", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 51, + "description": "The description of what this command does.", + "final": 1, + "itemtype": "property", + "name": "description", + "type": "String", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 60, + "description": "Does this command work everywhere or just inside or outside of projects.\n\nPossible values:\n\n- `insideProject`\n- `outsideProject`\n- `everywhere`", + "final": 1, + "itemtype": "property", + "name": "works", + "type": "String", + "default": "`insideProject`", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 81, + "final": 1, + "itemtype": "property", + "name": "isWithinProject", + "type": "Boolean", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 88, + "description": "The name of the command.", + "final": 1, + "itemtype": "property", + "name": "name", + "type": "String", + "example": [ + " `new` or `generate`" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 100, + "description": "An array of aliases for the command", + "final": 1, + "itemtype": "property", + "name": "aliases", + "type": "Array", + "example": [ + " `['g']` for the `generate` command" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 117, + "description": "An array of available options for the command", + "final": 1, + "itemtype": "property", + "name": "availableOptions", + "type": "Array", + "example": [ + "\n```js\navailableOptions: [\n { name: 'dry-run', type: Boolean, default: false, aliases: ['d'] },\n { name: 'verbose', type: Boolean, default: false, aliases: ['v'] },\n { name: 'blueprint', type: String, default: 'app', aliases: ['b'] },\n { name: 'skip-npm', type: Boolean, default: false, aliases: ['sn'] },\n { name: 'skip-git', type: Boolean, default: false, aliases: ['sg'] },\n { name: 'directory', type: String , aliases: ['dir'] }\n],\n```" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 137, + "description": "An array of anonymous options for the command", + "final": 1, + "itemtype": "property", + "name": "anonymousOptions", + "type": "Array", + "example": [ + "\n```js\nanonymousOptions: [\n ''\n],\n```" + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 153, + "description": "Registers options with command. This method provides the ability to extend or override command options.\nExpects an object containing anonymousOptions or availableOptions, which it will then merge with\nexisting availableOptions before building the optionsAliases which are used to define shorthands.", + "itemtype": "method", + "name": "registerOptions", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 179, + "description": "Called when command is interrupted from outside, e.g. ctrl+C or process kill\nCan be used to cleanup artifacts produced by command and control process exit code", + "itemtype": "method", + "name": "onInterrupt", + "return": { + "description": "if rejected promise then result of promise will be used as an exit code", + "type": "Promise|undefined" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 206, + "description": "Looks up for the task and runs\nIt also keeps the reference for the current active task\nKeeping reference for the current task allows to cleanup task on interruption", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "runTask", + "throws": { + "description": "on attempt to run concurrent task", + "type": "Error" + }, + "params": [ + { + "name": "name", + "description": "Task name from the tasks registry. Should be capitalized", + "type": "String" + }, + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "Task run", + "type": "Promise" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 247, + "description": "Hook for extending a command before it is run in the cli.run command.\nMost common use case would be to extend availableOptions.", + "itemtype": "method", + "name": "beforeRun", + "return": { + "description": "", + "type": "Promise|null" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 255, + "itemtype": "method", + "name": "validateAndRun", + "return": { + "description": "", + "type": "Promise" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 315, + "description": "Reports if the given command has a command line option by a given name", + "itemtype": "method", + "name": "hasOption", + "params": [ + { + "name": "name", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 331, + "description": "Merges any options with duplicate keys in the availableOptions array.\nUsed primarily by registerOptions.", + "itemtype": "method", + "name": "mergeDuplicateOption", + "params": [ + { + "name": "key", + "description": "", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 366, + "description": "Normalizes option, filling in implicit values", + "itemtype": "method", + "name": "normalizeOption", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 378, + "description": "Assigns option", + "itemtype": "method", + "name": "assignOption", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + }, + { + "name": "parsedOptions", + "description": "", + "type": "Object" + }, + { + "name": "commandOptions", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 411, + "description": "Validates option", + "itemtype": "method", + "name": "validateOption", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 437, + "description": "Parses alias for an option and adds it to optionsAliases", + "itemtype": "method", + "name": "parseAlias", + "params": [ + { + "name": "option", + "description": "", + "type": "Object" + }, + { + "name": "alias", + "description": "", + "type": "Object|String" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 482, + "itemtype": "method", + "name": "assignAlias", + "params": [ + { + "name": "option", + "description": "" + }, + { + "name": "alias", + "description": "" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 497, + "description": "Validates alias value", + "itemtype": "method", + "name": "validateAlias", + "params": [ + { + "name": "alias", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 529, + "description": "Parses command arguments and processes", + "itemtype": "method", + "name": "parseArgs", + "params": [ + { + "name": "commandArgs", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object|null" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 585, + "itemtype": "method", + "name": "run", + "params": [ + { + "name": "commandArgs", + "description": "" + } + ], + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 595, + "description": "Prints basic help for the command.\n\nBasic help looks like this:\n\n ember generate \n Generates new code from blueprints\n aliases: g\n --dry-run (Default: false)\n --verbose (Default: false)\n\nThe default implementation is designed to cover all bases\nbut may be overridden if necessary.", + "itemtype": "method", + "name": "printBasicHelp", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 626, + "description": "Prints detailed help for the command.\n\nThe default implementation is no-op and should be overridden\nfor each command where further help text is required.", + "itemtype": "method", + "name": "printDetailedHelp", + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/command.js", + "line": 636, + "itemtype": "method", + "name": "getJson", + "params": [ + { + "name": "options", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Object" + }, + "class": "Command", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 232, + "description": "Indicates whether the host is running on battery power. This can cause\nperformance degredation.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isUsingBattery", + "params": [ + { + "name": "platform", + "description": "The current hardware platform.\n USED FOR TESTING ONLY.", + "type": "String=process.platform" + } + ], + "return": { + "description": "`true` iff the host is running on battery power or\n `false` if not. `null` if the battery status\n cannot be determined.", + "type": "Null|Boolean" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 266, + "description": "Determines the amount of swap/virtual memory currently in use.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "memorySwapUsed", + "params": [ + { + "name": "platform", + "description": "The current hardware platform.\n USED FOR TESTING ONLY.", + "type": "String=process.platform" + } + ], + "return": { + "description": "The amount of used swap space, in bytes. `null` if\n the used swap space cannot be determined.", + "type": "Null|Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 297, + "description": "Determines the total amount of memory available to the host, as from\n`os.totalmem`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "memoryTotal", + "return": { + "description": "The total memory in bytes.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 309, + "description": "Determines the amount of memory currently being used by the current Node\nprocess, as from `process.memoryUsage`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "memoryUsed", + "return": { + "description": "The Resident Set Size, as reported by\n `process.memoryUsage`.", + "type": "Object" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 322, + "description": "Determines the number of logical processors available to the host, as from\n`os.cpus`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processorCount", + "return": { + "description": "The number of logical processors.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 334, + "description": "Determines the average processor load across the system. This is\nexpressed as a fractional number between 0 and the number of logical\nprocessors.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processorLoad", + "params": [ + { + "name": "platform", + "description": "The current hardware platform.\n USED FOR TESTING ONLY.", + "type": "String=process.platform" + } + ], + "return": { + "description": "The one-, five-, and fifteen-minute processor load\n averages.", + "type": "Array" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 358, + "description": "Gets the speed of the host's processors.\n\nIf more than one processor is found, the average of their speeds is taken.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "processorSpeed", + "return": { + "description": "The average processor speed in MHz.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/hardware-info.js", + "line": 373, + "description": "Determines the time since the host was started, as from `os.uptime`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "uptime", + "return": { + "description": "The number of seconds since the host was started.", + "type": "Number" + }, + "class": "HardwareInfo", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 16, + "description": "Given a path (calculated as part of `getHostAddonInfo`), return the correct\n\"bundle host\". A bundle host is considered the project or lazy engine.\n\nFor example, given the following package structure:\n\n --Project--\n / \\\n / \\\nLazy Engine A \\\n Addon A\n |\n |\n Lazy Engine B\n / \\\n / \\\n Lazy Engine A Lazy Engine C\n\nThe provided paths for lazy engine A would look like:\n\n- [Project]\n- [Project, Addon A, Lazy Engine B]\n\nFor this project structure, this function would return [Project, [Project]]\n\nSimilarly, given the following project structure:\n\n --Project--\n / \\\n / \\\n Lazy Engine A \\\n / Lazy Engine B\n / |\n / |\n Lazy Engine C Lazy Engine C\n\nThe provided paths for lazy engine C would look like:\n\n- [Project, Lazy Engine A]\n- [Project, Lazy Engine B]\n\nIn this case, the host is the project and would also return [Project, [Project]]", + "itemtype": "method", + "name": "_findNearestBundleHost", + "params": [ + { + "name": "paths", + "description": "The found paths to a given bundle host", + "type": "Array" + } + ], + "return": { + "description": "", + "type": "[PackageInfo, PackageInfo[]]" + }, + "access": "private", + "tagname": "", + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 93, + "description": "Returns a `Set` of package-info objects that a given bundle host is\n_directly_ responsible for bundling (i.e., it excludes other bundle\nhosts/lazy engines when it encounters these)", + "itemtype": "method", + "name": "_getBundledPackageInfos", + "params": [ + { + "name": "pkgInfoToStartAt", + "description": "", + "type": "PackageInfo" + } + ], + "return": { + "description": "", + "type": "Set" + }, + "access": "private", + "tagname": "", + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 147, + "description": "This function intends to return a common host for a bundle host (lazy engine). The root\npackage info should be the starting point (i.e., the project's package info). We do this\nby performing a breadth-first traversal until we find the intended lazy engine (represented\nas a package-info & the 1st argument passed to this function). As part of the traversal, we keep\ntrack of all paths to said engine; then, once we find the intended engine we use this to determine\nthe nearest common host amongst all shortest paths.\n\nSome context:\n\nFor a given engine/bundle host, this finds the lowest common ancestor that is considered a\nhost amongst _all_ engines by the same name in the project.\n\nFor example, given the following package structure:\n\n --Project--\n / \\\n / \\\nLazy Engine A \\\n Addon A\n |\n |\n Lazy Engine B\n / \\\n / \\\n Lazy Engine A Lazy Engine C\n\n- The LCA host for Lazy Engine A is the project\n- The LCA host for Lazy Engine B is the project\n- The LCA host for Lazy Engine C is Lazy Engine B\n\nThis also returns `hostAndAncestorBundledPackageInfos`, which are all bundled addons above a given host:\n\n- `hostAndAncestorBundledPackageInfos` for lazy engine A includes all non-lazy dependencies of its LCA host & above (in this case, just the project)\n- `hostAndAncestorBundledPackageInfos` for lazy engine B includes all non-lazy dependencies of its LCA host & above (in this case, just the project)\n- `hostAndAncestorBundledPackageInfos` for lazy engine C includes non-lazy deps of lazy engine B & non-lazy deps of the project (LCA host & above)\n\nThis is intended to mimic the behavior of `ancestorHostAddons` in `ember-engines`:\nhttps://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/engine-addon.js#L333\n\nUnfortunately, we can't easily repurpose the logic in `ember-engines` since the algorithm has to be different;\nin `ember-engines` we need access to the actual addon instance, however, this is intended to be used _during_\naddon instantiation, so we only have access to package-info objects. In having said this, we _can_ repurpose\nthe `hostPackageInfo` to determine the LCA host; see below `findLCAHost`.", + "itemtype": "method", + "name": "getHostAddonInfo", + "params": [ + { + "name": "packageInfoForLazyEngine", + "description": "", + "type": "PackageInfo" + } + ], + "return": { + "description": "}", + "type": " hostPackageInfo: PackageInfo, hostAndAncestorBundledPackageInfos: Set" + }, + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/host-info-cache.js", + "line": 270, + "description": "This returns the LCA host for a given engine; we use the associated package info\nto compute this (see `getHostAddonInfo` above); this finds the lowest common ancestor\nthat is considered a host amongst _all_ engines by the same name in the project. This\nfunction is intended to replace the original behavior in `ember-engines`.\n\nFor more info, see the original implementation here:\n\nhttps://github.com/ember-engines/ember-engines/blob/master/packages/ember-engines/lib/utils/find-lca-host.js", + "itemtype": "method", + "name": "findLCAHost", + "params": [ + { + "name": "engineInstance", + "description": "", + "type": "EngineAddon" + } + ], + "return": { + "description": "", + "type": "EngineAddon|EmberApp" + }, + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/instantiate-addons.js", + "line": 12, + "description": "Create instances of a set of \"child\" addons for a parent addon or project.", + "itemtype": "method", + "name": "instantiateAddons", + "params": [ + { + "name": "parent", + "description": "an Addon or Project that is the direct containing object of the list\n of children defined in addonPackages.", + "type": "Object" + }, + { + "name": "project", + "description": "the project that contains the parent (so either the addon's project\n if parent is an addon, or the project itself if it is a project). It is possible when\n constructing custom addon instances that the project will actually be undefined--various\n addon tests do this, for example.", + "type": "Project" + }, + { + "name": "a", + "description": "map of addon name (including scope) to an AddonInfo with the name, path and\n 'pkg' object for that addon's package.json). These are what is turned into addons.", + "type": "Object" + } + ], + "class": "Instrumentation", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 52, + "description": "Set when the `Watcher.detectWatchman` helper method finishes running,\nso that other areas of the system can be aware that watchman is being used.\n\nFor example, this information is used in the broccoli build pipeline to know\nif we can watch additional directories \"cheaply\".\n\nContains `enabled` and `version`.", + "access": "private", + "tagname": "", + "itemtype": "property", + "name": "_watchmanInfo", + "return": { + "description": "", + "type": "Object" + }, + "default": "false", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 154, + "description": "Returns the name from package.json.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "name", + "return": { + "description": "Package name", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 167, + "description": "Returns whether or not this is an Ember CLI project.\nThis checks whether ember-cli is listed in devDependencies.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "isEmberCLIProject", + "return": { + "description": "Whether this is an Ember CLI project", + "type": "Boolean" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 179, + "description": "Returns whether or not this is an Ember CLI addon.", + "itemtype": "method", + "name": "isEmberCLIAddon", + "return": { + "description": "Whether or not this is an Ember CLI Addon.", + "type": "Boolean" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 189, + "description": "Returns the path to the configuration.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "configPath", + "return": { + "description": "Configuration path", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 206, + "description": "Loads the configuration for this project and its addons.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "config", + "params": [ + { + "name": "env", + "description": "Environment name", + "type": "String" + } + ], + "return": { + "description": "Merged configuration object", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 225, + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "configWithoutCache", + "params": [ + { + "name": "env", + "description": "Environment name", + "type": "String" + } + ], + "return": { + "description": "Merged configuration object", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 244, + "description": "Returns the targets of this project, or the default targets if not present.", + "access": "public", + "tagname": "", + "itemtype": "property", + "name": "targets", + "return": { + "description": "Targets object", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 271, + "description": "Returns the addons configuration.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "getAddonsConfig", + "params": [ + { + "name": "env", + "description": "Environment name", + "type": "String" + }, + { + "name": "appConfig", + "description": "Application configuration", + "type": "Object" + } + ], + "return": { + "description": "Merged configuration of all addons", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 294, + "description": "Returns whether or not the given file name is present in this project.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "has", + "params": [ + { + "name": "file", + "description": "File name", + "type": "String" + } + ], + "return": { + "description": "Whether or not the file is present", + "type": "Boolean" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 306, + "description": "Resolves the absolute path to a file synchronously", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "resolveSync", + "params": [ + { + "name": "file", + "description": "File to resolve", + "type": "String" + } + ], + "return": { + "description": "Absolute path to file", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 320, + "description": "Calls `require` on a given module from the context of the project. For\ninstance, an addon may want to require a class from the root project's\nversion of ember-cli.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "require", + "params": [ + { + "name": "file", + "description": "File path or module name", + "type": "String" + } + ], + "return": { + "description": "Imported module", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 335, + "description": "Returns the dependencies from a package.json", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "dependencies", + "params": [ + { + "name": "pkg", + "description": "Package object", + "type": "Object", + "optional": true, + "optdefault": "this.pkg" + }, + { + "name": "excludeDevDeps", + "description": "Whether or not development dependencies should be excluded", + "type": "Boolean", + "optional": true, + "optdefault": "false" + } + ], + "return": { + "description": "Dependencies", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 355, + "description": "Provides the list of paths to consult for addons that may be provided\ninternally to this project. Used for middleware addons with built-in support.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "supportedInternalAddonPaths", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 381, + "description": "Discovers all addons for this project and stores their names and\npackage.json contents in this.addonPackages as key-value pairs.\n\nAny packageInfos that we find that are marked as not valid are excluded.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "discoverAddons", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 403, + "description": "Loads and initializes all addons for this project.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "initializeAddons", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 424, + "description": "Returns what commands are made available by addons by inspecting\n`includedCommands` for every addon.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonCommands", + "return": { + "description": "Addon names and command maps as key-value pairs", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 465, + "description": "Execute a given callback for every addon command.\nExample:\n\n```\nproject.eachAddonCommand(function(addonName, commands) {\n console.log('Addon ' + addonName + ' exported the following commands:' + commands.keys().join(', '));\n});\n```", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "eachAddonCommand", + "params": [ + { + "name": "callback", + "description": "[description]", + "type": "Function" + } + ], + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 488, + "description": "Path to the blueprints for this project.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "localBlueprintLookupPath", + "return": { + "description": "Path to blueprints", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 499, + "description": "Returns a list of paths (including addon paths) where blueprints will be looked up.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "blueprintLookupPaths", + "return": { + "description": "List of paths", + "type": "Array" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 517, + "description": "Returns a list of addon paths where blueprints will be looked up.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addonBlueprintLookupPaths", + "return": { + "description": "List of paths", + "type": "Array" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 540, + "description": "Reloads package.json of the project. Clears and reloads the packageInfo and\nper-bundle addon cache, too.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "reloadPkg", + "return": { + "description": "Package content", + "type": "Object" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 568, + "description": "Re-initializes addons.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "reloadAddons", + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 581, + "description": "Find an addon by its name", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "findAddonByName", + "params": [ + { + "name": "name", + "description": "Addon name as specified in package.json", + "type": "String" + } + ], + "return": { + "description": "Addon instance", + "type": "Addon" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 595, + "description": "Generate test file contents.\n\nThis method is supposed to be overwritten by test framework addons\nlike `ember-qunit`.", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "generateTestFile", + "params": [ + { + "name": "moduleName", + "description": "Name of the test module (e.g. `JSHint`)", + "type": "String" + }, + { + "name": "tests", + "description": "Array of tests with `name`, `passed` and `errorMessage` properties", + "type": "Object[]" + } + ], + "return": { + "description": "The test file content", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 619, + "description": "Returns a new project based on the first `package.json` that is found\nin `pathName`.\n\nIf the above `package.json` specifies `ember-addon.projectRoot`, we load\nthe project based on the relative path between this directory and the\nspecified `projectRoot`.", + "access": "private", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "closestSync", + "params": [ + { + "name": "pathName", + "description": "Path to your project", + "type": "String" + }, + { + "name": "_ui", + "description": "The UI instance to provide to the created Project.", + "type": "UI" + } + ], + "return": { + "description": "Project instance", + "type": "Project" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 670, + "description": "Returns a new project based on the first package.json that is found\nin `pathName`, or the nullProject.\n\nThe nullProject signifies no-project, but abides by the null object pattern", + "access": "private", + "tagname": "", + "static": 1, + "itemtype": "method", + "name": "projectOrnullProject", + "params": [ + { + "name": "_ui", + "description": "The UI instance to provide to the created Project.", + "type": "UI" + } + ], + "return": { + "description": "Project instance", + "type": "Project" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/project.js", + "line": 694, + "description": "Returns the project root based on the first package.json that is found", + "static": 1, + "itemtype": "method", + "name": "getProjectRoot", + "return": { + "description": "The project root directory", + "type": "String" + }, + "class": "Project", + "module": "ember-cli" + }, + { + "file": "lib/models/task.js", + "line": 10, + "description": "Interrupt comamd with an exit code\nCalled when the process is interrupted from outside, e.g. CTRL+C or `process.kill()`", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "ServeFilesAddon", + "module": "ember-cli" + }, + { + "file": "lib/tasks/build-watch.js", + "line": 52, + "description": "Exit silently", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "NpmTask", + "module": "ember-cli" + }, + { + "file": "lib/tasks/npm-task.js", + "line": 128, + "description": "This method will determine what package manager (npm or yarn) should be\nused to install the npm dependencies.\n\nSetting `this.useYarn` to `true` or `false` will force the use of yarn\nor npm respectively.\n\nIf `this.useYarn` is not set we check if `yarn.lock` exists and if\n`yarn` is available and in that case set `useYarn` to `true`.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "findPackageManager", + "return": { + "description": "", + "type": "Promise" + }, + "class": "NpmTask", + "module": "ember-cli" + }, + { + "file": "lib/tasks/serve.js", + "line": 102, + "description": "Exit silently", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/tasks/test-server.js", + "line": 61, + "description": "Exit silently", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "onInterrupt", + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/directory-for-package-name.js", + "line": 5, + "description": "Derive a directory name from a package name.\nTakes scoped packages into account.", + "itemtype": "method", + "name": "directoryForPackageName", + "params": [ + { + "name": "packageName", + "description": "", + "type": "String" + } + ], + "return": { + "description": "Derived directory name.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/ember-app-utils.js", + "line": 7, + "description": "Returns a normalized url given a string.\nReturns an empty string if `null`, `undefined` or an empty string are passed\nin.", + "itemtype": "method", + "name": "normalizeUrl", + "params": [ + { + "name": "Raw", + "description": "url.", + "type": "String" + } + ], + "return": { + "description": "Normalized url.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/ember-app-utils.js", + "line": 24, + "description": "Converts Javascript Object to a string.\nReturns an empty object string representation if a \"falsy\" value is passed\nin.", + "itemtype": "method", + "name": "convertObjectToString", + "params": [ + { + "name": "Any", + "description": "Javascript Object.", + "type": "Object" + } + ], + "return": { + "description": "A string representation of a Javascript Object.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/ember-app-utils.js", + "line": 37, + "description": "Returns the content for a specific type (section) for index.html.\n\n```\n{{content-for \"[type]\"}}\n```\n\nSupported types:\n\n- 'head'\n- 'config-module'\n- 'head-footer'\n- 'test-header-footer'\n- 'body-footer'\n- 'test-body-footer'", + "itemtype": "method", + "name": "contentFor", + "params": [ + { + "name": "config", + "description": "Ember.js application configuration", + "type": "Object" + }, + { + "name": "match", + "description": "Regular expression to match against", + "type": "RegExp" + }, + { + "name": "type", + "description": "Type of content", + "type": "String" + }, + { + "name": "options", + "description": "Settings that control the default content", + "type": "Object", + "props": [ + { + "name": "autoRun", + "description": "Controls whether to bootstrap the\n application or not", + "type": "Boolean" + }, + { + "name": "storeConfigInMeta", + "description": "Controls whether to include the\n contents of config", + "type": "Boolean" + } + ] + } + ], + "return": { + "description": "The content.", + "type": "String" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/insert-into-file.js", + "line": 6, + "description": "Inserts the given content into a file. If the `contentsToInsert` string is already\npresent in the current contents, the file will not be changed unless `force` option\nis passed.\n\nIf `options.before` is specified, `contentsToInsert` will be inserted before\nthe first instance of that string. If `options.after` is specified, the\ncontents will be inserted after the first instance of that string.\nIf the string specified by options.before or options.after is not in the file,\nno change will be made. Both of these options support regular expressions.\n\nIf neither `options.before` nor `options.after` are present, `contentsToInsert`\nwill be inserted at the end of the file.\n\nIt will create a new file if one doesn't exist, unless you set the `options.create`\noption to `false`.\n\nExample:\n\n```\n// app/router.js\nRouter.map(function () {\n});\n```\n\n```\ninsertIntoFile('app/router.js', ' this.route(\"admin\");', {\n after: 'Router.map(function () {' + EOL\n});\n```\n\n```\n// app/router.js\nRouter.map(function () {\n this.route(\"admin\");\n});\n```", + "itemtype": "method", + "name": "insertIntoFile", + "params": [ + { + "name": "pathRelativeToProjectRoot", + "description": "", + "type": "String" + }, + { + "name": "contentsToInsert", + "description": "", + "type": "String" + }, + { + "name": "providedOptions", + "description": "", + "type": "Object" + } + ], + "return": { + "description": "", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "ember-cli" + }, + { + "file": "lib/utilities/valid-project-name.js", + "line": 5, + "description": "Checks if the string starts with a number.", + "itemtype": "method", + "name": "startsWithNumber", + "return": { + "description": "", + "type": "Boolean" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/valid-project-name.js", + "line": 24, + "description": "Checks if project name is valid.\n\nInvalid names are some of the internal constants that Ember CLI uses, such as\n`app`, `ember`, `ember-cli`, `test`, and `vendor`. Names that start with\nnumbers are considered invalid as well.", + "itemtype": "method", + "name": "validProjectName", + "params": [ + { + "name": "name", + "description": "The name of Ember CLI project", + "type": "String" + } + ], + "return": { + "description": "", + "type": "Boolean" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 47, + "description": "Drops all the interruption handlers and disables an ability to add new one\n\nNote: We don't call `captureExit.releaseExit() here.\nIn some rare scenarios it can lead to the hard to debug issues.\nsee: https://github.com/ember-cli/ember-cli/issues/6779#issuecomment-280940358\n\nWe can more or less feel comfortable with a captured exit because it behaves very\nsimilar to the original `exit` except of cases when we need to do cleanup before exit.", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "release", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 69, + "description": "Add process interruption handler\n\nWhen the first handler is added then automatically\nsets up process interruption signals listeners", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "addHandler", + "params": [ + { + "name": "cb", + "description": "Callback to be called when process interruption fired", + "type": "Function" + } + ], + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 97, + "description": "Remove process interruption handler\n\nIf there are no remaining handlers after removal\nthen clean up all the process interruption signal listeners", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "removeHandler", + "params": [ + { + "name": "cb", + "description": "Callback to be removed", + "type": "Function" + } + ], + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 122, + "description": "Sets up listeners for interruption signals\n\nWhen one of these signals is caught than raise process.exit()\nwhich enforces `capture-exit` to run registered interruption handlers", + "itemtype": "method", + "name": "setupSignalsTrap", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 140, + "description": "Removes interruption signal listeners and tears down capture-exit", + "itemtype": "method", + "name": "teardownSignalsTrap", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/will-interrupt-process.js", + "line": 155, + "description": "Suppresses \"Terminate batch job (Y/N)\" confirmation on Windows", + "itemtype": "method", + "name": "trapWindowsSignals", + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 38, + "description": "if not windows, will fulfill with:\n `{ windows: false, elevated: null)`\nif windows, and elevated will fulfill with:\n `{ windows: false, elevated: true)`\nif windows, and is NOT elevated will fulfill with:\n `{ windows: false, elevated: false)`\n will include heplful warning, so that users know (if possible) how to\n achieve better windows build performance", + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "checkIfSymlinksNeedToBeEnabled", + "return": { + "description": "Object describing whether we're on windows and if admin rights exist", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 60, + "description": "sets up a WindowsSymlinkChecker\n\nproviding it with defaults for:\n\n* if we are on windows\n* if we can symlink\n* a reference to exec", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_setup", + "params": [ + { + "name": "UI", + "description": "", + "type": "UI" + } + ], + "return": { + "description": "", + "type": "WindowsSymlinkChecker" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 81, + "access": "public", + "tagname": "", + "itemtype": "method", + "name": "checkIfSymlinksNeedToBeEnabled", + "return": { + "description": "Object describing whether we're on windows and if admin rights exist", + "type": "Promise" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + }, + { + "file": "lib/utilities/windows-admin.js", + "line": 104, + "description": "Uses the eon-old command NET SESSION to determine whether or not the\n current user has elevated rights (think sudo, but Windows).", + "access": "private", + "tagname": "", + "itemtype": "method", + "name": "_checkForElevatedRights", + "params": [ + { + "name": "ui", + "description": "- ui object used to call writeLine();", + "type": "Object" + } + ], + "return": { + "description": "Object describing whether we're on windows and if admin rights exist", + "type": "Object" + }, + "class": "WindowsSymlinkChecker", + "module": "is-lazy-engine" + } + ], + "warnings": [] +}