Skip to content

refactor: Render icons via react-native-nano-icons#514

Merged
cyanChill merged 17 commits into
devfrom
refactor/nano-icons
Jun 17, 2026
Merged

refactor: Render icons via react-native-nano-icons#514
cyanChill merged 17 commits into
devfrom
refactor/nano-icons

Conversation

@cyanChill

@cyanChill cyanChill commented Jun 17, 2026

Copy link
Copy Markdown
Member

Why

This PR has it so that icons are now rendered via react-native-nano-icons instead of JSX components created using react-native-svg. This is is done by converting raw .svg files into a single font file. At the cost of ~0.05 MB in increased app size, we should see slightly better render times.

With this API of rendering the icons via a font file, we can create a new Icon component to:

  1. Simplify the addition of new SVGs as we just need to add a new .svg file to a folder.
  2. Make changing SVGs easier since we can just change the value in the name prop on the Icon component instead of fixing import names.

Note

We disabled allowFontScaling on the rendered icon as it will randomly shift and look out of place. For example (on Pixel Fold Simulator):
image

Checklist

  • Documentation is up to date to reflect these changes.
  • Ensure dependency licenses are up-to-date by running pnpm sync:licenses.
  • This diff will work correctly for pnpm android:prod.

Summary by CodeRabbit

Summary

  • Refactor

    • Migrated app UI elements (buttons, lists, pickers, sliders, menus, and screen headers) to use a centralized icon renderer driven by string icon names for consistent sizing and styling.
  • Bug Fixes

    • Corrected the accessibility label for the number stepper increment control.
  • Documentation

    • Added icon specification documentation for Material Symbols, Ionicons, and custom combinations.
  • Chores

    • Added nightly icon set generation, refreshed generated glyph mappings, and updated third-party license attributions.

@cyanChill cyanChill added the Housekeeping Code maintenance or refactor. label Jun 17, 2026
@coderabbitai

coderabbitai Bot commented Jun 17, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 5acbaa98-7d71-4382-b197-e10b1954485f

📥 Commits

Reviewing files that changed from the base of the PR and between d83d78f and 2002a4c.

📒 Files selected for processing (1)
  • mobile/src/components/Form/NumberStepper.tsx
🚧 Files skipped from review as they are similar to previous changes (1)
  • mobile/src/components/Form/NumberStepper.tsx

📝 Walkthrough

Walkthrough

Adds react-native-nano-icons as the icon rendering backend, replacing ~60 individual React Native SVG icon component files with a single font-based Icon component keyed by SupportedIconName strings. The IconButton, FilledIconButton, SegmentedPicker, Slider, and MenuAction component contracts are updated accordingly, and all call sites across the codebase are migrated to pass string icon names.

Changes

Icon System Migration

Layer / File(s) Summary
Icon system foundation and package wiring
mobile/package.json, mobile/app.config.ts, mobile/assets/icons/README.md, mobile/src/resources/icons/app-icons.glyphmap.json, mobile/src/resources/icons/index.tsx, mobile/src/resources/licenses.json, THIRD_PARTY.md
Adds react-native-nano-icons dependency and Expo build plugin, introduces the app-icons.glyphmap.json glyph map, creates the Icon component (with theme-based color default and allowFontScaling={false}) and SupportedIconName type, and registers the new license in third-party attribution.
Shared component API contract changes
mobile/src/components/Base/AnimatedMaterialSymbol.tsx, mobile/src/components/Form/Button/Icon.tsx, mobile/src/components/Form/SegmentedPicker.tsx, mobile/src/components/Form/Slider.tsx, mobile/src/navigation/components/CurrentListMenu.tsx
Updates IconButton/FilledIconButton to require icon: SupportedIconName (removing the Icon render-function and alternative props); similarly updates PickerOption, SliderOverlayProps, AnimatedMaterialSymbol props, MenuAction.icon type, and call-site rendering to use string icon names.
Removal of individual SVG icon files
mobile/src/resources/icons/ActivityZone.tsx, Add.tsx, Archive.tsx, ArrowBack.tsx, AutoPlay.tsx, BarChart4Bars.tsx, Cached.tsx, Cancel.tsx, Check.tsx, CheckCircle.tsx, Close.tsx, ColorWand.tsx, ConversionPath.tsx, CreateNewFolder.tsx, Delete.tsx, DoNotDisturbOn.tsx, DocumentSearch.tsx, DragHandle.tsx, Edit.tsx, Favorite.tsx, FileSave.tsx, Flask.tsx, Folder.tsx, FormatPaint.tsx, Graph1.tsx, GraphicEQ.tsx, GridView.tsx, History.tsx, Home.tsx, Image.tsx, Info.tsx, KeyboardArrowDown.tsx, LinkOff.tsx, LogoGitHub.tsx, LogoPlayStore.tsx, LowPriority.tsx, Lyrics.tsx, MobileArrowDown.tsx, MoreHoriz.tsx, MoreVert.tsx, NothingArrowRight.tsx, OpenInNew.tsx, Pause.tsx, PlayArrow.tsx, PlaylistAdd.tsx, QueueMusic.tsx, Remove.tsx, Repeat.tsx, RepeatOne.tsx, Save.tsx, Schedule.tsx, Search.tsx, Settings.tsx, Shuffle.tsx, SkipNext.tsx, SkipPrevious.tsx, SlowMotionVideo.tsx, Sort.tsx, Timer.tsx, Translate.tsx, ViewAgenda.tsx, ViewModule.tsx, VisibilityOff.tsx, VoiceSelection.tsx, VolumeUp.tsx, Warning.tsx, type.ts
Deletes all ~60 individual React Native SVG icon components along with their react-native-svg imports, useColor hook usages, and inline SVG path definitions, and removes the old Icon type definition.
Form and component call-site migrations
mobile/src/components/Form/Checkbox.tsx, NumberStepper.tsx, Radio.tsx, mobile/src/components/List/RemovableItem.tsx, mobile/src/components/Swipeable.tsx, mobile/src/modules/audio/_components/AudioEffectSlider.tsx, PlaybackParameterSettings.tsx, PlaybackParameterSlider.tsx, VolumeSettings.tsx, mobile/src/modules/customization/font/screens/CreateView.tsx, View.tsx, mobile/src/modules/customization/theme/screens/View.tsx, mobile/src/modules/form/FormState/FormInput.tsx, index.tsx, mobile/src/modules/lyric/components/LyricsOverlay.tsx, mobile/src/modules/lyric/screens/*, mobile/src/modules/media/components/MediaControls.tsx, MediaImage.tsx, MediaListControls.tsx, Track.tsx, mobile/src/modules/scanning/components/ScanningProgressView.tsx, mobile/src/modules/search/components/SearchBar.tsx
Removes per-icon imports and switches all IconButton/FilledIconButton/inline icon usages to string-based icon="..." props, including the prop chain through AudioEffectSliderPlaybackParameterSlider → call sites.
Navigation call-site migrations
mobile/src/navigation/components/BottomActions/MiniPlayer.tsx, NavActions.tsx, CurrentListMenu.tsx, TopAppBar.tsx, mobile/src/navigation/layouts/CurrentListLayout.tsx, NScrollLayout.tsx, mobile/src/navigation/screens/HomeView.tsx, now-playing/*, albums/CurrentView.tsx, playlists/*, settings/*, tracks/ModifyView.tsx, sheets/TrackSheet.tsx, mobile/src/navigation/sheets/ViewOptionsSheet.tsx
Removes per-icon imports throughout all navigation components, layouts, screens (settings, now-playing, playlists, albums, tracks, home), and sheets, switching every icon button and inline icon to use string icon="..." props.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@mobile/src/components/Form/NumberStepper.tsx`:
- Around line 47-50: The plus button (icon="add") in the NumberStepper component
is using the wrong accessibility label template. Replace the accessibilityLabel
translation key from template.entryRemove to an appropriate increment-specific
label (such as template.entryAdd or a similar key that describes
adding/incrementing). The current label incorrectly announces the increment
control as a remove action instead of an add action.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: f685e1cc-cfe1-4fac-8985-2014b9ab40df

📥 Commits

Reviewing files that changed from the base of the PR and between bf41d44 and 92cf1d3.

⛔ Files ignored due to path filters (71)
  • mobile/android/app/src/main/assets/fonts/app-icons.ttf is excluded by !**/*.ttf
  • mobile/assets/icons/app-icons/activity-zone.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/add.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/archive.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/arrow-back.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/autoplay.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/bar-chart-4-bars.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/cached.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/cancel.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/check-circle.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/check.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/close.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/color-wand.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/conversion-path.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/create-new-folder.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/delete.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/do-not-disturb-on.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/document-search.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/drag-handle.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/edit.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/favorite-filled.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/favorite.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/file-save.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/flask-filled.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/folder.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/format-paint.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/graph-1.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/graphic-eq.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/grid-view.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/history.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/home-filled.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/home.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/image.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/info.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/keyboard-arrow-down.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/link-off.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/logo-github.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/logo-google-playstore.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/low-priority.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/lyrics.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/mobile-arrow-down.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/more-horiz.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/more-vert.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/nothing-arrow-right.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/open-in-new.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/pause-filled.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/play-arrow-filled.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/playlist-add.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/queue-music.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/remove.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/repeat-one.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/repeat.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/save.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/schedule.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/search.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/settings.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/shuffle.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/skip-next-filled.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/skip-previous-filled.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/slow-motion-video.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/sort.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/timer.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/translate.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/view-agenda.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/view-module.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/visibility-off-filled.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/voice-selection.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/volume-up-filled.svg is excluded by !**/*.svg
  • mobile/assets/icons/app-icons/warning.svg is excluded by !**/*.svg
  • mobile/pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
  • mobile/src/resources/icons/app-icons.ttf is excluded by !**/*.ttf
📒 Files selected for processing (130)
  • THIRD_PARTY.md
  • mobile/app.config.ts
  • mobile/assets/icons/README.md
  • mobile/package.json
  • mobile/src/components/Base/AnimatedMaterialSymbol.tsx
  • mobile/src/components/Form/Button/Icon.tsx
  • mobile/src/components/Form/Checkbox.tsx
  • mobile/src/components/Form/NumberStepper.tsx
  • mobile/src/components/Form/Radio.tsx
  • mobile/src/components/Form/SegmentedPicker.tsx
  • mobile/src/components/Form/Slider.tsx
  • mobile/src/components/List/RemovableItem.tsx
  • mobile/src/components/Swipeable.tsx
  • mobile/src/modules/audio/_components/AudioEffectSlider.tsx
  • mobile/src/modules/audio/_components/PlaybackParameterSettings.tsx
  • mobile/src/modules/audio/_components/PlaybackParameterSlider.tsx
  • mobile/src/modules/audio/_components/VolumeSettings.tsx
  • mobile/src/modules/customization/font/screens/CreateView.tsx
  • mobile/src/modules/customization/font/screens/View.tsx
  • mobile/src/modules/customization/theme/screens/View.tsx
  • mobile/src/modules/form/FormState/FormInput.tsx
  • mobile/src/modules/form/FormState/index.tsx
  • mobile/src/modules/lyric/components/LyricsOverlay.tsx
  • mobile/src/modules/lyric/screens/CurrentView.tsx
  • mobile/src/modules/lyric/screens/ProviderView.tsx
  • mobile/src/modules/lyric/screens/View.tsx
  • mobile/src/modules/media/components/MediaControls.tsx
  • mobile/src/modules/media/components/MediaImage.tsx
  • mobile/src/modules/media/components/MediaListControls.tsx
  • mobile/src/modules/media/components/Track.tsx
  • mobile/src/modules/scanning/components/ScanningProgressView.tsx
  • mobile/src/modules/search/components/SearchBar.tsx
  • mobile/src/navigation/components/BottomActions/MiniPlayer.tsx
  • mobile/src/navigation/components/BottomActions/NavActions.tsx
  • mobile/src/navigation/components/CurrentListMenu.tsx
  • mobile/src/navigation/components/TopAppBar.tsx
  • mobile/src/navigation/layouts/CurrentListLayout.tsx
  • mobile/src/navigation/layouts/NScrollLayout.tsx
  • mobile/src/navigation/screens/HomeView.tsx
  • mobile/src/navigation/screens/albums/CurrentView.tsx
  • mobile/src/navigation/screens/now-playing/UpcomingView.tsx
  • mobile/src/navigation/screens/now-playing/View.tsx
  • mobile/src/navigation/screens/now-playing/components/TopAppBar.tsx
  • mobile/src/navigation/screens/now-playing/sheets/PlaybackOptionsSheet.tsx
  • mobile/src/navigation/screens/playlists/CurrentView.tsx
  • mobile/src/navigation/screens/playlists/View.tsx
  • mobile/src/navigation/screens/playlists/components/ModifyViewBase.tsx
  • mobile/src/navigation/screens/playlists/sheets/ExportM3USheet.tsx
  • mobile/src/navigation/screens/settings/AppUpdateView.tsx
  • mobile/src/navigation/screens/settings/ExperimentalSettingsView.tsx
  • mobile/src/navigation/screens/settings/HiddenTracksView.tsx
  • mobile/src/navigation/screens/settings/PackageLicenseView.tsx
  • mobile/src/navigation/screens/settings/View.tsx
  • mobile/src/navigation/screens/settings/sheets/LanguageSheet.tsx
  • mobile/src/navigation/screens/settings/sheets/ScanFilterListSheet.tsx
  • mobile/src/navigation/screens/settings/sheets/SeparatorsSheet.tsx
  • mobile/src/navigation/screens/settings/sheets/TabOrderSheet.tsx
  • mobile/src/navigation/screens/tracks/ModifyView.tsx
  • mobile/src/navigation/screens/tracks/sheets/TrackSheet.tsx
  • mobile/src/navigation/sheets/ViewOptionsSheet.tsx
  • mobile/src/resources/icons/ActivityZone.tsx
  • mobile/src/resources/icons/Add.tsx
  • mobile/src/resources/icons/Archive.tsx
  • mobile/src/resources/icons/ArrowBack.tsx
  • mobile/src/resources/icons/AutoPlay.tsx
  • mobile/src/resources/icons/BarChart4Bars.tsx
  • mobile/src/resources/icons/Cached.tsx
  • mobile/src/resources/icons/Cancel.tsx
  • mobile/src/resources/icons/Check.tsx
  • mobile/src/resources/icons/CheckCircle.tsx
  • mobile/src/resources/icons/Close.tsx
  • mobile/src/resources/icons/ColorWand.tsx
  • mobile/src/resources/icons/ConversionPath.tsx
  • mobile/src/resources/icons/CreateNewFolder.tsx
  • mobile/src/resources/icons/Delete.tsx
  • mobile/src/resources/icons/DoNotDisturbOn.tsx
  • mobile/src/resources/icons/DocumentSearch.tsx
  • mobile/src/resources/icons/DragHandle.tsx
  • mobile/src/resources/icons/Edit.tsx
  • mobile/src/resources/icons/Favorite.tsx
  • mobile/src/resources/icons/FileSave.tsx
  • mobile/src/resources/icons/Flask.tsx
  • mobile/src/resources/icons/Folder.tsx
  • mobile/src/resources/icons/FormatPaint.tsx
  • mobile/src/resources/icons/Graph1.tsx
  • mobile/src/resources/icons/GraphicEQ.tsx
  • mobile/src/resources/icons/GridView.tsx
  • mobile/src/resources/icons/History.tsx
  • mobile/src/resources/icons/Home.tsx
  • mobile/src/resources/icons/Image.tsx
  • mobile/src/resources/icons/Info.tsx
  • mobile/src/resources/icons/KeyboardArrowDown.tsx
  • mobile/src/resources/icons/LinkOff.tsx
  • mobile/src/resources/icons/LogoGitHub.tsx
  • mobile/src/resources/icons/LogoPlayStore.tsx
  • mobile/src/resources/icons/LowPriority.tsx
  • mobile/src/resources/icons/Lyrics.tsx
  • mobile/src/resources/icons/MobileArrowDown.tsx
  • mobile/src/resources/icons/MoreHoriz.tsx
  • mobile/src/resources/icons/MoreVert.tsx
  • mobile/src/resources/icons/NothingArrowRight.tsx
  • mobile/src/resources/icons/OpenInNew.tsx
  • mobile/src/resources/icons/Pause.tsx
  • mobile/src/resources/icons/PlayArrow.tsx
  • mobile/src/resources/icons/PlaylistAdd.tsx
  • mobile/src/resources/icons/QueueMusic.tsx
  • mobile/src/resources/icons/Remove.tsx
  • mobile/src/resources/icons/Repeat.tsx
  • mobile/src/resources/icons/RepeatOne.tsx
  • mobile/src/resources/icons/Save.tsx
  • mobile/src/resources/icons/Schedule.tsx
  • mobile/src/resources/icons/Search.tsx
  • mobile/src/resources/icons/Settings.tsx
  • mobile/src/resources/icons/Shuffle.tsx
  • mobile/src/resources/icons/SkipNext.tsx
  • mobile/src/resources/icons/SkipPrevious.tsx
  • mobile/src/resources/icons/SlowMotionVideo.tsx
  • mobile/src/resources/icons/Sort.tsx
  • mobile/src/resources/icons/Timer.tsx
  • mobile/src/resources/icons/Translate.tsx
  • mobile/src/resources/icons/ViewAgenda.tsx
  • mobile/src/resources/icons/ViewModule.tsx
  • mobile/src/resources/icons/VisibilityOff.tsx
  • mobile/src/resources/icons/VoiceSelection.tsx
  • mobile/src/resources/icons/VolumeUp.tsx
  • mobile/src/resources/icons/Warning.tsx
  • mobile/src/resources/icons/app-icons.glyphmap.json
  • mobile/src/resources/icons/index.tsx
  • mobile/src/resources/icons/type.ts
  • mobile/src/resources/licenses.json
💤 Files with no reviewable changes (67)
  • mobile/src/resources/icons/Close.tsx
  • mobile/src/resources/icons/Edit.tsx
  • mobile/src/resources/icons/Add.tsx
  • mobile/src/resources/icons/LowPriority.tsx
  • mobile/src/resources/icons/DocumentSearch.tsx
  • mobile/src/resources/icons/PlaylistAdd.tsx
  • mobile/src/resources/icons/Search.tsx
  • mobile/src/resources/icons/RepeatOne.tsx
  • mobile/src/resources/icons/Shuffle.tsx
  • mobile/src/resources/icons/LogoPlayStore.tsx
  • mobile/src/resources/icons/GraphicEQ.tsx
  • mobile/src/resources/icons/Image.tsx
  • mobile/src/resources/icons/Cancel.tsx
  • mobile/src/resources/icons/Graph1.tsx
  • mobile/src/resources/icons/Flask.tsx
  • mobile/src/resources/icons/Home.tsx
  • mobile/src/resources/icons/LogoGitHub.tsx
  • mobile/src/resources/icons/PlayArrow.tsx
  • mobile/src/resources/icons/Remove.tsx
  • mobile/src/resources/icons/Delete.tsx
  • mobile/src/resources/icons/Lyrics.tsx
  • mobile/src/resources/icons/Repeat.tsx
  • mobile/src/resources/icons/VolumeUp.tsx
  • mobile/src/resources/icons/ArrowBack.tsx
  • mobile/src/resources/icons/Translate.tsx
  • mobile/src/resources/icons/OpenInNew.tsx
  • mobile/src/resources/icons/Pause.tsx
  • mobile/src/resources/icons/VisibilityOff.tsx
  • mobile/src/resources/icons/AutoPlay.tsx
  • mobile/src/resources/icons/type.ts
  • mobile/src/resources/icons/History.tsx
  • mobile/src/resources/icons/SkipPrevious.tsx
  • mobile/src/resources/icons/Cached.tsx
  • mobile/src/resources/icons/Warning.tsx
  • mobile/src/resources/icons/ConversionPath.tsx
  • mobile/src/resources/icons/ViewModule.tsx
  • mobile/src/resources/icons/Favorite.tsx
  • mobile/src/resources/icons/VoiceSelection.tsx
  • mobile/src/resources/icons/CheckCircle.tsx
  • mobile/src/resources/icons/BarChart4Bars.tsx
  • mobile/src/resources/icons/DragHandle.tsx
  • mobile/src/resources/icons/LinkOff.tsx
  • mobile/src/resources/icons/KeyboardArrowDown.tsx
  • mobile/src/resources/icons/Schedule.tsx
  • mobile/src/resources/icons/Save.tsx
  • mobile/src/resources/icons/DoNotDisturbOn.tsx
  • mobile/src/resources/icons/FileSave.tsx
  • mobile/src/resources/icons/FormatPaint.tsx
  • mobile/src/resources/icons/ViewAgenda.tsx
  • mobile/src/resources/icons/Sort.tsx
  • mobile/src/resources/icons/ActivityZone.tsx
  • mobile/src/resources/icons/SlowMotionVideo.tsx
  • mobile/src/resources/icons/Info.tsx
  • mobile/src/resources/icons/CreateNewFolder.tsx
  • mobile/src/resources/icons/SkipNext.tsx
  • mobile/src/resources/icons/GridView.tsx
  • mobile/src/resources/icons/Check.tsx
  • mobile/src/resources/icons/NothingArrowRight.tsx
  • mobile/src/resources/icons/MobileArrowDown.tsx
  • mobile/src/resources/icons/ColorWand.tsx
  • mobile/src/resources/icons/QueueMusic.tsx
  • mobile/src/resources/icons/MoreHoriz.tsx
  • mobile/src/resources/icons/MoreVert.tsx
  • mobile/src/resources/icons/Archive.tsx
  • mobile/src/resources/icons/Folder.tsx
  • mobile/src/resources/icons/Timer.tsx
  • mobile/src/resources/icons/Settings.tsx

Comment thread mobile/src/components/Form/NumberStepper.tsx
@cyanChill cyanChill merged commit be17d49 into dev Jun 17, 2026
1 check passed
@cyanChill cyanChill deleted the refactor/nano-icons branch June 17, 2026 02:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Housekeeping Code maintenance or refactor.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant