OptionalinitInitialises GeoLeaf and creates the map.
⚠️ map.target — or its shorthand target/mapId — is required:
APIInitializationManager._normalizeInitOptions throws without it. It reads
{ map: { target, center, zoom, mapOptions }, ui: { theme } }, or the flat shorthand
{ target, center, zoom, theme }. Any other key is ignored — data included: the
profile is chosen by the configuration that GeoLeafTopLevelApi.boot loads.
⚠️ Distinct from GeoLeafTopLevelApi.boot: boot() launches the
profile-driven application (config load then registry.init()), init() is the
manual wrapper around GeoLeaf.Core.init(). The init of the boot path is the
ModuleRegistry's, not this one.
OptionalsetApplies a theme by identifier. Returns true when the theme was applied.
OptionalloadLoads a configuration from a URL or an object. Throws (TypeError) on anything else.
OptionalcreateCreates a GeoLeaf-managed map instance. Returns null when the controller is absent.
OptionalgetReturns the map instance registered under this identifier, or null.
OptionalgetReturns every registered map instance — empty array when there is none.
OptionalgetReturns a registered module by name, or null.
Optionalhastrue when a module of that name is registered.
OptionalgetReturns a top-level namespace (GeoLeaf[name]), or null.
OptionalgetHealth report of the APIController, or null when it is unavailable.
OptionalgetAlias of GeoLeafTopLevelApi.getHealth.
⚠️ Both implementations must point at a function that does not depend on this —
the this.getHealth() form threw as soon as the method was detached from the
namespace.
The shortcut methods mounted directly on
globalThis.GeoLeaf.All members are optional: the namespace is assembled at boot (B1→B11 chain), and a consumer reading it too early sees a partial object. Same posture as
GeoLeafGlobal, which references this contract member by member — inline, never viaextends: the repo's AST readers (scripts/lib/ts-decl-read.cjs) iterate declared members only, and an inherited member would be invisible to them.