Skip to main content

XpmBuildConfiguration class

An individual xpm build configuration.

Signature

export declare class XpmBuildConfiguration

Remarks

Build configurations are initialised lazily and may inherit properties, dependencies, and actions from other configurations.

A configuration can exist in three states:

  1. Undefined: Name is known but instance not yet created.
  2. Instantiated: Object exists but not yet fully processed.
  3. Initialised: Inheritance resolved, properties evaluated, dependencies substituted, and actions prepared.

Inheritance is processed recursively with circular reference detection. Later inherited properties override earlier ones, and local properties override all inherited ones. Dependencies and actions are merged from all inherited configurations.

Constructors

Constructor

Modifiers

Description

(constructor)({ buildConfigurationName, templateBuildConfigurationName, jsonBuildConfiguration, parentBuildConfigurations, matrixParameters, })

Constructs a build configuration instance.

Properties

Property

Modifiers

Type

Description

_actions

protected

XpmActions | undefined

The actions associated with this build configuration.

_buildFolderRelativePath?

protected

string

(Optional) The resolved build folder relative path.

_inheritedNamesSet

protected

Set<string>

Set of inherited configuration names for circular reference detection.

_isInitialised

protected

boolean

Flag indicating whether the configuration has been initialised.

_log

protected

Logger

The logger instance for output and diagnostics.

_substitutionsVariables

protected

XpmLiquidSubstitutionsVariables

The variables used for substitution in this configuration.

actions

readonly

XpmActions

Retrieves the actions collection for this build configuration.

buildConfigurationName

readonly

string

The build configuration name after substitution.

buildFolderRelativePath

readonly

string

Retrieves the build folder relative path for this configuration.

dependencies

JsonDependencies

The resolved dependencies after substitutions.

devDependencies

JsonDependencies

The resolved development dependencies after substitutions.

inheritsNames

string[]

The list of inherited configuration names.

isHidden

readonly

boolean

Indicates whether the configuration is hidden.

isTemplate

boolean

Indicates whether this configuration originates from a template.

jsonBuildConfiguration

JsonBuildConfigurationContent

The JSON build configuration content from package metadata.

matrixParameters?

protected

readonly

XpmLiquidSubstitutionsStrings

(Optional) The matrix parameter values for template-generated configurations.

parentBuildConfigurations

readonly

XpmBuildConfigurations

The parent build configurations collection.

properties

XpmLiquidSubstitutionsStrings

The resolved properties for this configuration.

templateBuildConfigurationName?

readonly

string

(Optional) The template build configuration name, if derived from a template.

Methods

Method

Modifiers

Description

_getBuildFolderRelativePath()

protected

Computes the build folder relative path for this configuration.

_processInherits(localJsonBuildConfiguration)

protected

_substituteInherits()

protected

Performs selective substitution on the inherits field only.

_substituteTemplate()

protected

Performs template substitution on the entire build configuration JSON.

initialise()

Completes the async initialisation of the build configuration.


Generated via tsdoc2docusaurus 1.3.0-pre by API Extractor/Documenter 7.55.2.