0
0
mirror of https://github.com/naturalcrit/homebrewery.git synced 2026-03-22 08:58:11 +00:00

transform ssytems into tags

This commit is contained in:
Víctor Losada Hernández
2026-03-07 15:14:30 +01:00
parent da0ab9dda9
commit 8ea082daf0
2 changed files with 18 additions and 1 deletions

View File

@@ -196,6 +196,7 @@ const EditPage = (props)=>{
saveTimeout.current = setTimeout(async ()=>{ saveTimeout.current = setTimeout(async ()=>{
setIsSaving(true); setIsSaving(true);
setError(null); setError(null);
console.log(currentBrew);
await save(currentBrew, saveGoogle) await save(currentBrew, saveGoogle)
.catch((err)=>{ .catch((err)=>{
setError(err); setError(err);

View File

@@ -31,6 +31,17 @@ const isStaticTheme = (renderer, themeName)=>{
// }); // });
// }; // };
const migrateSystemsToTags = (brew) => {
if(!brew?.systems?.length) return brew;
const systemTags = brew.systems.map(s => `system:${s}`);
brew.tags = _.uniq([...(brew.tags || []), ...systemTags]);
delete brew.systems;
return brew;
};
const MAX_TITLE_LENGTH = 100; const MAX_TITLE_LENGTH = 100;
const api = { const api = {
@@ -193,7 +204,7 @@ const api = {
`\`\`\`\n\n` + `\`\`\`\n\n` +
`${text}`; `${text}`;
} }
const metadata = _.pick(brew, ['title', 'description', 'tags', 'systems', 'renderer', 'theme']); const metadata = _.pick(brew, ['title', 'description', 'tags', 'renderer', 'theme']);
const snippetsArray = brewSnippetsToJSON('brew_snippets', brew.snippets, null, false).snippets; const snippetsArray = brewSnippetsToJSON('brew_snippets', brew.snippets, null, false).snippets;
metadata.snippets = snippetsArray.length > 0 ? snippetsArray : undefined; metadata.snippets = snippetsArray.length > 0 ? snippetsArray : undefined;
text = `\`\`\`metadata\n` + text = `\`\`\`metadata\n` +
@@ -392,6 +403,11 @@ const api = {
} }
let brew = _.assign(brewFromServer, brewFromClient); let brew = _.assign(brewFromServer, brewFromClient);
migrateSystemsToTags(brew);
console.log('migrating systems to tags', !!brew.systems);
console.log(brew);
brew.title = brew.title.trim(); brew.title = brew.title.trim();
brew.description = brew.description.trim() || ''; brew.description = brew.description.trim() || '';
brew.text = api.mergeBrewText(brew); brew.text = api.mergeBrewText(brew);