TREB version ${process.env.BUILD_VERSION}`];
if (process.env.NODE_ENV !== 'production') {
html.push(`
(development build)`);
}
html.push( `
http://treb.app` )
this.model.about.innerHTML = html.join('\n');
}
this.model.close?.addEventListener('click', (event) => {
event.stopPropagation();
event.preventDefault();
this.HideDialog();
});
}
public Node(name: string): HTMLElement|undefined {
return this.model[name];
}
public Update(options: Partial
, delta = true): void {
if (delta) {
options = { ...this.options_, ... options};
}
this.options = options;
}
public HideDialog(): void {
this.visible = false;
}
public ShowDialog(options: Partial): Promise {
return new Promise((resolve) => {
this.pending_dialog_resoltion.push(resolve);
this.options = options;
this.visible = true;
if (this.timeout) {
window.clearTimeout(this.timeout);
this.timeout = 0;
}
if (options.timeout) {
this.timeout = window.setTimeout(() => this.HideDialog(), options.timeout);
}
});
}
}