Skip to content

Commit 9cc255e

Browse files
author
Angular Builds
committed
c74e61842 refactor(@angular-devkit/build-angular): export application builder for experimental programmatic usage
1 parent 96b8ecc commit 9cc255e

24 files changed

+90
-40
lines changed

package.json

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
{
22
"name": "@angular-devkit/build-angular",
3-
"version": "17.0.0-next.8+sha-3938863",
3+
"version": "17.0.0-next.8+sha-c74e618",
44
"description": "Angular Webpack Build Facade",
55
"main": "src/index.js",
66
"typings": "src/index.d.ts",
77
"builders": "builders.json",
88
"dependencies": {
99
"@ampproject/remapping": "2.2.1",
10-
"@angular-devkit/architect": "github:angular/angular-devkit-architect-builds#3938863b9",
11-
"@angular-devkit/build-webpack": "github:angular/angular-devkit-build-webpack-builds#3938863b9",
12-
"@angular-devkit/core": "github:angular/angular-devkit-core-builds#3938863b9",
10+
"@angular-devkit/architect": "github:angular/angular-devkit-architect-builds#c74e61842",
11+
"@angular-devkit/build-webpack": "github:angular/angular-devkit-build-webpack-builds#c74e61842",
12+
"@angular-devkit/core": "github:angular/angular-devkit-core-builds#c74e61842",
1313
"@babel/core": "7.23.0",
1414
"@babel/generator": "7.23.0",
1515
"@babel/helper-annotate-as-pure": "7.22.5",
@@ -20,7 +20,7 @@
2020
"@babel/preset-env": "7.22.20",
2121
"@babel/runtime": "7.23.1",
2222
"@discoveryjs/json-ext": "0.5.7",
23-
"@ngtools/webpack": "github:angular/ngtools-webpack-builds#3938863b9",
23+
"@ngtools/webpack": "github:angular/ngtools-webpack-builds#c74e61842",
2424
"@vitejs/plugin-basic-ssl": "1.0.1",
2525
"ansi-colors": "4.1.3",
2626
"autoprefixer": "10.4.16",

src/builders/application/index.d.ts

+18-2
Original file line numberDiff line numberDiff line change
@@ -6,21 +6,37 @@
66
* found in the LICENSE file at https://angular.io/license
77
*/
88
import { BuilderContext, BuilderOutput } from '@angular-devkit/architect';
9+
import type { Plugin } from 'esbuild';
910
import { BuildOutputFile } from '../../tools/esbuild/bundler-context';
1011
import { ApplicationBuilderInternalOptions } from './options';
1112
import { Schema as ApplicationBuilderOptions } from './schema';
13+
export { ApplicationBuilderOptions };
1214
export declare function buildApplicationInternal(options: ApplicationBuilderInternalOptions, context: BuilderContext & {
1315
signal?: AbortSignal;
1416
}, infrastructureSettings?: {
1517
write?: boolean;
16-
}): AsyncIterable<BuilderOutput & {
18+
}, plugins?: Plugin[]): AsyncIterable<BuilderOutput & {
1719
outputFiles?: BuildOutputFile[];
1820
assetFiles?: {
1921
source: string;
2022
destination: string;
2123
}[];
2224
}>;
23-
export declare function buildApplication(options: ApplicationBuilderOptions, context: BuilderContext): AsyncIterable<BuilderOutput & {
25+
/**
26+
* Builds an application using the `application` builder with the provided
27+
* options.
28+
*
29+
* Usage of the `plugins` parameter is NOT supported and may cause unexpected
30+
* build output or build failures.
31+
*
32+
* @experimental Direct usage of this function is considered experimental.
33+
*
34+
* @param options The options defined by the builder's schema to use.
35+
* @param context An Architect builder context instance.
36+
* @param plugins An array of plugins to apply to the main code bundling.
37+
* @returns The build output results of the build.
38+
*/
39+
export declare function buildApplication(options: ApplicationBuilderOptions, context: BuilderContext, plugins?: Plugin[]): AsyncIterable<BuilderOutput & {
2440
outputFiles?: BuildOutputFile[];
2541
assetFiles?: {
2642
source: string;

src/builders/application/index.js

+19-5
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)