BotFramework-WebChat
BotFramework-WebChat copied to clipboard
feat: new icons subsystem
Fixes #
Changelog Entry
Description
This continues the work on modernizing how Web Chat handles icons via a dedicated icon component and CSS-modules. Now almost all icons are defined in CSS which makes DOM lighter and easier to customize.
Design
As Fluent design system is independent from Web Chat, we have two different components handling both icon sets bootstrapped by the createIconComponent utility.
The utility handles the heavy lifting of passed props validation at runtime.
Specific Changes
- migrated most of the icon to
ComponentIconapproach - minor tests updates
- updated attachment icon to address a TODO item
- simplified modal close button layout
- fixed minor styling issues with Fluent icons color
- updated snapshots
-
- [x] I have added tests and executed them locally
- [x] I have updated
CHANGELOG.md - [x] ~I have updated documentation~
Review Checklist
This section is for contributors to review your work.
- [x] Accessibility reviewed (tab order, content readability, alt text, color contrast)
- [x] Browser and platform compatibilities reviewed
- [x] CSS styles reviewed (minimal rules, no
z-index) - [x] Documents reviewed (docs, samples, live demo)
- [x] Internationalization reviewed (strings, unit formatting)
- [x]
package.jsonandpackage-lock.jsonreviewed - [x] Security reviewed (no data URIs, check for nonce leak)
- [x] Tests reviewed (coverage, legitimacy)