Load JSON themes (#6893)

This PR changes the theme loading to use the JSON themes bundled with
the binary rather then the Rust theme definitions.

### Performance

I profiled this using `cargo run --release` to see what the speed
differences would be now that we're deserializing JSON:

**Before:** `ThemeRegistry::load_user_themes` took 16.656666ms
**After:** `ThemeRegistry::load_user_themes` took 18.784875ms

It's slightly slower, but not by much. There is probably some work we
could do here to bring down the theme loading time in general.

Release Notes:

- N/A
This commit is contained in:
Marshall Bowers 2024-01-27 16:03:04 -05:00 committed by GitHub
parent f7fc4ffbe5
commit 5f1dcb76fe
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 133 additions and 48 deletions

View file

@ -9,7 +9,7 @@ OUTPUT_FILE=$(pwd)/assets/licenses.md
echo -e "# ###### THEME LICENSES ######\n" >> $OUTPUT_FILE
echo "Generating theme licenses"
cat crates/theme/src/themes/LICENSES >> $OUTPUT_FILE
cat assets/themes/LICENSES >> $OUTPUT_FILE
echo -e "# ###### CODE LICENSES ######\n" >> $OUTPUT_FILE