/*
 * https://github.com/morethanwords/tweb
 * Copyright (C) 2019-2021 Eduard Kuzmenko
 * https://github.com/morethanwords/tweb/blob/master/LICENSE
 */

import { LangPackKey, i18n } from "../lib/langPack";

export default class LoginPage {
  public element: HTMLElement;
  public container: HTMLElement;
  public imageDiv: HTMLElement;
  public inputWrapper: HTMLElement;
  public title: HTMLElement;
  public subtitle: HTMLParagraphElement;

  constructor(options: {
    className: string,
    withInputWrapper?: boolean,
    titleLangKey?: LangPackKey,
    subtitleLangKey?: LangPackKey,
  }) {
    this.element = document.body.querySelector('.' + options.className) as HTMLDivElement;
    //this.element = document.createElement('div');
    //this.element.className = 'page-' + options.className;

    this.container = document.createElement('div');
    this.container.className = 'container center-align';

    this.imageDiv = document.createElement('div');
    this.imageDiv.className = 'auth-image';

    this.title = document.createElement('h4');
    if(options.titleLangKey) {
      this.title.append(i18n(options.titleLangKey));
    }

    this.subtitle = document.createElement('p');
    this.subtitle.className = 'subtitle';
    if(options.subtitleLangKey) {
      this.subtitle.append(i18n(options.subtitleLangKey));
    }
    
    this.container.append(this.imageDiv, this.title, this.subtitle);

    if(options.withInputWrapper) {
      this.inputWrapper = document.createElement('div');
      this.inputWrapper.className = 'input-wrapper';
      this.container.append(this.inputWrapper);
    }

    this.element.append(this.container);
  }
}
