Support Microsoft Teams Themes in SharePoint Framework Solutions

If you are a SharePoint Framework developer, you're most likely aware that SPFx allows you to refer to the theme colors of the context site. As a result, if your web part is placed on a site that uses a red theme, it uses the red palette as well, and if it's placed on a site that uses the blue theme, it automatically adjusts itself to use the blue palette. All of this is done automatically without any changes to the web part code in between.
But what if you expose your web part to Microsoft Teams? And selected theme in Teams is Dark or Contrast?
Unfortunately, SharePoint Framework doesn't handle MS Teams themes for you, you should do that by yourself.
And it's not a big deal if you have few controls in the web part.
But what if your project contains tens of different components?
In this post I want to share the approach I used to support MS Teams themes in the web part that has about 50 different components. Note: I use React for production SPFx development, so all the thoughts below may not be applicable to other frameworks, especially if the components are not so encapsulated as in React.


Thank you for attending SPTechCon San Francisco 2020!

It was a great week!
So much content to learn, great speakers, awesome conversations!
I'd like to thank Exposition Development Company for organizing the event and accepting my submissions for speaking!
Thanks to all the sponsors who helped to make this event possible!
Thanks to all the speakers for sharing knowledge!
And, of course, thank you to all the attendees of SPTechCon San Francisco 2020!
Here are the links to the slides of my sessions (you can also download them from official event app):


Office UI Fabric React Grouped DetailsList - Display Tree-like Hierarchy

This blog post describes how to implement tree-like hierarchy using Office UI Fabric React (OUIFR) Grouped DetailsList component.
We'll be working with a hierarchy similar to the one displayed on the image below:


Office UI Fabric React (OUIFR) DetailsList ignores (doesn't render) items for the group if it (the group) has subgroups. As a result for a tree-like hierarchy - some of the items could be lost.
Jump to solution.


NACS - One of the Best SharePoint Conferences in US

This year I'll be attending North American Collaboration Summit for the first time. And I'm really happy about that!
It's a great conference loaded with the best speakers and really interesting and helpful content!
There are workshops and sessions around SharePoint, Microsoft Teams, Power Platform, security and so on! Every attendee will find some information to be used in day-to-day job. And it doesn't matter if you are a power user, developer, admin or executive! There is content for everyone!
And, because it is a non-profit event, the tickets are much cheaper than on other multi-day conferences!
My sessions are part of a developer track and focused on advanced features of SharePoint Framework
The first one is "SharePoint Framework Connected Web Parts" where you can learn how to connect multiple SharePoint Framework web parts (or event extensions) using Dynamic Data capability.
The second session, "Developing React Templates Using SharePoint Framework Library Components" describes how to create rich React templates and dynamically include them into you SharePoint Framework projects using SPFx Library Component solution type.
Hope to see you in Branson, April 2-3, 2020.
You can also use code TERENTIEV during the registration to save $50.
Register here: https://nacs.ticketspice.com/nacs2020

Have fun!


SPTechCon San Francisco 2020!

I want to invite you to join me at SPTechCon San Francisco 2020 that will be held February 18-21 at Hyatt Regency SFO.
This will be a great event with phenomenal speakers and awesome content!
You'll definitely learn a lot and for sure it worth it!
Here is a small video that promotes the sessions I'll be presenting during the event:

I'll be happy to see you on any of the sessions!
And you can use registration code AlexT20 to save $200 on your ticket price (the image below is clickable).

Have fun!