@expofp/floorplan
Version:
Interactive floor plan library for expos and events
28 lines • 1.28 kB
TypeScript
/**
* Pure eligibility predicate for booth number badges.
*
* Extracted from `configBoothsBadges` so the decision can be unit-tested in
* isolation (no canvas/mobx/renderer side effects). A booth gets a badge when
* badges aren't globally hidden, it has exhibitors, and it has no visible
* number — either because it's `noLabels` or because a logo-in-booth covers
* the label.
*
* This logic regressed once after the MapLibre refactor (logo-in-booth booths
* not authored as `noLabels` lost their badges), so it is covered by a table.
*/
export interface BoothBadgeEligibility {
/** Data flag: hide the number on booths that have an exhibitor. */
hideExhibitorBoothNumber?: boolean;
/** `flags.hideBoothBadges`: opt-out for all booth badges. */
hideBoothBadges?: boolean;
/** UI state: logos-in-booth are currently hidden. */
hideLogoInBooth: boolean;
/** Booth is authored without labels. */
noLabels: boolean;
/** Booth has at least one exhibitor. */
hasExhibitors: boolean;
/** Booth has at least one exhibitor with a visible logo-in-booth. */
hasLogoInBooth: boolean;
}
export declare function isBoothBadgeEligible(b: BoothBadgeEligibility): boolean;
//# sourceMappingURL=config-booth-badge-eligibility.d.ts.map