The served profile.json does NOT inline an icons block — since the taxonomy-v3
migration it lives at the root of the file referenced by Files.modules.taxonomy
(config/plugins/taxonomy.json), and is exposed at runtime as modules.taxonomy.icons.
This helper returns profile.icons when already present (forward-compat with an
inlined block), otherwise fetches the referenced file. It never throws: any failure
resolves to null.
Mirrors the runtime gate of GeoLeaf.Taxonomy.getIcons()
(capabilities/taxonomy/public-api.ts): a capability disabled with enabled: false
loads no sprite, so there is nothing to cache either. enabled absent means enabled
(opt-out), matching getTaxonomyConfig().
Resolves the icon/sprite config of a profile.
The served
profile.jsondoes NOT inline aniconsblock — since the taxonomy-v3 migration it lives at the root of the file referenced byFiles.modules.taxonomy(config/plugins/taxonomy.json), and is exposed at runtime asmodules.taxonomy.icons. This helper returnsprofile.iconswhen already present (forward-compat with an inlined block), otherwise fetches the referenced file. It never throws: any failure resolves tonull.Mirrors the runtime gate of
GeoLeaf.Taxonomy.getIcons()(capabilities/taxonomy/public-api.ts): a capability disabled withenabled: falseloads no sprite, so there is nothing to cache either.enabledabsent means enabled (opt-out), matchinggetTaxonomyConfig().