<commit_before># Modern Experience Theme Manager

## Summary
This sample web part provides a user interface for applying a Modern Experience theme in SharePoint 2019 on-premises.

The Theme Palette can be generated using the UI Fabric Theme Generator at: https://fabricweb.z5.web.core.windows.net/pr-deploy-site/refs/pull/9318/merge/theming-designer/index.html.

<h2>The following feature is available within this sample:</h2>

<b>Apply a theme:</b><br>
By providing a Site Collection URL, along with a theme name and palette, the theme will be applied to the Site Collection directly without being added to the tenant Company Theme options.<br>
NOTE: This is a great option to provide theme management of a Site Collection without adding a theme to the "Company Themes" choices within the "Change the Look" options at the tenant level. The web part could be added to a Site Collection App Catalog to ensure availability of the web part is only available to those approved for theme management.
![preview](./assets/apply-a-theme.png)


## Used SharePoint Framework Version 
![drop](https://img.shields.io/badge/drop-1.8.2-orange.svg)

## Applies to

* [SharePoint Framework](https:/dev.office.com/sharepoint)
* SharePoint 2019 on-premises


## Solution

Solution|Author(s)
--------|---------
js-theme-manager-2019 | <NAME> ([@DavidWarnerII](https://twitter.com/davidwarnerii) / [Warner Digital](http://warner.digital))
js-theme-manager-2019 | <NAME> ([@Beau__Cameron](https://twitter.com/@Beau__Cameron) / [Blog](https://beaucameron.net/))
js-theme-manager-2019 | <NAME>
js-theme-manager-2019 | <NAME> ([@skaggej](https://twitter.com/skaggej) / [ericskaggs.net](http://www.ericskaggs.net/))

## Version history

Version|Date|Comments
-------|----|--------
2019.0.0.0|June 17, 2019|Initial release

## Disclaimer
**THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.**

---

## Minimal Path to Awesome

- Clone this repository
- in the command line run:
  - `npm install`
  - `gulp serve`



## Features
This Web Part illustrates the following concepts on top of the SharePoint Framework:

- Using the SharePoint Online REST API to apply Modern Experience Themes

## Additional Information:

- [Office UI Fabric Theme Palette Generator](https://fabricweb.z5.web.core.windows.net/pr-deploy-site/refs/pull/9318/merge/theming-designer/index.html)

<img src="https://telemetry.sharepointpnp.com/sp-dev-fx-webparts/samples/js-theme-manager-2019" />
<commit_msg>Altered installation instructions a bit (using tenant workbench instead of local is required)<commit_after># Modern Experience Theme Manager

## Summary
This sample web part provides a user interface for applying a Modern Experience theme in SharePoint 2019 on-premises.

The Theme Palette can be generated using the UI Fabric Theme Generator at: https://fabricweb.z5.web.core.windows.net/pr-deploy-site/refs/pull/9318/merge/theming-designer/index.html.

<h2>The following feature is available within this sample:</h2>

<b>Apply a theme:</b><br>
By providing a Site Collection URL, along with a theme name and palette, the theme will be applied to the Site Collection directly without being added to the tenant Company Theme options.<br>
NOTE: This is a great option to provide theme management of a Site Collection without adding a theme to the "Company Themes" choices within the "Change the Look" options at the tenant level. The web part could be added to a Site Collection App Catalog to ensure availability of the web part is only available to those approved for theme management.
![preview](./assets/apply-a-theme.png)


## Used SharePoint Framework Version 
![drop](https://img.shields.io/badge/drop-1.8.2-orange.svg)

## Applies to

* [SharePoint Framework](https:/dev.office.com/sharepoint)
* SharePoint 2019 on-premises


## Solution

Solution|Author(s)
--------|---------
js-theme-manager-2019 | <NAME> ([@DavidWarnerII](https://twitter.com/davidwarnerii) / [Warner Digital](http://warner.digital))
js-theme-manager-2019 | <NAME> ([@Beau__Cameron](https://twitter.com/@Beau__Cameron) / [Blog](https://beaucameron.net/))
js-theme-manager-2019 | <NAME>
js-theme-manager-2019 | <NAME> ([@skaggej](https://twitter.com/skaggej) / [ericskaggs.net](http://www.ericskaggs.net/))

## Version history

Version|Date|Comments
-------|----|--------
2019.0.0.0|June 17, 2019|Initial release

## Disclaimer
**THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.**

---

## Minimal Path to Awesome

- Clone this repository
- in the command line run:
  - `npm install`
  - `gulp serve --nobrowser`
  - In your browser, go to `https://yourtenantname.sharepoint.com/_layouts/15/workbench.aspx`



## Features
This Web Part illustrates the following concepts on top of the SharePoint Framework:

- Using the SharePoint Online REST API to apply Modern Experience Themes

## Additional Information:

- [Office UI Fabric Theme Palette Generator](https://fabricweb.z5.web.core.windows.net/pr-deploy-site/refs/pull/9318/merge/theming-designer/index.html)

<img src="https://telemetry.sharepointpnp.com/sp-dev-fx-webparts/samples/js-theme-manager-2019" />

{'fraction_non_alphanumeric': 0.12356001486436269, 'fraction_numerical': 0.021181716833890748, 'mean_word_length': 4.350894632206759, 'pattern_counts': {'":': 0, '<': 25, '<?xml version=': 0, '>': 25, 'https://': 17, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 2, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6187897', 'n_tokens_mistral': 1717, 'n_tokens_neox': 1562, 'n_words': 537}