diff --git a/client/homebrew/editor/metadataEditor/metadataEditor.jsx b/client/homebrew/editor/metadataEditor/metadataEditor.jsx index a71b6cbc2..0eee308ff 100644 --- a/client/homebrew/editor/metadataEditor/metadataEditor.jsx +++ b/client/homebrew/editor/metadataEditor/metadataEditor.jsx @@ -192,7 +192,7 @@ const MetadataEditor = createClass({ renderThemeDropdown : function(){ if(!global.enable_themes) return; - const mergedThemes = { ...Themes, ...this.props.userThemes }; + const mergedThemes = _.merge(Themes, this.props.userThemes); const listThemes = (renderer)=>{ return _.map(_.values(mergedThemes[renderer]), (theme)=>{ @@ -230,7 +230,6 @@ const MetadataEditor = createClass({ {/*listThemes('Legacy')*/} {listThemes('V3')} - {listThemes('Brew')} ; } diff --git a/server/homebrew.api.js b/server/homebrew.api.js index 1709f4f46..747a83b55 100644 --- a/server/homebrew.api.js +++ b/server/homebrew.api.js @@ -55,16 +55,18 @@ const api = { 'thumbnail', 'textBin', 'text', - 'authors' + 'authors', + 'renderer' ]; const userThemes = {}; - const brews = await HomebrewModel.getByUser(username, true, fields, { tags: { $in: ['meta:theme', 'meta:Theme'] }, renderer: { $ne: 'Legacy' } }); + const brews = await HomebrewModel.getByUser(username, true, fields, { tags: { $in: ['meta:theme', 'meta:Theme'] }}); if(brews) { for (const brew of brews) { - userThemes[brew.shareId] = { + userThemes[brew.renderer] ??= {}; + userThemes[brew.renderer][brew.shareId] = { name : brew.title, renderer : brew.renderer, baseTheme : brew.theme,