Skip to content

Support canonical icon provider aliases#33

Merged
artiphishle merged 6 commits intomainfrom
fix/material-community-icon-provider
May 9, 2026
Merged

Support canonical icon provider aliases#33
artiphishle merged 6 commits intomainfrom
fix/material-community-icon-provider

Conversation

@artiphishle
Copy link
Copy Markdown
Contributor

Summary

Fixes icon provider resolution for serialized route icons that use canonical provider identifiers such as material-community.

What changed

  • Added provider alias normalization in resolveExpoIconComponent.
  • Maps material-community and material-community-icons to Expo's MaterialCommunityIcons export.
  • Keeps existing direct Expo provider names working.
  • Keeps unknown providers falling back to Ionicons.
  • Added tests for canonical aliases.
  • Added a patch changeset.

Why

Templates serialize route icons with provider: 'material-community', but Surface previously looked up provider strings directly on @expo/vector-icons. Since Expo exports MaterialCommunityIcons, not material-community, icons silently fell back to Ionicons and many route icon names failed to render.

Verification

Run:

bun run build
bun run lint:fix
bun run test
bun run changeset:status

@artiphishle artiphishle merged commit bd168b3 into main May 9, 2026
1 check passed
@artiphishle artiphishle deleted the fix/material-community-icon-provider branch May 9, 2026 23:58
@artiphishle artiphishle self-assigned this May 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant