From dca77e7686bc29ee5a99543a5118b4a00eb8c547 Mon Sep 17 00:00:00 2001 From: rajamatt Date: Thu, 23 May 2024 09:19:22 -0400 Subject: [PATCH] docs: update theme builder steps --- doc/assets/material-theme-builder-export1.png | Bin 2900 -> 0 bytes doc/assets/material-theme-builder-export2.png | Bin 18154 -> 0 bytes doc/assets/material-theme-export-button.png | Bin 0 -> 2022 bytes doc/assets/material-theme-export-json.png | Bin 0 -> 15355 bytes doc/assets/material-theme-export-section.png | Bin 0 -> 448 bytes doc/material-dsp.md | 19 +++++++++--------- 6 files changed, 9 insertions(+), 10 deletions(-) delete mode 100644 doc/assets/material-theme-builder-export1.png delete mode 100644 doc/assets/material-theme-builder-export2.png create mode 100644 doc/assets/material-theme-export-button.png create mode 100644 doc/assets/material-theme-export-json.png create mode 100644 doc/assets/material-theme-export-section.png diff --git a/doc/assets/material-theme-builder-export1.png b/doc/assets/material-theme-builder-export1.png deleted file mode 100644 index ef7cb74edfe061062c49456c2936c660543650c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2900 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%0AQV=dD1%pj>DJn8 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 Eg37?e$^ZZW literal 0 HcmV?d00001 diff --git a/doc/assets/material-theme-export-json.png b/doc/assets/material-theme-export-json.png new file mode 100644 index 0000000000000000000000000000000000000000..5736199b335e9c40f2ecaee56d6a8c9a5f306368 GIT binary patch literal 15355 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 ``` -> [!NOTE] -> The Uno.Sdk will automatically include this configuration for you. Creating a new project with the _CSharpMarkup_ feature will automatically set the generator attribute to `Csharp`. It will set the generator to `Xaml` by default. - ## Generating a custom color palette and exporting it as a JSON file 1. Navigate to the [Material Theme Builder](https://aka.platform.uno/uno-material-themebuilder) and select the colors you want to use for your application. -2. Locate the _Export_ button and pick the _Material Theme (JSON)_ format. +2. When you are done customizing, open the **Export** section located at the top rightmost of the screen. + + ![material-theme-export-section](assets/material-theme-export-section.png) +3. In the **Export** section, locate the _Export_ button and pick the _Material Theme (JSON)_ format. - ![Export Button](assets/material-theme-builder-export1.png) ![DSP Selection](assets/material-theme-builder-export2.png) -3. Save the file to your computer. -4. Replace the `ColorPaletteOverride.json` file in the `Styles` folder of your application project with the one you just downloaded. -5. Build your application. The `ColorPaletteOverride.xaml` file will be automatically updated with the colors present in the JSON file. + ![material-theme-export-button](assets/material-theme-export-button.png) ![material-theme-export-json](assets/material-theme-export-json.png) +4. Save the file to your computer. +5. Replace the `ColorPaletteOverride.json` file in the `Styles` folder of your application project with the one you just downloaded. +6. Build your application. The `ColorPaletteOverride.xaml` file will be automatically updated with the colors present in the JSON file. ## More flexibility @@ -70,6 +70,5 @@ This will generate the file at each build, potentially overriding any changes yo Alternatively, you can also use the [Uno.Dsp.Cli](https://nuget.org/packages/Uno.Dsp.Cli) package to generate the file from the command line. This will allow you to generate the file only when you want to, and not at each build. > [!NOTE] -> Although the **Material Theme Builder Tool** doesn't export **Material Tokens (DSP)** packages anymore, the Uno Figma Plugin still supports this file format. -> To be able to import DSP packages just follow the same steps described previously and save the downloaded DSP zip file as `ColorPaletteOverride.zip` in the `Styles` folder of your application project. +> Although the **Material Theme Builder Tool** doesn't export **Material Tokens (DSP)** packages anymore, to import DSP packages just follow the same steps described previously and save the downloaded DSP zip file as `ColorPaletteOverride.zip` in the `Styles` folder of your application project. > In that case, make sure to delete the `material-theme.json` file from `Styles` folder before building your application, to avoid conflicts.