From 961552827245ff63eb3e01df8986b77d1f5b35eb Mon Sep 17 00:00:00 2001 From: Sebastian Date: Wed, 12 Aug 2020 14:55:18 +0200 Subject: [PATCH] Reference resource directly. --- .../Contents/Queries/ContentEnricher.cs | 28 ++++++++------ .../Frontend/Middlewares/IndexExtensions.cs | 2 +- backend/src/Squidex/Squidex.csproj | 10 ++++- frontend/app/app.module.ts | 2 +- ....en.json => translations-backend__en.json} | 0 .../texts.en => i18n/translations-frontend.en | 0 ...en.json => translations-frontend__en.json} | 0 .../translator/Squidex.Translator/Commands.cs | 8 ---- .../Processes/GenerateFrontendResources.cs | 38 ------------------- .../State/TranslationService.cs | 5 ++- 10 files changed, 30 insertions(+), 63 deletions(-) rename i18n/{translations-backend.en.json => translations-backend__en.json} (100%) rename backend/src/Squidex/Areas/Frontend/Resources/texts.en => i18n/translations-frontend.en (100%) rename i18n/{translations-frontend.en.json => translations-frontend__en.json} (100%) delete mode 100644 i18n/translator/Squidex.Translator/Processes/GenerateFrontendResources.cs diff --git a/backend/src/Squidex.Domain.Apps.Entities/Contents/Queries/ContentEnricher.cs b/backend/src/Squidex.Domain.Apps.Entities/Contents/Queries/ContentEnricher.cs index 925cdc1b2..0ac41eb7d 100644 --- a/backend/src/Squidex.Domain.Apps.Entities/Contents/Queries/ContentEnricher.cs +++ b/backend/src/Squidex.Domain.Apps.Entities/Contents/Queries/ContentEnricher.cs @@ -59,9 +59,12 @@ namespace Squidex.Domain.Apps.Entities.Contents.Queries { var results = new List(); - foreach (var step in steps) + if (context.App != null) { - await step.EnrichAsync(context); + foreach (var step in steps) + { + await step.EnrichAsync(context); + } } if (contents.Any()) @@ -78,18 +81,21 @@ namespace Squidex.Domain.Apps.Entities.Contents.Queries results.Add(result); } - var schemaCache = new Dictionary>(); - - Task GetSchema(Guid id) + if (context.App != null) { - return schemaCache.GetOrAdd(id, x => ContentQuery.GetSchemaOrThrowAsync(context, x.ToString())); - } + var schemaCache = new Dictionary>(); - foreach (var step in steps) - { - using (Profiler.TraceMethod(step.ToString()!)) + Task GetSchema(Guid id) + { + return schemaCache.GetOrAdd(id, x => ContentQuery.GetSchemaOrThrowAsync(context, x.ToString())); + } + + foreach (var step in steps) { - await step.EnrichAsync(context, results, GetSchema); + using (Profiler.TraceMethod(step.ToString()!)) + { + await step.EnrichAsync(context, results, GetSchema); + } } } } diff --git a/backend/src/Squidex/Areas/Frontend/Middlewares/IndexExtensions.cs b/backend/src/Squidex/Areas/Frontend/Middlewares/IndexExtensions.cs index 4c5305568..dad001ca6 100644 --- a/backend/src/Squidex/Areas/Frontend/Middlewares/IndexExtensions.cs +++ b/backend/src/Squidex/Areas/Frontend/Middlewares/IndexExtensions.cs @@ -82,7 +82,7 @@ namespace Squidex.Areas.Frontend.Middlewares { var assembly = typeof(IndexExtensions).Assembly; - var resourceName = $"Squidex.Areas.Frontend.Resources.texts.{culture}"; + var resourceName = $"Squidex.Areas.Frontend.Resources.translations-frontend__{culture}.json"; var resourceStream = assembly.GetManifestResourceStream(resourceName); if (resourceStream != null) diff --git a/backend/src/Squidex/Squidex.csproj b/backend/src/Squidex/Squidex.csproj index c9dedfb91..b1a226040 100644 --- a/backend/src/Squidex/Squidex.csproj +++ b/backend/src/Squidex/Squidex.csproj @@ -86,7 +86,6 @@ - @@ -103,7 +102,6 @@ - @@ -121,6 +119,14 @@ + + + + + + + + $(NoWarn);CS1591;1591;1573;1572;NU1605;IDE0060 diff --git a/frontend/app/app.module.ts b/frontend/app/app.module.ts index 4a15b2609..f9c1e6288 100644 --- a/frontend/app/app.module.ts +++ b/frontend/app/app.module.ts @@ -57,7 +57,7 @@ export function configTranslations() { if (process.env.NODE_ENV === 'production') { return new LocalizerService(window['texts']); } else { - return new LocalizerService(require('./../../i18n/translations-frontend.en.json')).logMissingKeys(); + return new LocalizerService(require('./../../i18n/translations-frontend__en.json')).logMissingKeys(); } } diff --git a/i18n/translations-backend.en.json b/i18n/translations-backend__en.json similarity index 100% rename from i18n/translations-backend.en.json rename to i18n/translations-backend__en.json diff --git a/backend/src/Squidex/Areas/Frontend/Resources/texts.en b/i18n/translations-frontend.en similarity index 100% rename from backend/src/Squidex/Areas/Frontend/Resources/texts.en rename to i18n/translations-frontend.en diff --git a/i18n/translations-frontend.en.json b/i18n/translations-frontend__en.json similarity index 100% rename from i18n/translations-frontend.en.json rename to i18n/translations-frontend__en.json diff --git a/i18n/translator/Squidex.Translator/Commands.cs b/i18n/translator/Squidex.Translator/Commands.cs index bc3cb6eca..886e55fa8 100644 --- a/i18n/translator/Squidex.Translator/Commands.cs +++ b/i18n/translator/Squidex.Translator/Commands.cs @@ -77,14 +77,6 @@ namespace Squidex.Translator new GenerateBackendResources(folder, service).Run(); } - [Command(Name = "gen-frontend", Description = "Generate the frontend translations.")] - public void GenerateFrontend(TranslateArguments arguments) - { - var (folder, service) = Setup(arguments, "translations-frontend"); - - new GenerateFrontendResources(folder, service).Run(); - } - [Command(Name = "migrate-backend", Description = "Migrate the backend files.")] public void MigrateBackend(TranslateArguments arguments) { diff --git a/i18n/translator/Squidex.Translator/Processes/GenerateFrontendResources.cs b/i18n/translator/Squidex.Translator/Processes/GenerateFrontendResources.cs deleted file mode 100644 index 9e8c7fcd5..000000000 --- a/i18n/translator/Squidex.Translator/Processes/GenerateFrontendResources.cs +++ /dev/null @@ -1,38 +0,0 @@ -// ========================================================================== -// Squidex Headless CMS -// ========================================================================== -// Copyright (c) Squidex UG (haftungsbeschraenkt) -// All rights reserved. Licensed under the MIT license. -// ========================================================================== - -using System.IO; -using Squidex.Translator.State; - -namespace Squidex.Translator.Processes -{ - public sealed class GenerateFrontendResources - { - private readonly TranslationService service; - private readonly DirectoryInfo folder; - - public GenerateFrontendResources(DirectoryInfo folder, TranslationService service) - { - this.folder = new DirectoryInfo(Path.Combine(folder.FullName, "backend", "src", "Squidex", "Areas", "Frontend", "Resources")); - - this.service = service; - } - - public void Run() - { - var fullName = Path.Combine(folder.FullName, "texts.en"); - - if (!folder.Exists) - { - Directory.CreateDirectory(folder.FullName); - } - - service.WriteTexts(fullName); - service.Save(); - } - } -} diff --git a/i18n/translator/Squidex.Translator/State/TranslationService.cs b/i18n/translator/Squidex.Translator/State/TranslationService.cs index 9f4cc8298..0b1638b05 100644 --- a/i18n/translator/Squidex.Translator/State/TranslationService.cs +++ b/i18n/translator/Squidex.Translator/State/TranslationService.cs @@ -48,7 +48,7 @@ namespace Squidex.Translator.State { this.file = file; - translations = Load(".en.json"); + translations = Load("__en.json"); translationsTodo = Load("_todos.json"); ignoreList = Load("_ignore.json"); @@ -118,7 +118,8 @@ namespace Squidex.Translator.State public void Save() { - Save(".en.json", translations); + Save("__en.json", translations); + Save("_todos.json", translationsTodo); Save("_ignore.json", ignoreList); }