import * as plugins from '../plugins.js'; import { simpleInfo } from './template.js'; export interface IHtmlInfoOptions { text: string; heading?: string; title?: string; sentryMessage?: string; sentryDsn?: string; redirectTo?: string; } export class InfoHtml { // STATIC public static async fromSimpleText(textArg: string) { const infohtmlInstance = new InfoHtml({ text: textArg, heading: null, }); await infohtmlInstance.init(); return infohtmlInstance; } public static async fromOptions(optionsArg: IHtmlInfoOptions) { const infohtmlInstance = new InfoHtml(optionsArg); await infohtmlInstance.init(); return infohtmlInstance; } // INSTANCE public options: IHtmlInfoOptions; public smartntmlInstance: plugins.smartntml.Smartntml; public htmlString: string; constructor(optionsArg: IHtmlInfoOptions) { this.options = optionsArg; } public async init() { this.smartntmlInstance = new plugins.smartntml.Smartntml(); this.htmlString = await simpleInfo(this.smartntmlInstance, this.options); return this.htmlString; } }