Normalise slugs, extract slug mappings to data module, add cspell entry
- Add normaliseSlug utility with JSDoc examples to ensure slugs are
URI-compatible (lowercase, spaces → hyphens, remove invalid chars,
collapse hyphens, trim).
- Move SlugMapping type and slugMappings array into a new
src/lib/data/slug-mappings.ts file to separate data from logic.
- Update src/lib/config/slugs.ts:
- import slugMappings and SlugMapping type from the new data module
- normalise slugs automatically before lookups (getPublicationRkeyFromSlug,
getAllSlugs) and normalise comparisons to make lookups more robust.
- add getAllSlugMappings() helper to return mappings with normalised slugs.
- improve comments and examples.
- Update .cspell.json to include "cailean".
This improves slug handling (more tolerant of casing, spacing, and special
characters), clarifies separation of concerns by extracting mapping data,
and adds a missing spelling entry.