Skip to content

Documentation / @expofp/schema / ConfigDefaults

Variable: ConfigDefaults

ts
const ConfigDefaults: object;

Complete field defaults for the effective config — one value for every Config field — applied as the lowest-precedence layer in loadConfig so an explicit value from any source (manifest, options, localStorage, URL) wins.

Typed satisfies Required<Config>, so it must stay exhaustive: add a field to the schema and TypeScript flags the missing default here (plain Config would let an optional field slip through). Values are type zero-values (false / '' / 0 / [] / {}) except where a meaningful default exists (disableRuntimeAlerts).

Kept as a plain object rather than .default()s inside the layer schemas: a default in a schema materializes on every layer's parse — and in Zod 4 .partial() does not suppress it — so a higher, empty layer would stomp a lower layer's explicit value.

Type Declaration

allow3dView

ts
allow3dView: false = false;

alwaysShowSidebar

ts
alwaysShowSidebar: false = false;

autoTrackingGps

ts
autoTrackingGps: false = false;

booths

ts
booths: never[] = [];

boothTerm

ts
boothTerm: string = '';

busRoutes

ts
busRoutes: false = false;

camera

ts
camera: object = {};

categories

ts
categories: never[] = [];
ts
consent: "ask" = 'ask';

customCss

ts
customCss: string = '';

customCssFonts

ts
customCssFonts: never[] = [];

customKioskQrCodeUrl

ts
customKioskQrCodeUrl: string = '';

customSetKiosk

ts
customSetKiosk: string = '';

debugMode

ts
debugMode: false = false;

debugPattern

ts
debugPattern: string = '';

dimensionless

ts
dimensionless: false = false;

disableBookmarked

ts
disableBookmarked: false = false;

disableFeatured

ts
disableFeatured: false = false;

disableGps

ts
disableGps: false = false;

disableRuntimeAlerts

ts
disableRuntimeAlerts: true = true;

enableExperimentalMaplibre

ts
enableExperimentalMaplibre: undefined = undefined;

Deliberately undefined rather than false: the flag is tri-state. Unset lets the drawing decide (__fpGeo.properties.config.type === 'maplibre'), while an explicit false from any layer — debug panel, localStorage, URL, host options — vetoes the map. A false default would erase that distinction (see MaplibreStore.useMaplibreMap).

enableExperimentalOutdoorMarkers

ts
enableExperimentalOutdoorMarkers: false = false;

enableIPS

ts
enableIPS: false = false;

enableRotation

ts
enableRotation: false = false;

endDate

ts
endDate: string = '';

events

ts
events: never[] = [];

exhibitors

ts
exhibitors: never[] = [];

exhibitorTerm

ts
exhibitorTerm: string = '';

exhibitorTermPlural

ts
exhibitorTermPlural: string = '';

expo

ts
expo: string = '';

expoFpAd

ts
expoFpAd: false = false;

filterButtonsConfig

ts
filterButtonsConfig: object = {};

filters

ts
filters: object = {};

fpSvgJsRef

ts
fpSvgJsRef: null = null;

fpSvgLayerJsRefs

ts
fpSvgLayerJsRefs: object = {};

free

ts
free: false = false;
ts
gallery: never[] = [];

gtag

ts
gtag: string = '';

heatmap

ts
heatmap: object = {};

hide3dMapDefault

ts
hide3dMapDefault: false = false;

hideBookmarks

ts
hideBookmarks: false = false;
ts
hideBookmarksLink: false = false;

hideBoothBadges

ts
hideBoothBadges: false = false;
ts
hideCategoriesLink: false = false;

hideDirections

ts
hideDirections: false = false;
ts
hideDownloadPdfLink: false = false;
ts
hideEventHomeLink: false = false;

hideExhibitorBoothNumber

ts
hideExhibitorBoothNumber: false = false;

hideExhibitors

ts
hideExhibitors: false = false;
ts
hideHeaderLogo: false = false;

hideLanguage

ts
hideLanguage: false = false;
ts
hideLanguageLink: false = false;

hideLogoInBooth

ts
hideLogoInBooth: false = false;

hideModeSwitchButton

ts
hideModeSwitchButton: false = false;
ts
hideRegisterToAttendLink: false = false;

hideShareButton

ts
hideShareButton: false = false;

hideWayInformation

ts
hideWayInformation: false = false;

homeUrl

ts
homeUrl: string = '';

ignoreQuery

ts
ignoreQuery: false = false;

intents

ts
intents: never[] = [];

isRebooking

ts
isRebooking: false = false;

isTrial

ts
isTrial: false = false;

kiosk

ts
kiosk: object = {};

levelTerm

ts
levelTerm: string = '';

locale

ts
locale: string = '';
ts
logo: string = '';

maplibre

ts
maplibre: object = {};

monochrome

ts
monochrome: false = false;

noFeatured

ts
noFeatured: false = false;

noOverlay

ts
noOverlay: false = false;

offHistory

ts
offHistory: false = false;

onlyFeaturedExhibitors

ts
onlyFeaturedExhibitors: false = false;

poiTypes

ts
poiTypes: never[] = [];

previewMode

ts
previewMode: false = false;

registerUrl

ts
registerUrl: string = '';

reserveButtonTerm

ts
reserveButtonTerm: string = '';

reserveInstructions

ts
reserveInstructions: string = '';

searchText

ts
searchText: string = '';

sendLoginLinkUrl

ts
sendLoginLinkUrl: string = '';

shortLevelName

ts
shortLevelName: false = false;

showCategories

ts
showCategories: false = false;

showCompaniesAndBooths

ts
showCompaniesAndBooths: false = false;

showDebugButton

ts
showDebugButton: false = false;

showLevelLabel

ts
showLevelLabel: false = false;

showOtherSpaces

ts
showOtherSpaces: false = false;

startDate

ts
startDate: string = '';

subtitle

ts
subtitle: string = '';

title

ts
title: string = '';

trackerUrl

ts
trackerUrl: string = '';

trialExpiresAt

ts
trialExpiresAt: string = '';

viewerMode

ts
viewerMode: false = false;

viewOptimizationLevel

ts
viewOptimizationLevel: number = 0;

visibility

ts
visibility: object = {};

wfDataJsRef

ts
wfDataJsRef: null = null;