Move per-route SEO meta out of the inline RouteMeta in registry.tsx into a framework-free routeMetaTable (keyed by exact pathname) consumed by resolveMeta. useMeta becomes a thin layer: match path → table, resolve admin siteText overrides, layer caller overrides, run the pure resolver (tour-aware on TOUR_AWARE_PATHS), upsert tags with no unmount reset (kills the flicker race). Every static page drops to a bare useMeta(); entity pages pass titleFull. Add resolveMeta/routeMetaTable/useMeta tests and refresh the index.html base copy. |
||
|---|---|---|
| .. | ||
| data-api | ||
| frontend-public | ||
| shared/src | ||