@angular-devkit/build-angular

  • Version 19.2.9
  • Published
  • 723 kB
  • 55 dependencies
  • MIT license

Install

npm i @angular-devkit/build-angular
yarn add @angular-devkit/build-angular
pnpm add @angular-devkit/build-angular

Overview

Angular Webpack Build Facade

Index

Functions

function executeBrowserBuilder

executeBrowserBuilder: (
options: BrowserBuilderSchema,
context: BuilderContext,
transforms?: {
webpackConfiguration?: ExecutionTransformer<webpack.Configuration>;
logging?: WebpackLoggingCallback;
indexHtml?: IndexHtmlTransform;
}
) => Observable<any>;
  • Direct usage of this function is considered experimental.

    Modifiers

    • @experimental

function executeDevServerBuilder

executeDevServerBuilder: (
options: DevServerBuilderOptions,
context: BuilderContext,
transforms?: {
webpackConfiguration?: ExecutionTransformer<import('webpack').Configuration>;
logging?: import('@angular-devkit/build-webpack').WebpackLoggingCallback;
indexHtml?: IndexHtmlTransform;
},
extensions?: {
buildPlugins?: Plugin[];
middleware?: ((
req: http.IncomingMessage,
res: http.ServerResponse,
next: (err?: unknown) => void
) => void)[];
builderSelector?: (
info: BuilderSelectorInfo,
logger: BuilderContext
) => string;
}
) => Observable<DevServerBuilderOutput>;
  • A Builder that executes a development server based on the provided browser target option.

    Usage of the transforms and/or extensions parameters is NOT supported and may cause unexpected build output or build failures.

    Parameter options

    Dev Server options.

    Parameter context

    The build context.

    Parameter transforms

    A map of transforms that can be used to hook into some logic (such as transforming webpack configuration before passing it to webpack).

    Parameter extensions

    An optional object containing an array of build plugins (esbuild-based) and/or HTTP request middleware.

    Direct usage of this function is considered experimental.

    Modifiers

    • @experimental

function executeExtractI18nBuilder

executeExtractI18nBuilder: (
options: ExtractI18nBuilderOptions,
context: BuilderContext,
transforms?: {
webpackConfiguration?: ExecutionTransformer<webpack.Configuration>;
}
) => Promise<BuilderOutput>;
  • Direct usage of this function is considered experimental.

    Modifiers

    • @experimental

function executeKarmaBuilder

executeKarmaBuilder: (
options: KarmaBuilderOptions,
context: BuilderContext,
transforms?: {
webpackConfiguration?: ExecutionTransformer<Configuration>;
karmaOptions?: (options: KarmaConfigOptions) => KarmaConfigOptions;
}
) => Observable<BuilderOutput>;
  • Direct usage of this function is considered experimental.

    Modifiers

    • @experimental

function executeNgPackagrBuilder

executeNgPackagrBuilder: (
options: NgPackagrBuilderOptions,
context: BuilderContext
) => Observable<BuilderOutput>;
  • Direct usage of this function is considered experimental.

    Modifiers

    • @experimental

function executeProtractorBuilder

executeProtractorBuilder: (
options: ProtractorBuilderOptions,
context: BuilderContext
) => Promise<BuilderOutput>;
  • Direct usage of this function is considered experimental.

    Modifiers

    • @experimental

function executeServerBuilder

executeServerBuilder: (
options: ServerBuilderOptions,
context: BuilderContext,
transforms?: {
webpackConfiguration?: ExecutionTransformer<webpack.Configuration>;
}
) => Observable<any>;
  • Direct usage of this function is considered experimental.

    Modifiers

    • @experimental

function executeSSRDevServerBuilder

executeSSRDevServerBuilder: (
options: SSRDevServerBuilderOptions,
context: BuilderContext
) => Observable<any>;

    Enums

    enum CrossOrigin

    enum CrossOrigin {
    Anonymous = 'anonymous',
    None = 'none',
    UseCredentials = 'use-credentials',
    }
    • Define the crossorigin attribute setting of elements that provide CORS support.

    member Anonymous

    Anonymous = 'anonymous'

      member None

      None = 'none'

        member UseCredentials

        UseCredentials = 'use-credentials'

          enum OutputHashing

          enum OutputHashing {
          All = 'all',
          Bundles = 'bundles',
          Media = 'media',
          None = 'none',
          }
          • Define the output filename cache-busting hashing mode.

          member All

          All = 'all'

            member Bundles

            Bundles = 'bundles'

              member Media

              Media = 'media'

                member None

                None = 'none'

                  enum Type

                  enum Type {
                  All = 'all',
                  AllScript = 'allScript',
                  Any = 'any',
                  AnyComponentStyle = 'anyComponentStyle',
                  AnyScript = 'anyScript',
                  Bundle = 'bundle',
                  Initial = 'initial',
                  }
                  • The type of budget.

                  member All

                  All = 'all'

                    member AllScript

                    AllScript = 'allScript'

                      member Any

                      Any = 'any'

                        member AnyComponentStyle

                        AnyComponentStyle = 'anyComponentStyle'

                          member AnyScript

                          AnyScript = 'anyScript'

                            member Bundle

                            Bundle = 'bundle'

                              member Initial

                              Initial = 'initial'

                                Type Aliases

                                type AssetPattern

                                type AssetPattern = AssetPatternClass | string;

                                  type AssetPatternObject

                                  type AssetPatternClass = {
                                  /**
                                  * Allow glob patterns to follow symlink directories. This allows subdirectories of the
                                  * symlink to be searched.
                                  */
                                  followSymlinks?: boolean;
                                  /**
                                  * The pattern to match.
                                  */
                                  glob: string;
                                  /**
                                  * An array of globs to ignore.
                                  */
                                  ignore?: string[];
                                  /**
                                  * The input directory path in which to apply 'glob'. Defaults to the project root.
                                  */
                                  input: string;
                                  /**
                                  * Absolute path within the output.
                                  */
                                  output?: string;
                                  };

                                    type BrowserBuilderOptions

                                    type Schema = {
                                    /**
                                    * A list of CommonJS or AMD packages that are allowed to be used without a build time
                                    * warning. Use `'*'` to allow all.
                                    */
                                    allowedCommonJsDependencies?: string[];
                                    /**
                                    * Build using Ahead of Time compilation.
                                    */
                                    aot?: boolean;
                                    /**
                                    * List of static application assets.
                                    */
                                    assets?: AssetPattern[];
                                    /**
                                    * Base url for the application being built.
                                    */
                                    baseHref?: string;
                                    /**
                                    * Budget thresholds to ensure parts of your application stay within boundaries which you
                                    * set.
                                    */
                                    budgets?: Budget[];
                                    /**
                                    * Enables advanced build optimizations when using the 'aot' option.
                                    */
                                    buildOptimizer?: boolean;
                                    /**
                                    * Generate a seperate bundle containing code used across multiple bundles.
                                    */
                                    commonChunk?: boolean;
                                    /**
                                    * Define the crossorigin attribute setting of elements that provide CORS support.
                                    */
                                    crossOrigin?: CrossOrigin;
                                    /**
                                    * Delete the output path before building.
                                    */
                                    deleteOutputPath?: boolean;
                                    /**
                                    * Customize the base path for the URLs of resources in 'index.html' and component
                                    * stylesheets. This option is only necessary for specific deployment scenarios, such as
                                    * with Angular Elements or when utilizing different CDN locations.
                                    */
                                    deployUrl?: string;
                                    /**
                                    * Extract all licenses in a separate file.
                                    */
                                    extractLicenses?: boolean;
                                    /**
                                    * Replace compilation source files with other compilation source files in the build.
                                    */
                                    fileReplacements?: FileReplacement[];
                                    /**
                                    * How to handle duplicate translations for i18n.
                                    */
                                    i18nDuplicateTranslation?: I18NTranslation;
                                    /**
                                    * How to handle missing translations for i18n.
                                    */
                                    i18nMissingTranslation?: I18NTranslation;
                                    /**
                                    * Configures the generation of the application's HTML index.
                                    */
                                    index: IndexUnion;
                                    /**
                                    * The stylesheet language to use for the application's inline component styles.
                                    */
                                    inlineStyleLanguage?: InlineStyleLanguage;
                                    /**
                                    * Translate the bundles in one or more locales.
                                    */
                                    localize?: Localize;
                                    /**
                                    * The full path for the main entry point to the app, relative to the current workspace.
                                    */
                                    main: string;
                                    /**
                                    * Use file name for lazy loaded chunks.
                                    */
                                    namedChunks?: boolean;
                                    /**
                                    * Path to ngsw-config.json.
                                    */
                                    ngswConfigPath?: string;
                                    /**
                                    * Enables optimization of the build output. Including minification of scripts and styles,
                                    * tree-shaking, dead-code elimination, inlining of critical CSS and fonts inlining. For
                                    * more information, see
                                    * https://angular.dev/reference/configs/workspace-config#optimization-configuration.
                                    */
                                    optimization?: OptimizationUnion;
                                    /**
                                    * Define the output filename cache-busting hashing mode.
                                    */
                                    outputHashing?: OutputHashing;
                                    /**
                                    * The full path for the new output directory, relative to the current workspace.
                                    */
                                    outputPath: string;
                                    /**
                                    * Enable and define the file watching poll time period in milliseconds.
                                    */
                                    poll?: number;
                                    /**
                                    * Polyfills to be included in the build.
                                    */
                                    polyfills?: Polyfills;
                                    /**
                                    * Do not use the real path when resolving modules. If unset then will default to `true` if
                                    * NodeJS option --preserve-symlinks is set.
                                    */
                                    preserveSymlinks?: boolean;
                                    /**
                                    * Log progress to the console while building.
                                    */
                                    progress?: boolean;
                                    /**
                                    * The path where style resources will be placed, relative to outputPath.
                                    */
                                    resourcesOutputPath?: string;
                                    /**
                                    * Global scripts to be included in the build.
                                    */
                                    scripts?: ScriptElement[];
                                    /**
                                    * Generates a service worker config for production builds.
                                    */
                                    serviceWorker?: boolean;
                                    /**
                                    * Output source maps for scripts and styles. For more information, see
                                    * https://angular.dev/reference/configs/workspace-config#source-map-configuration.
                                    */
                                    sourceMap?: SourceMapUnion;
                                    /**
                                    * Generates a 'stats.json' file which can be analyzed using tools such as
                                    * 'webpack-bundle-analyzer'.
                                    */
                                    statsJson?: boolean;
                                    /**
                                    * Options to pass to style preprocessors.
                                    */
                                    stylePreprocessorOptions?: StylePreprocessorOptions;
                                    /**
                                    * Global styles to be included in the build.
                                    */
                                    styles?: StyleElement[];
                                    /**
                                    * Enables the use of subresource integrity validation.
                                    */
                                    subresourceIntegrity?: boolean;
                                    /**
                                    * The full path for the TypeScript configuration file, relative to the current workspace.
                                    */
                                    tsConfig: string;
                                    /**
                                    * Generate a seperate bundle containing only vendor libraries. This option should only be
                                    * used for development to reduce the incremental compilation time.
                                    */
                                    vendorChunk?: boolean;
                                    /**
                                    * Adds more details to output logging.
                                    */
                                    verbose?: boolean;
                                    /**
                                    * Run build when files change.
                                    */
                                    watch?: boolean;
                                    /**
                                    * TypeScript configuration for Web Worker modules.
                                    */
                                    webWorkerTsConfig?: string;
                                    };
                                    • Browser target options

                                    type BrowserBuilderOutput

                                    type BrowserBuilderOutput = BuilderOutput & {
                                    stats: BuildEventStats;
                                    baseOutputPath: string;
                                    outputs: {
                                    locale?: string;
                                    path: string;
                                    baseHref?: string;
                                    }[];
                                    };
                                    • Direct usage of this type is considered experimental.

                                      Modifiers

                                      • @experimental

                                    type Budget

                                    type Budget = {
                                    /**
                                    * The baseline size for comparison.
                                    */
                                    baseline?: string;
                                    /**
                                    * The threshold for error relative to the baseline (min & max).
                                    */
                                    error?: string;
                                    /**
                                    * The maximum threshold for error relative to the baseline.
                                    */
                                    maximumError?: string;
                                    /**
                                    * The maximum threshold for warning relative to the baseline.
                                    */
                                    maximumWarning?: string;
                                    /**
                                    * The minimum threshold for error relative to the baseline.
                                    */
                                    minimumError?: string;
                                    /**
                                    * The minimum threshold for warning relative to the baseline.
                                    */
                                    minimumWarning?: string;
                                    /**
                                    * The name of the bundle.
                                    */
                                    name?: string;
                                    /**
                                    * The type of budget.
                                    */
                                    type: Type;
                                    /**
                                    * The threshold for warning relative to the baseline (min & max).
                                    */
                                    warning?: string;
                                    };

                                      type DevServerBuilderOptions

                                      type Schema = {
                                      /**
                                      * List of hosts that are allowed to access the dev server.
                                      */
                                      allowedHosts?: string[];
                                      /**
                                      * A build builder target to serve in the format of `project:target[:configuration]`. You
                                      * can also pass in more than one configuration name as a comma-separated list. Example:
                                      * `project:target:production,staging`.
                                      */
                                      buildTarget: string;
                                      /**
                                      * Don't verify connected clients are part of allowed hosts.
                                      */
                                      disableHostCheck?: boolean;
                                      /**
                                      * Force the development server to use the 'browser-esbuild' builder when building.
                                      */
                                      forceEsbuild?: boolean;
                                      /**
                                      * Custom HTTP headers to be added to all responses.
                                      */
                                      headers?: {
                                      [key: string]: string;
                                      };
                                      /**
                                      * Enable hot module replacement.
                                      */
                                      hmr?: boolean;
                                      /**
                                      * Host to listen on.
                                      */
                                      host?: string;
                                      /**
                                      * Activate debugging inspector. This option only has an effect when 'SSR' or 'SSG' are
                                      * enabled.
                                      */
                                      inspect?: Inspect;
                                      /**
                                      * Whether to reload the page on change, using live-reload.
                                      */
                                      liveReload?: boolean;
                                      /**
                                      * Opens the url in default browser.
                                      */
                                      open?: boolean;
                                      /**
                                      * Enable and define the file watching poll time period in milliseconds.
                                      */
                                      poll?: number;
                                      /**
                                      * Port to listen on.
                                      */
                                      port?: number;
                                      /**
                                      * Enable and control the Vite-based development server's prebundling capabilities. To
                                      * enable prebundling, the Angular CLI cache must also be enabled. This option has no effect
                                      * when using the 'browser' or other Webpack-based builders.
                                      */
                                      prebundle?: PrebundleUnion;
                                      /**
                                      * Proxy configuration file. For more information, see
                                      * https://angular.dev/tools/cli/serve#proxying-to-a-backend-server.
                                      */
                                      proxyConfig?: string;
                                      /**
                                      * The URL that the browser client (or live-reload client, if enabled) should use to connect
                                      * to the development server. Use for a complex dev server setup, such as one with reverse
                                      * proxies. This option has no effect when using the 'application' or other esbuild-based
                                      * builders.
                                      */
                                      publicHost?: string;
                                      /**
                                      * The pathname where the application will be served.
                                      */
                                      servePath?: string;
                                      /**
                                      * Serve using HTTPS.
                                      */
                                      ssl?: boolean;
                                      /**
                                      * SSL certificate to use for serving HTTPS.
                                      */
                                      sslCert?: string;
                                      /**
                                      * SSL key to use for serving HTTPS.
                                      */
                                      sslKey?: string;
                                      /**
                                      * Adds more details to output logging.
                                      */
                                      verbose?: boolean;
                                      /**
                                      * Rebuild on change.
                                      */
                                      watch?: boolean;
                                      };
                                      • Dev Server target options for Build Facade.

                                      type ExecutionTransformer

                                      type ExecutionTransformer<T> = (input: T) => T | Promise<T>;
                                      • Copyright Google LLC 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.dev/license

                                      type ExtractI18nBuilderOptions

                                      type Schema = {
                                      /**
                                      * A builder target to extract i18n messages in the format of
                                      * `project:target[:configuration]`. You can also pass in more than one configuration name
                                      * as a comma-separated list. Example: `project:target:production,staging`.
                                      */
                                      buildTarget?: string;
                                      /**
                                      * Output format for the generated file.
                                      */
                                      format?: Format;
                                      /**
                                      * Name of the file to output.
                                      */
                                      outFile?: string;
                                      /**
                                      * Path where output will be placed.
                                      */
                                      outputPath?: string;
                                      /**
                                      * Log progress to the console.
                                      */
                                      progress?: boolean;
                                      };
                                      • Extract i18n target options for Build Facade.

                                      type FileReplacement

                                      type FileReplacement = {
                                      replace?: string;
                                      replaceWith?: string;
                                      src?: string;
                                      with?: string;
                                      };

                                        type KarmaBuilderOptions

                                        type Schema = {
                                        /**
                                        * Run tests using Ahead of Time compilation.
                                        */
                                        aot?: boolean;
                                        /**
                                        * List of static application assets.
                                        */
                                        assets?: AssetPattern[];
                                        /**
                                        * Override which browsers tests are run against. Set to `false` to not use any browser.
                                        */
                                        browsers?: Browsers;
                                        /**
                                        * Determines how to build the code under test. If set to 'detect', attempts to follow the
                                        * development builder.
                                        */
                                        builderMode?: BuilderMode;
                                        /**
                                        * Output a code coverage report.
                                        */
                                        codeCoverage?: boolean;
                                        /**
                                        * Globs to exclude from code coverage.
                                        */
                                        codeCoverageExclude?: string[];
                                        /**
                                        * Globs of files to exclude, relative to the project root.
                                        */
                                        exclude?: string[];
                                        /**
                                        * Replace compilation source files with other compilation source files in the build.
                                        */
                                        fileReplacements?: FileReplacement[];
                                        /**
                                        * Globs of files to include, relative to project root.
                                        * There are 2 special cases:
                                        * - when a path to directory is provided, all spec files ending ".spec.@(ts|tsx)" will be
                                        * included
                                        * - when a path to a file is provided, and a matching spec file exists it will be included
                                        * instead.
                                        */
                                        include?: string[];
                                        /**
                                        * The stylesheet language to use for the application's inline component styles.
                                        */
                                        inlineStyleLanguage?: InlineStyleLanguage;
                                        /**
                                        * The name of the Karma configuration file.
                                        */
                                        karmaConfig?: string;
                                        /**
                                        * The name of the main entry-point file.
                                        */
                                        main?: string;
                                        /**
                                        * Enable and define the file watching poll time period in milliseconds.
                                        */
                                        poll?: number;
                                        /**
                                        * Polyfills to be included in the build.
                                        */
                                        polyfills?: Polyfills;
                                        /**
                                        * Do not use the real path when resolving modules. If unset then will default to `true` if
                                        * NodeJS option --preserve-symlinks is set.
                                        */
                                        preserveSymlinks?: boolean;
                                        /**
                                        * Log progress to the console while building.
                                        */
                                        progress?: boolean;
                                        /**
                                        * Karma reporters to use. Directly passed to the karma runner.
                                        */
                                        reporters?: string[];
                                        /**
                                        * Global scripts to be included in the build.
                                        */
                                        scripts?: ScriptElement[];
                                        /**
                                        * Output source maps for scripts and styles. For more information, see
                                        * https://angular.dev/reference/configs/workspace-config#source-map-configuration.
                                        */
                                        sourceMap?: SourceMapUnion;
                                        /**
                                        * Options to pass to style preprocessors
                                        */
                                        stylePreprocessorOptions?: StylePreprocessorOptions;
                                        /**
                                        * Global styles to be included in the build.
                                        */
                                        styles?: StyleElement[];
                                        /**
                                        * The name of the TypeScript configuration file.
                                        */
                                        tsConfig: string;
                                        /**
                                        * Run build when files change.
                                        */
                                        watch?: boolean;
                                        /**
                                        * TypeScript configuration for Web Worker modules.
                                        */
                                        webWorkerTsConfig?: string;
                                        };
                                        • Karma target options for Build Facade.

                                        type KarmaConfigOptions

                                        type KarmaConfigOptions = ConfigOptions & {
                                        buildWebpack?: unknown;
                                        configFile?: string;
                                        };

                                          type NgPackagrBuilderOptions

                                          type Schema = {
                                          /**
                                          * Enable and define the file watching poll time period in milliseconds.
                                          */
                                          poll?: number;
                                          /**
                                          * The file path for the ng-packagr configuration file, relative to the current workspace.
                                          */
                                          project: string;
                                          /**
                                          * The full path for the TypeScript configuration file, relative to the current workspace.
                                          */
                                          tsConfig?: string;
                                          /**
                                          * Run build when files change.
                                          */
                                          watch?: boolean;
                                          };
                                          • ng-packagr target options for Build Architect. Use to build library projects.

                                          type OptimizationObject

                                          type OptimizationClass = {
                                          /**
                                          * Enables optimization for fonts. This option requires internet access. `HTTPS_PROXY`
                                          * environment variable can be used to specify a proxy server.
                                          */
                                          fonts?: FontsUnion;
                                          /**
                                          * Enables optimization of the scripts output.
                                          */
                                          scripts?: boolean;
                                          /**
                                          * Enables optimization of the styles output.
                                          */
                                          styles?: StylesUnion;
                                          };

                                            type OptimizationUnion

                                            type OptimizationUnion = boolean | OptimizationClass;
                                            • Enables optimization of the build output. Including minification of scripts and styles, tree-shaking, dead-code elimination, inlining of critical CSS and fonts inlining. For more information, see https://angular.dev/reference/configs/workspace-config#optimization-configuration.

                                            type ProtractorBuilderOptions

                                            type Schema = {
                                            /**
                                            * Base URL for protractor to connect to.
                                            */
                                            baseUrl?: string;
                                            /**
                                            * A dev-server builder target to run tests against in the format of
                                            * `project:target[:configuration]`. You can also pass in more than one configuration name
                                            * as a comma-separated list. Example: `project:target:production,staging`.
                                            */
                                            devServerTarget?: string;
                                            /**
                                            * Execute specs whose names match the pattern, which is internally compiled to a RegExp.
                                            */
                                            grep?: string;
                                            /**
                                            * Host to listen on.
                                            */
                                            host?: string;
                                            /**
                                            * Invert the selection specified by the 'grep' option.
                                            */
                                            invertGrep?: boolean;
                                            /**
                                            * The port to use to serve the application.
                                            */
                                            port?: number;
                                            /**
                                            * The name of the Protractor configuration file.
                                            */
                                            protractorConfig: string;
                                            /**
                                            * Override specs in the protractor config.
                                            */
                                            specs?: string[];
                                            /**
                                            * Override suite in the protractor config.
                                            */
                                            suite?: string;
                                            /**
                                            * Try to update webdriver.
                                            */
                                            webdriverUpdate?: boolean;
                                            };
                                            • Protractor target options for Build Facade.

                                            type ServerBuilderOptions

                                            type Schema = {
                                            /**
                                            * List of static application assets.
                                            */
                                            assets?: AssetPattern[];
                                            /**
                                            * Enables advanced build optimizations.
                                            */
                                            buildOptimizer?: boolean;
                                            /**
                                            * Delete the output path before building.
                                            */
                                            deleteOutputPath?: boolean;
                                            /**
                                            * Customize the base path for the URLs of resources in 'index.html' and component
                                            * stylesheets. This option is only necessary for specific deployment scenarios, such as
                                            * with Angular Elements or when utilizing different CDN locations.
                                            */
                                            deployUrl?: string;
                                            /**
                                            * Exclude the listed external dependencies from being bundled into the bundle. Instead, the
                                            * created bundle relies on these dependencies to be available during runtime.
                                            */
                                            externalDependencies?: string[];
                                            /**
                                            * Extract all licenses in a separate file, in the case of production builds only.
                                            */
                                            extractLicenses?: boolean;
                                            /**
                                            * Replace compilation source files with other compilation source files in the build.
                                            */
                                            fileReplacements?: FileReplacement[];
                                            /**
                                            * How to handle duplicate translations for i18n.
                                            */
                                            i18nDuplicateTranslation?: I18NTranslation;
                                            /**
                                            * How to handle missing translations for i18n.
                                            */
                                            i18nMissingTranslation?: I18NTranslation;
                                            /**
                                            * The stylesheet language to use for the application's inline component styles.
                                            */
                                            inlineStyleLanguage?: InlineStyleLanguage;
                                            /**
                                            * Translate the bundles in one or more locales.
                                            */
                                            localize?: Localize;
                                            /**
                                            * The name of the main entry-point file.
                                            */
                                            main: string;
                                            /**
                                            * Use file name for lazy loaded chunks.
                                            */
                                            namedChunks?: boolean;
                                            /**
                                            * Enables optimization of the build output. Including minification of scripts and styles,
                                            * tree-shaking and dead-code elimination. For more information, see
                                            * https://angular.dev/reference/configs/workspace-config#optimization-configuration.
                                            */
                                            optimization?: OptimizationUnion;
                                            /**
                                            * Define the output filename cache-busting hashing mode.
                                            */
                                            outputHashing?: OutputHashing;
                                            /**
                                            * Path where output will be placed.
                                            */
                                            outputPath: string;
                                            /**
                                            * Enable and define the file watching poll time period in milliseconds.
                                            */
                                            poll?: number;
                                            /**
                                            * Do not use the real path when resolving modules. If unset then will default to `true` if
                                            * NodeJS option --preserve-symlinks is set.
                                            */
                                            preserveSymlinks?: boolean;
                                            /**
                                            * Log progress to the console while building.
                                            */
                                            progress?: boolean;
                                            /**
                                            * The path where style resources will be placed, relative to outputPath.
                                            */
                                            resourcesOutputPath?: string;
                                            /**
                                            * Output source maps for scripts and styles. For more information, see
                                            * https://angular.dev/reference/configs/workspace-config#source-map-configuration.
                                            */
                                            sourceMap?: SourceMapUnion;
                                            /**
                                            * Generates a 'stats.json' file which can be analyzed using tools such as
                                            * 'webpack-bundle-analyzer'.
                                            */
                                            statsJson?: boolean;
                                            /**
                                            * Options to pass to style preprocessors
                                            */
                                            stylePreprocessorOptions?: StylePreprocessorOptions;
                                            /**
                                            * The name of the TypeScript configuration file.
                                            */
                                            tsConfig: string;
                                            /**
                                            * Generate a seperate bundle containing only vendor libraries. This option should only be
                                            * used for development to reduce the incremental compilation time.
                                            */
                                            vendorChunk?: boolean;
                                            /**
                                            * Adds more details to output logging.
                                            */
                                            verbose?: boolean;
                                            /**
                                            * Run build when files change.
                                            */
                                            watch?: boolean;
                                            };

                                              type ServerBuilderOutput

                                              type ServerBuilderOutput = BuilderOutput & {
                                              baseOutputPath: string;
                                              outputPath: string;
                                              outputs: {
                                              locale?: string;
                                              path: string;
                                              }[];
                                              };
                                              • Direct usage of this type is considered experimental.

                                                Modifiers

                                                • @experimental

                                              type SourceMapObject

                                              type SourceMapClass = {
                                              /**
                                              * Output source maps used for error reporting tools.
                                              */
                                              hidden?: boolean;
                                              /**
                                              * Output source maps for all scripts.
                                              */
                                              scripts?: boolean;
                                              /**
                                              * Output source maps for all styles.
                                              */
                                              styles?: boolean;
                                              /**
                                              * Resolve vendor packages source maps.
                                              */
                                              vendor?: boolean;
                                              };

                                                type SourceMapUnion

                                                type SourceMapUnion = boolean | SourceMapClass;
                                                • Output source maps for scripts and styles. For more information, see https://angular.dev/reference/configs/workspace-config#source-map-configuration.

                                                type SSRDevServerBuilderOptions

                                                type SSRDevServerBuilderOptions = Schema;

                                                  type SSRDevServerBuilderOutput

                                                  type SSRDevServerBuilderOutput = BuilderOutput & {
                                                  baseUrl?: string;
                                                  port?: string;
                                                  };

                                                    type StylePreprocessorOptions

                                                    type StylePreprocessorOptions = {
                                                    /**
                                                    * Paths to include. Paths will be resolved to workspace root.
                                                    */
                                                    includePaths?: string[];
                                                    };
                                                    • Options to pass to style preprocessors.

                                                    Namespaces

                                                    namespace babel-loader

                                                    module 'babel-loader' {}
                                                    • Copyright Google LLC 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.dev/license

                                                    function custom

                                                    custom: <T>(customizer: BabelLoaderCustomizer<T>) => any;

                                                      type BabelLoaderCustomizer

                                                      type BabelLoaderCustomizer<T> = (babel: typeof import('@babel/core')) => {
                                                      customOptions?(
                                                      this: import('webpack').loader.LoaderContext,
                                                      loaderOptions: Record<string, unknown>,
                                                      loaderArguments: { source: string; map?: unknown }
                                                      ): Promise<{ custom?: T; loader: Record<string, unknown> }>;
                                                      config?(
                                                      this: import('webpack').loader.LoaderContext,
                                                      configuration: import('@babel/core').PartialConfig,
                                                      loaderArguments: { source: string; map?: unknown; customOptions: T }
                                                      ): import('@babel/core').TransformOptions;
                                                      result?(
                                                      this: import('webpack').loader.LoaderContext,
                                                      result: import('@babel/core').BabelFileResult,
                                                      context: {
                                                      source: string;
                                                      map?: unknown;
                                                      customOptions: T;
                                                      configuration: import('@babel/core').PartialConfig;
                                                      options: import('@babel/core').TransformOptions;
                                                      }
                                                      ): import('@babel/core').BabelFileResult;
                                                      };

                                                        namespace istanbul-lib-instrument

                                                        module 'istanbul-lib-instrument' {}
                                                        • Copyright Google LLC 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.dev/license

                                                        function programVisitor

                                                        programVisitor: (
                                                        types: any,
                                                        filePath?: string,
                                                        options?: { inputSourceMap?: object | null }
                                                        ) => Visitor;

                                                          interface Visitor

                                                          interface Visitor {}

                                                            method enter

                                                            enter: (path: any) => void;

                                                              method exit

                                                              exit: (path: any) => void;

                                                                Package Files (19)

                                                                Dependencies (55)

                                                                Dev Dependencies (0)

                                                                No dev dependencies.

                                                                Peer Dependencies (14)

                                                                Badge

                                                                To add a badge like this onejsDocs.io badgeto your package's README, use the codes available below.

                                                                You may also use Shields.io to create a custom badge linking to https://www.jsdocs.io/package/@angular-devkit/build-angular.

                                                                • Markdown
                                                                  [![jsDocs.io](https://img.shields.io/badge/jsDocs.io-reference-blue)](https://www.jsdocs.io/package/@angular-devkit/build-angular)
                                                                • HTML
                                                                  <a href="https://www.jsdocs.io/package/@angular-devkit/build-angular"><img src="https://img.shields.io/badge/jsDocs.io-reference-blue" alt="jsDocs.io"></a>