UNPKG

@push.rocks/websetup

Version:

setup basic page properties

63 lines 4 kB
import * as plugins from './websetup.plugins.js'; import './interfaces/index.js'; import { TagManager } from './websetup.classes.tagmanager.js'; import './websetup.classes.taglevel.js'; /** * the main WebSetup class */ export class WebSetup { constructor(optionsArg) { this.tagManager = new TagManager(); // private deferreds this.readyDeferred = plugins.smartpromise.defer(); this.readyForSmartssrDeferred = plugins.smartpromise.defer(); // public promises this.readyPromise = this.readyDeferred.promise; this.readyForSmartssrPromise = this.readyForSmartssrDeferred.promise; this.options = optionsArg; this.setup().then(() => { this.readyDeferred.resolve(); if (!this.options.smartssrWaitForReadySignal) { this.readyForSmartssrDeferred.resolve(); } }); } /** * an async setup called by the constructor */ async setup(optionsArg) { if (optionsArg) { this.options = optionsArg; } await this.tagManager.setup(this.options.metaObject); } /** * reverts the active level and returns to the base level */ revertToBaseLevel() { this.tagManager.revertToBaseLevel(); } /** * sets a subpage * @param metaObjectArg */ async setSubLevel(metaObjectArg) { const subLevel = await this.tagManager.setSubPageLevel(metaObjectArg); return subLevel; } /** * flashes the title with the given text * @param flashTextArg */ flashTitle(flashTextArg) { } /** * informs smartssr that the page is ready to be rendered */ informReadyForSmartssr() { if (!this.options.smartssrWaitForReadySignal) { console.error(`You have not indicated that you inform smartssr by a dedicated signal! Please consider doing so!`); } this.readyForSmartssrDeferred.resolve(); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic2V0dXAuY2xhc3Nlcy53ZWJzZXR1cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL3dlYnNldHVwLmNsYXNzZXMud2Vic2V0dXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSx1QkFBdUIsQ0FBQztBQUNqRCxPQUE0Qix1QkFBdUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDOUQsT0FBeUIsZ0NBQWdDLENBQUM7QUFPMUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sUUFBUTtJQVduQixZQUFZLFVBQXVDO1FBVjVDLGVBQVUsR0FBZSxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBR2pELG9CQUFvQjtRQUNaLGtCQUFhLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUM3Qyw2QkFBd0IsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWhFLGtCQUFrQjtRQUNYLGlCQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUM7UUFDMUMsNEJBQXVCLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sQ0FBQztRQUVyRSxJQUFJLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQztRQUMxQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNyQixJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLDBCQUEwQixFQUFFO2dCQUM1QyxJQUFJLENBQUMsd0JBQXdCLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDekM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxLQUFLLENBQUMsVUFBd0M7UUFDekQsSUFBSSxVQUFVLEVBQUU7WUFDZCxJQUFJLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQztTQUMzQjtRQUNELE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxpQkFBaUI7UUFDdEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxLQUFLLENBQUMsV0FBVyxDQUFDLGFBQXFDO1FBQzVELE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdEUsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFVBQVUsQ0FBQyxZQUFvQixJQUFHLENBQUM7SUFFMUM7O09BRUc7SUFDSSxzQkFBc0I7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsMEJBQTBCLEVBQUU7WUFDNUMsT0FBTyxDQUFDLEtBQUssQ0FDWCxrR0FBa0csQ0FDbkcsQ0FBQztTQUNIO1FBQ0QsSUFBSSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzFDLENBQUM7Q0FDRiJ9