Skip to content

chore: replace nrk-coreicons with fontawesome#1634

Open
Julusian wants to merge 1 commit intoSofie-Automation:mainfrom
SuperFlyTV:chore/replace-nrk-coreicons
Open

chore: replace nrk-coreicons with fontawesome#1634
Julusian wants to merge 1 commit intoSofie-Automation:mainfrom
SuperFlyTV:chore/replace-nrk-coreicons

Conversation

@Julusian
Copy link
Member

@Julusian Julusian commented Feb 4, 2026

About the Contributor

This pull request is posted on behalf of Superfly

Type of Contribution

This is a: Code improvement

New Behavior

We are using the @nrk/core-icons npm library for a couple of icons. We are also using fontawesome for a majority of the icons.

Additionally, the version of @nrk/core-icons we were using v9 is rather out of date, which adds noise to yarn upgrade-interactive.

Instead, this swaps out the couple of icons for fontawesome.

An example:
Before:
Screenshot from 2026-02-04 14-47-16
After:
Screenshot from 2026-02-04 14-47-09

I don't know if pixel perfect precision in the size/position is important here/elsewhere, so have not tried to enforce that for now.

Alternatives

If this is not liked, then we could update and continue to use the library.
It feels cleaner to me to use one library for icons, but UX may disagree

Testing

  • I have added one or more unit tests for this PR
  • I have updated the relevant unit tests
  • No unit test changes are needed for this PR

Affected areas

Time Frame

Other Information

Status

  • PR is ready to be reviewed.
  • The functionality has been tested by the author.
  • Relevant unit tests has been added / updated.
  • Relevant documentation (code comments, system documentation) has been added / updated.

Consolidates icon library by replacing nrk-coreicons with FontAwesome

Replaces usage of the @nrk/core-icons npm library with Font Awesome across the webui package, eliminating a small set of duplicate icons and reducing dependency complexity.

Changes Made

Dependencies:

  • Removed @nrk/core-icons dependency from packages/webui/package.json

Icon Replacements:
Replaced 5 instances of NRK core icons with Font Awesome equivalents across the following files:

  • ModalDialog.tsx: NRkCloseFontAwesomeIcon (close, size="xl")
  • NotificationCenterPanel.tsx: NrkArrowLeft and NrkCloseFontAwesomeIcon (arrow-left, close)
  • Modal.tsx: NrkCloseFontAwesomeIcon (close, size="xl")
  • RundownHeader.tsx: NrkCloseFontAwesomeIcon (close, size="xl")
  • PropertiesPanel.tsx: NrkCloseFontAwesomeIcon (close, size="lg")

All icon replacements updated the corresponding imports from CoreIcons to FontAwesomeIcon. The functional behavior of the close buttons and navigation icons remains unchanged; only the visual rendering and underlying component implementation are updated.

Notes

No pixel-perfect matching was attempted for size/position differences between the icon libraries. Event handling and control flow remain unaffected by these changes. No unit test modifications were required.

@Julusian Julusian requested a review from a team as a code owner February 4, 2026 15:21
@coderabbitai
Copy link

coderabbitai bot commented Feb 4, 2026

Walkthrough

This pull request removes the @nrk/core-icons dependency and replaces all NRK icon usages with FontAwesome equivalents across five component files. The changes are purely cosmetic icon library migrations with no functional or behavioral modifications.

Changes

Cohort / File(s) Summary
Dependency Removal
packages/webui/package.json
Removed @nrk/core-icons from dependencies.
Modal Components
packages/webui/src/client/lib/ModalDialog.tsx, packages/webui/src/client/lib/ui/containers/modals/Modal.tsx
Replaced NRK NrkClose icon with FontAwesome close icon in modal headers; updated imports and styling (added mt-2 margin).
UI Components
packages/webui/src/client/lib/notifications/NotificationCenterPanel.tsx, packages/webui/src/client/ui/RundownView/RundownHeader/RundownHeader.tsx, packages/webui/src/client/ui/UserEditOperations/PropertiesPanel.tsx
Replaced NRK core icons (NrkArrowLeft, NrkClose) with FontAwesome equivalents (arrow-left, close); updated imports and sizing attributes.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Poem

🐰 Icons swap from Nordic shores to awesome fonts so bright,
✨ Each close button now FontAwesome, renders just right,
No logic bent, no flows that changed, just visual cheer,
A cleaner dependency tree—hooray, my dear! 🎉

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: replacing the @nrk/core-icons dependency with FontAwesome icons across multiple files in the codebase.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Important

Action Needed: IP Allowlist Update

If your organization protects your Git platform with IP whitelisting, please add the new CodeRabbit IP address to your allowlist:

  • 136.113.208.247/32 (new)
  • 34.170.211.100/32
  • 35.222.179.152/32

Reviews will stop working after February 8, 2026 if the new IP is not added to your allowlist.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov
Copy link

codecov bot commented Feb 4, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@Julusian Julusian added the Contribution from SuperFly.tv Contributions sponsored by SuperFly.tv label Feb 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Contribution from SuperFly.tv Contributions sponsored by SuperFly.tv

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant