Home > @microsoft/rush-lib > RushConfigurationProject
RushConfigurationProject class
This represents the configuration of a project that is built by Rush, based on the Rush.json configuration file.
Signature:
export declare class RushConfigurationProject
Remarks
The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the RushConfigurationProject
class.
Properties
Property | Modifiers | Type | Description |
---|---|---|---|
cyclicDependencyProjects | Set<string> | A list of local projects that appear as devDependencies for this project, but cannot be locally linked because it would create a cyclic dependency; instead, the last published version will be installed in the Common folder.These are package names that would be found by RushConfiguration.getProjectByName(). | |
downstreamDependencyProjects | string[] | A list of projects within the Rush configuration which directly depend on this package. | |
isMainProject | boolean | (BETA) Indicate whether this project is the main project for the related version policy.False if the project is not for publishing. True if the project is individually versioned or if its lockstep version policy does not specify main project. False if the project is lockstepped and is not the main project for its version policy. | |
localDependencyProjects | ReadonlyArray<RushConfigurationProject> | A map of projects within the Rush configuration which are directly depended on by this project | |
packageJson | IPackageJson | The parsed NPM “package.json” file from projectFolder. | |
packageJsonEditor | PackageJsonEditor | (BETA) A useful wrapper around the package.json file for making modifications | |
packageName | string | The name of the NPM package. An error is reported if this name is not identical to packageJson.name.Example: @scope/MyProject |
|
projectFolder | string | The full path of the folder that contains the project to be built by Rush.Example: C:\MyRepo\libraries\my-project |
|
projectRelativeFolder | string | The relative path of the folder that contains the project to be built by Rush.Example: libraries\my-project |
|
projectRushTempFolder | string | The project-specific Rush temp folder. This folder is used to store Rush-specific temporary files.Example: C:\MyRepo\libraries\my-project\.rush\temp |
|
reviewCategory | string | undefined | The review category name, or undefined if no category was assigned. This name must be one of the valid choices listed in RushConfiguration.reviewCategories. | |
rushConfiguration | RushConfiguration | The Rush configuration for the monorepo that the project belongs to. | |
shouldPublish | boolean | A flag which indicates whether changes to this project should be published. This controls whether or not the project would show up when running rush change , and whether or not it should be published during rush publish . |
|
skipRushCheck | boolean | If true, then this project will be ignored by the “rush check” command. The default value is false. | |
tempProjectName | string | The unique name for the temporary project that will be generated in the Common folder. For example, if the project name is @scope/MyProject , the temporary project name might be @rush-temp/MyProject-2 .Example: @rush-temp/MyProject-2 |
|
unscopedTempProjectName | string | The unscoped temporary project nameExample: my-project-2 |
|
versionPolicy | VersionPolicy | undefined | (BETA) Version policy of the project | |
versionPolicyName | string | undefined | (BETA) Name of the version policy used by this project. |