Skip to content

Comments

Add spright custom colored icons for calendar work item types#2861

Open
vivinkrishna-ni wants to merge 38 commits intomainfrom
users/vivin/add-colored-icons
Open

Add spright custom colored icons for calendar work item types#2861
vivinkrishna-ni wants to merge 38 commits intomainfrom
users/vivin/add-colored-icons

Conversation

@vivinkrishna-ni
Copy link
Contributor

Pull Request

🤨 Rationale

Nimble icons currently do not have a way to change colors based on the requirements, especially when used within Nimble table components. While Nimble provides color override mechanisms, these cannot be applied when icons are used in table cells through the mapping-icon component.

This is a application-specific requirement, so utilizing the Spright to register the icons for different types of work items.

👩‍💻 Implementation

  1. Extends IconSvg for Nimble table compatibility
  2. Imports SVG data from nimble-tokens to reuse existing assets
  3. Applies custom styles with specific calendar event color design tokens
  4. Registers with spright prefix via FAST DesignSystem
  5. Exports class and tag constant for type-safe usage
  6. Create 5 custom colored event icons:
    1. calendar-calibration
    2. calendar-maintenance
    3. calendar-reservation
    4. calendar-test-plan
    5. calendar-transport-order

🧪 Testing

Verified from the storybook build.

✅ Checklist

  • I have updated the project documentation to reflect my changes or determined no changes are needed.

Vivin Krishna R N and others added 29 commits January 28, 2026 20:49
…users/vivin/add-more-calendar-theme-aware-tokens
…users/vivin/add-more-calendar-theme-aware-tokens
@github-actions
Copy link

Dependency Review

The following issues were found:

  • ❌ 1 vulnerable package(s)
  • ✅ 0 package(s) with incompatible licenses
  • ✅ 0 package(s) with invalid SPDX license definitions
  • ✅ 0 package(s) with unknown licenses.

View full job summary

Base automatically changed from users/vivin/add-more-calendar-theme-aware-tokens to main February 16, 2026 17:54
@vivinkrishna-ni vivinkrishna-ni marked this pull request as ready for review February 17, 2026 17:49
@@ -0,0 +1,5 @@
export { IconCalendarCalibration, iconCalendarCalibrationTag } from './calendar-calibration';
Copy link
Member

@rajsite rajsite Feb 17, 2026

Choose a reason for hiding this comment

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

For symmetry with nimble can you call this file all-icons.ts instead of index.ts?

Comment on lines +15 to +19
import './icons/calendar-calibration';
import './icons/calendar-maintenance';
import './icons/calendar-reservation';
import './icons/calendar-test-plan';
import './icons/calendar-transport-order';
Copy link
Member

Choose a reason for hiding this comment

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

After the other rename can just do:

Suggested change
import './icons/calendar-calibration';
import './icons/calendar-maintenance';
import './icons/calendar-reservation';
import './icons/calendar-test-plan';
import './icons/calendar-transport-order';
import './icons/all-icons';

@@ -0,0 +1,7 @@
{
Copy link
Member

Choose a reason for hiding this comment

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

Doens't look like any nimble-components changes are in this PR, can remove this change file

@@ -0,0 +1,7 @@
{
Copy link
Member

Choose a reason for hiding this comment

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

Are you planning to make spright-angular directives for the icons? Could be in a follow-up or in this PR

@@ -0,0 +1,7 @@
{
Copy link
Contributor

Choose a reason for hiding this comment

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

I'm sure you're aware but in case you forgot: you'll need to do framework integration work for these components since you can't rely on the code generation approach we use for core Nimble icons. If you only need Angular it's ok to stop there, but Blazor and React integration are appreciated. This can happen in a follow up PR.

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.

3 participants