diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/cs.json b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/cs.json index c530dd064b..17e549f7a7 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/cs.json +++ b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/cs.json @@ -15,6 +15,7 @@ "CmsKit.Ratings": "Hodnocení", "CmsKit.Reactions": "Reakce", "CmsKit.Tags": "Tagy", + "CmsKit.MarkedItems": "Označené položky", "CmsKit:0002": "Obsah již existuje!", "CmsKit:0003": "Entitu {0} nelze označit.", "CmsKit:Blog:0001": "Daný slimák ({Slug}) již existuje!", @@ -26,8 +27,19 @@ "CmsKit:Rating:0001": "Entitu {EntityType} nelze hodnotit.", "CmsKit:Reaction:0001": "Entita {EntityType} nemůže mít reakce.", "CmsKit:Tag:0002": "Entitu nelze označit!", + "CmsKit:MarkedItem:ToggleConfirmation": "Opravdu chcete přepnout označenou položku?", + "ToggleFavorite": "Přidat/Odebrat z oblíbených", + "FavoritesFilterMessage": "Pro filtrování oblíbených se přihlaste", + "FilterOnFavorites": "Filtrovat podle oblíbených", "CommentAuthorizationExceptionMessage": "Tyto komentáře nejsou povoleny pro veřejné zobrazení.", + "CmsKit:Modals:Login": "Přihlášení", + "CmsKit:Modals:LoginModalDefaultMessage": "Pro pokračování se přihlaste!", + "CmsKit:Modals:YouAreNotAuthenticated": "Tato operace pro vás není autorizována.", "CommentDeletionConfirmationMessage": "Tento komentář a všechny odpovědi budou smazány!", + "CmsKit:MarkedItem:0001": "Entitu {EntityType} nelze označit.", + "CmsKit:MarkedItem:0002": "Pro typ entity '{EntityType}' nebyla nalezena žádná definice.", + "CmsKit:MarkedItem:0003": "Definice pro typ entity '{EntityType}' již existuje. Každý typ entity by měl mít pouze jednu definici.", + "CmsKit:MarkedItem:LoginMessage": "Pro označení této položky se přihlaste.", "Comments": "Komentáře", "Content": "Obsah", "ContentDeletionConfirmationMessage": "Opravdu chcete tento obsah smazat?", @@ -134,6 +146,7 @@ "SamplePageMessage": "Ukázková stránka pro modul Pro", "SaveChanges": "Uložit změny", "Script": "Skript", + "SelectLayout": "Vybrat rozložení", "SelectAll": "Vybrat vše", "Send": "Poslat", "SendMessage": "Poslat zprávu", @@ -216,6 +229,8 @@ "Feature:ReactionEnableDescription": "Systém reakcí CMS Kit, který umožňuje uživatelům posílat reakce entitám, jako jsou BlogPost, Komentáře atd.", "Feature:TagEnable": "Označování", "Feature:TagEnableDescription": "Systém značek CMS Kit, který umožňuje označování entit, jako je BlogPost.", + "Feature:MarkedItemEnable": "Označená položka", + "Feature:MarkedItemEnableDescription": "Systém označování CMS Kit, který umožňuje uživatelům označovat entity jako oblíbené.", "DeleteBlogPostMessage": "Blog bude smazán. Jsi si jistá?", "CaptchaCode": "Captcha kód", "CommentTextRequired": "Komentář je povinný", @@ -230,6 +245,37 @@ "TagsHelpText": "Značky by měly být odděleny čárkami (např.: tag1, tag2, tag3)", "ThisPartOfContentCouldntBeLoaded": "Tato část obsahu nemohla být načtena.", "DuplicateCommentAttemptMessage": "Byl zjištěn duplicitní pokus o vložení komentáře. Váš komentář již byl odeslán.", + "NoBlogPostYet": "Zatím žádný blogový příspěvek!", + "CmsKit:Comment": "Komentář", + "CmsKitCommentOptions:RequireApprovement": "Vyžadovat schválení komentářů", + "CmsKitCommentOptions:RequireApprovementDescription": "Když je povoleno, komentáře budou vyžadovat schválení před zveřejněním.", + "CommentFilter:ApproveState": "Stav schválení", + "ApproveState": "Stav schválení", + "CommentFilter:0": "Vše", + "CommentFilter:1": "Schváleno", + "CommentFilter:2": "Zamítnuto", + "CommentFilter:4": "Čeká", + "ApprovedSuccessfully": "Úspěšně schváleno", + "ApprovalRevokedSuccessfully": "Schválení úspěšně odvoláno", + "Approve": "Schválit", + "Disapproved": "Zamítnuto", + "CommentAlertMessage": "Čeká {0} komentářů na schválení", + "Settings:Menu:CmsKit": "CMS", + "CommentsAwaitingApproval": "Komentáře čekající na schválení", + "JustNow": "Právě teď", + "MinuteAgo": "před 1 minutou", + "MinutesAgo": "před {0} minutami", + "HourAgo": "před 1 hodinou", + "HoursAgo": "před {0} hodinami", + "YesterdayAt": "Včera v {0}", + "DayAt": "{0} v {1}", + "MonthDayAt": "{0} {1} v {2}", + "FullDate": "{0} {1} {2}", + "Minute": "m", + "Hour": "h", + "Day": "d", + "Week": "t", + "CommentSubmittedForApproval": "Váš komentář byl odeslán ke schválení.", "ChooseAnActionForBlog": "Vyberte akci pro blog", "AssignBlogPostsToOtherBlog": "Přiřaďte blogové příspěvky k jinému blogu", "SelectAnBlogToAssign": "Vyberte blog, ke kterému chcete přiřadit blogové příspěvky", diff --git a/npm/ng-packs/packages/core/src/lib/providers/core-module-config.provider.ts b/npm/ng-packs/packages/core/src/lib/providers/core-module-config.provider.ts index fafb51ff6d..e8ca5ea711 100644 --- a/npm/ng-packs/packages/core/src/lib/providers/core-module-config.provider.ts +++ b/npm/ng-packs/packages/core/src/lib/providers/core-module-config.provider.ts @@ -1,4 +1,4 @@ -import { makeEnvironmentProviders, Provider, inject, provideAppInitializer } from '@angular/core'; +import { makeEnvironmentProviders, Provider, provideAppInitializer, inject } from '@angular/core'; import { TitleStrategy } from '@angular/router'; import { HTTP_INTERCEPTORS, @@ -23,7 +23,7 @@ import { ABP, SortableItem } from '../models'; import { AuthErrorFilterService } from '../abstracts'; import { DEFAULT_DYNAMIC_LAYOUTS } from '../constants'; import { LocalizationService, LocalStorageListenerService, AbpTitleStrategy } from '../services'; -import { DefaultQueueManager, getInitialData, localeInitializer } from '../utils'; +import { DefaultQueueManager, getInitialData } from '../utils'; import { CookieLanguageProvider, IncludeLocalizationResourcesProvider, LocaleProvider } from './'; import { TimezoneInterceptor } from '../interceptors'; @@ -106,14 +106,12 @@ export function provideAbpCore(...features: CoreFeature[]) { headerName: 'RequestVerificationToken', }), ), - provideAppInitializer(() => { - getInitialData(); - localeInitializer(); + provideAppInitializer(async () => { inject(LocalizationService); inject(LocalStorageListenerService); inject(RoutesHandler); + await getInitialData(); }), - LocaleProvider, CookieLanguageProvider, { diff --git a/npm/ng-packs/packages/core/src/lib/utils/initial-utils.ts b/npm/ng-packs/packages/core/src/lib/utils/initial-utils.ts index 3bc9b6f2b5..0c65073ef6 100644 --- a/npm/ng-packs/packages/core/src/lib/utils/initial-utils.ts +++ b/npm/ng-packs/packages/core/src/lib/utils/initial-utils.ts @@ -50,12 +50,13 @@ export async function getInitialData() { }), ); await lastValueFrom(result$); + await localeInitializer(injector); } -export function localeInitializer() { - const injector = inject(Injector); - const sessionState = injector.get(SessionStateService); - const { registerLocaleFn }: ABP.Root = injector.get(CORE_OPTIONS); +export function localeInitializer(injector?: Injector) { + const currentInjector = injector || inject(Injector); + const sessionState = currentInjector.get(SessionStateService); + const { registerLocaleFn }: ABP.Root = currentInjector.get(CORE_OPTIONS); const lang = sessionState.getLanguage() || 'en';