Skip to content

finishedConfigsSubstore

Provides a read-only, consolidated view of all completed configurations. A configuration is considered completed when its status is "completed" (all required elements have selections). This substore aggregates data from configsSubstore, formSubstore, and valuesSubstore into a single, convenient object.

Table of contents


getFinishedConfigs

getFinishedConfigs: (args?: {
skipMultiplyConfigQuantity?: boolean;
}) => FinishedConfig[]

Returns all completed configurations with their ordered steps, selected values, quantities, and products.

Each FinishedConfig is a snapshot combining:

  • The TConfig metadata (name, quantity, formId, …)
  • The ordered steps array after constraint evaluation (from formSubstore)
  • The current values and quantities maps (from valuesSubstore)
  • The list of selectedProducts derived from the values

Quantities in each FinishedConfig are multiplied by config.configQuantity by default. Pass skipMultiplyConfigQuantity: true to get raw (un-multiplied) quantities.

type FinishedConfig = {
config: TConfig;
stepsWithSelections: TStep[];
form: TForm | undefined;
values: TValues;
quantities: TQuantities;
selectedProducts: TProduct[];
};

Parameters

NameTypeDescription
args.skipMultiplyConfigQuantityboolean (optional)When true, quantities are returned as-is without being multiplied by config.configQuantity. Defaults to false.

Returns FinishedConfig[] — one entry per config whose status === "completed".

Related