function sharedGroupRemaining
sharedGroupRemaining(
parentGroupIds: readonly number[],
childGroupIds: readonly number[],
remainingByGroupId: ReadonlyMap<number, number>,
): number | undefined

The remaining spots of the capped group a parent and one of its children share, or undefined when they share no capped group. Such a parent and child take two group spots per order, so a caller must reason about the combined demand, not each row alone.

The value is the tightest SHARED group's remaining, never the child's tightest group overall — a child that is also in a tighter unshared group must not drag this down to an unrelated cap. Discovery and the booking-page quantity ceiling both read it, so the two surfaces cannot disagree.

Parameters

parentGroupIds: readonly number[]
childGroupIds: readonly number[]
remainingByGroupId: ReadonlyMap<number, number>

Return Type

number | undefined

Usage

import { sharedGroupRemaining } from "docs/config.ts";