nitro/apps/frontend/src/api/catalog/PageLocalization.ts

33 lines
829 B
TypeScript

import {GetConfiguration} from "../nitro";
import {IPageLocalization} from "./IPageLocalization";
export class PageLocalization implements IPageLocalization {
private _images: string[];
private _texts: string[];
constructor(images: string[], texts: string[]) {
this._images = images;
this._texts = texts;
}
public getText(index: number): string {
let message = this._texts[index] || "";
if (message && message.length) message = message.replace(/\r\n|\r|\n/g, "<br />");
return message;
}
public getImage(index: number): string {
const imageName = this._images[index] || "";
if (!imageName || !imageName.length) return null;
let assetUrl = GetConfiguration<string>("catalog.asset.image.url");
assetUrl = assetUrl.replace("%name%", imageName);
return assetUrl;
}
}