ov25-ui
Version:
A UI configurator for OV25 product visualization
25 lines (24 loc) • 1.07 kB
TypeScript
import type { BedPartSizeFilterFlags } from '../../types/inject-config.js';
export type BedConfiguratorPartKind = 'headboard' | 'base' | 'mattress';
/**
* Merged bed menu options use names like `Headboard Range`, `Base …`, `Mattress …`
* (see OV25 `bedPartLabel` + option name).
*/
export declare function inferBedPartFromOptionName(optionName: string): BedConfiguratorPartKind | null;
/** Aligns with OV25 `bedSizesMatch` for iframe `metadata.bedSize` vs `CURRENT_BED_SIZE`. */
export declare function bedSizesMatchDisplay(a: string, b: string): boolean;
/**
* When filtering is on for this bed part and a current size is known, drop selections whose
* `metadata.bedSize` does not match. Selections without bed size, and synthetic “None”, stay visible.
*/
export declare function selectionVisibleForBedSizeFilter(args: {
selection: {
name?: string | null;
metadata?: {
bedSize?: string;
} | null;
};
optionDisplayName: string;
currentBedSize: string | null;
flags: BedPartSizeFilterFlags;
}): boolean;