The framework-agnostic helper namespace, as an ESM named export.
⚠️ This object and the runtime global GeoLeaf.Utils carry the same shape but are distinct
objects, and the distinction is deliberate: the global has to stay mutable and re-appliable
by the module lifecycle, so it cannot be this frozen export. Mutating one therefore does not
affect the other — read from whichever you imported.
The two were once genuinely divergent (12 keys here against 27 there), which meant
import { Utils } and GeoLeaf.Utils silently disagreed about what existed. Shape equality
is now the invariant, and it is guarded — see __tests__/utils/utils-shape.test.js (KERNEL
S14).
The framework-agnostic helper namespace, as an ESM named export.
⚠️ This object and the runtime global
GeoLeaf.Utilscarry the same shape but are distinct objects, and the distinction is deliberate: the global has to stay mutable and re-appliable by the module lifecycle, so it cannot be this frozen export. Mutating one therefore does not affect the other — read from whichever you imported.The two were once genuinely divergent (12 keys here against 27 there), which meant
import { Utils }andGeoLeaf.Utilssilently disagreed about what existed. Shape equality is now the invariant, and it is guarded — see__tests__/utils/utils-shape.test.js(KERNEL S14).