Project - ember-cli
The Project model is tied to your package.json. It is instantiated by giving closestSync the path to your project.
Static Method Summary
| Static Public Methods | |
|---|---|
| public static |
getProjectRoot( ): String Returns the project root based on the first package.json that is found |
| Static Private Methods | |
|---|---|
| private static |
closestSync(pathName, _ui): Project Returns a new project based on the first |
| private static |
projectOrnullProject(_ui): Project Returns a new project based on the first package.json that is found in |
Constructor Summary
| Public Constructors | |
|---|---|
| public |
Project(root, pkg, ui, cli) The Project model is tied to your package.json. It is instantiated by giving closestSync the path to your project. |
Property Summary
| Public Properties | |
|---|---|
| public |
targets: Unknown Returns the targets of this project, or the default targets if not present. |
| Private Properties | |
|---|---|
| private |
_watchmanInfo: Unknown Set when the |
Method Summary
| Public Methods | |
|---|---|
| public |
Loads the configuration for this project and its addons. |
| public |
findAddonByName(name): Addon Find an addon by its name |
| public |
generateTestFile(moduleName, tests): String Generate test file contents. |
| public |
Returns whether or not this is an Ember CLI addon. |
| public |
Calls |
| Private Methods | |
|---|---|
| private |
Returns a list of addon paths where blueprints will be looked up. |
| private |
addonCommands( ): Object Returns what commands are made available by addons by inspecting |
| private |
Returns a list of paths (including addon paths) where blueprints will be looked up. |
| private |
configPath( ): String Returns the path to the configuration. |
| private |
configWithoutCache(env): Object |
| private |
dependencies([pkg=this.pkg], [excludeDevDeps=false]): Object Returns the dependencies from a package.json |
| private |
Discovers all addons for this project and stores their names and package.json contents in this.addonPackages as key-value pairs. |
| private |
eachAddonCommand(callback) Execute a given callback for every addon command. Example: |
| private |
getAddonsConfig(env, appConfig): Object Returns the addons configuration. |
| private |
Returns whether or not the given file name is present in this project. |
| private |
Loads and initializes all addons for this project. |
| private |
Returns whether or not this is an Ember CLI project. This checks whether ember-cli is listed in devDependencies. |
| private |
Path to the blueprints for this project. |
| private |
Returns the name from package.json. |
| private |
reloadAddons( ) Re-initializes addons. |
| private |
Reloads package.json of the project. Clears and reloads the packageInfo and per-bundle addon cache, too. |
| private |
resolveSync(file): String Resolves the absolute path to a file synchronously |
| private |
Provides the list of paths to consult for addons that may be provided internally to this project. Used for middleware addons with built-in support. |
Static Public Methods
Returns the project root based on the first package.json that is found
Static Private Methods
Returns a new project based on the first package.json that is found
in pathName.
If the above package.json specifies ember-addon.projectRoot, we load
the project based on the relative path between this directory and the
specified projectRoot.
Parameters:
| Name | Type | Attribute | Description |
|---|---|---|---|
| pathName | String |
|
Path to your project |
| _ui | UI |
|
The UI instance to provide to the created Project. |
Return:
Returns a new project based on the first package.json that is found
in pathName, or the nullProject.
The nullProject signifies no-project, but abides by the null object pattern
Parameters:
| Name | Type | Attribute | Description |
|---|---|---|---|
| _ui | UI |
|
The UI instance to provide to the created Project. |
Return:
Public Constructors
Public Properties
Returns the targets of this project, or the default targets if not present.
Private Properties
Set when the Watcher.detectWatchman helper method finishes running,
so that other areas of the system can be aware that watchman is being used.
For example, this information is used in the broccoli build pipeline to know if we can watch additional directories "cheaply".
Contains enabled and version.
Public Methods
Loads the configuration for this project and its addons.
Parameters:
| Name | Type | Attribute | Description |
|---|---|---|---|
| env | String |
|
Environment name |
Find an addon by its name
Parameters:
| Name | Type | Attribute | Description |
|---|---|---|---|
| name | String |
|
Addon name as specified in package.json |
Return:
Generate test file contents.
This method is supposed to be overwritten by test framework addons
like ember-qunit.
Returns whether or not this is an Ember CLI addon.
Calls require on a given module from the context of the project. For
instance, an addon may want to require a class from the root project's
version of ember-cli.
Parameters:
| Name | Type | Attribute | Description |
|---|---|---|---|
| file | String |
|
File path or module name |
Return:
Private Methods
Returns a list of addon paths where blueprints will be looked up.
Return:
Returns what commands are made available by addons by inspecting
includedCommands for every addon.
Returns a list of paths (including addon paths) where blueprints will be looked up.
Return:
Returns the path to the configuration.
Parameters:
| Name | Type | Attribute | Description |
|---|---|---|---|
| env | String |
|
Environment name |
Returns the dependencies from a package.json
Parameters:
| Name | Type | Attribute | Description |
|---|---|---|---|
| pkg | Object |
|
Package object |
| excludeDevDeps | Boolean |
|
Whether or not development dependencies should be excluded |
Return:
Discovers all addons for this project and stores their names and package.json contents in this.addonPackages as key-value pairs.
Any packageInfos that we find that are marked as not valid are excluded.
Execute a given callback for every addon command. Example:
project.eachAddonCommand(function(addonName, commands) {
console.log('Addon ' + addonName + ' exported the following commands:' + commands.keys().join(', '));
});
Parameters:
| Name | Type | Attribute | Description |
|---|---|---|---|
| callback | Function |
|
[description] |
Returns the addons configuration.
Returns whether or not the given file name is present in this project.
Parameters:
| Name | Type | Attribute | Description |
|---|---|---|---|
| file | String |
|
File name |
Loads and initializes all addons for this project.
Returns whether or not this is an Ember CLI project. This checks whether ember-cli is listed in devDependencies.
Path to the blueprints for this project.
Returns the name from package.json.
Return:
Reloads package.json of the project. Clears and reloads the packageInfo and per-bundle addon cache, too.
Return:
Resolves the absolute path to a file synchronously
Parameters:
| Name | Type | Attribute | Description |
|---|---|---|---|
| file | String |
|
File to resolve |
Provides the list of paths to consult for addons that may be provided internally to this project. Used for middleware addons with built-in support.