mirror of
https://github.com/angular/angular-cli.git
synced 2025-05-17 02:54:21 +08:00
37 lines
1.2 KiB
TypeScript
37 lines
1.2 KiB
TypeScript
/**
|
|
* @license
|
|
* Copyright Google Inc. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by an MIT-style license that can be
|
|
* found in the LICENSE file at https://angular.io/license
|
|
*/
|
|
|
|
import { SchematicsException, Tree } from '@angular-devkit/schematics';
|
|
import { getProject, isWorkspaceProject } from './project';
|
|
import { WorkspaceProject, WorkspaceSchema, WorkspaceTargets } from './workspace-models';
|
|
|
|
export function getProjectTargets(project: WorkspaceProject): WorkspaceTargets;
|
|
export function getProjectTargets(
|
|
workspaceOrHost: WorkspaceSchema | Tree,
|
|
projectName: string,
|
|
): WorkspaceTargets;
|
|
export function getProjectTargets(
|
|
projectOrHost: WorkspaceProject | Tree | WorkspaceSchema,
|
|
projectName = '',
|
|
): WorkspaceTargets {
|
|
const project = isWorkspaceProject(projectOrHost)
|
|
? projectOrHost
|
|
: getProject(projectOrHost, projectName);
|
|
|
|
const projectTargets = project.targets || project.architect;
|
|
if (!projectTargets) {
|
|
throw new Error('Project target not found.');
|
|
}
|
|
|
|
return projectTargets;
|
|
}
|
|
|
|
export function targetBuildNotFoundError(): SchematicsException {
|
|
return new SchematicsException(`Project target "build" not found.`);
|
|
}
|