@ui5/task-adaptation
Version:
Custom task for ui5-builder which allows building UI5 Flexibility Adaptation Projects for SAP BTP, Cloud Foundry environment
44 lines (43 loc) • 1.9 kB
TypeScript
import { IDiffProperty } from "./annotations/comparator/comparator.js";
import { IJsonPerLanguage, IJsonPromisePerLanguage } from "./model/types.js";
import Language from "./model/language.js";
export declare class PropertyValue {
value: string;
isReference: boolean;
qualifier: string;
language: Language;
private static OLD;
private static NEW;
private constructor();
get isOld(): boolean;
set(diff: any, references: Map<string, string>): void;
static oldFrom(language: Language, value?: string): PropertyValue;
static newFrom(language: Language, value?: string): PropertyValue;
}
export declare class I18nFileContent {
private properties;
constructor(languages: Language[]);
add(prop: PropertyValue, key: string): void;
private initKeyValuesForOtherLanguages;
hasTranslations(): boolean;
private getOrCreateLanguageContent;
createFiles(i18nPathName: string): Map<string, string>;
}
export default class I18nManager {
private modelName;
private appVariantId;
private references;
private existingKeys;
private i18nFileContent;
constructor(modelName: string, appVariantId: string, languages: Language[]);
processDiff(properties: Set<IDiffProperty>, previousLanguage: Language, currentLanguage: Language): void;
createFiles(i18nPathName: string): Map<string, string>;
populateTranslations(annotationJsons: Map<Language, Promise<any>>): Promise<IJsonPromisePerLanguage>;
populate(annotationJsons: [Language, Promise<any>][], defaultAnnotation: IJsonPerLanguage): Promise<IJsonPerLanguage>;
static extractDefaultLanguageAnnotation(annotationJsons: Map<Language, Promise<any>>): IJsonPromisePerLanguage;
private replaceWithModelReference;
private createReference;
getUniqueKeyForValue(value: string): string;
hasTranslations(): boolean;
private initPropertyValues;
}