All files / site/inputs text.ts

18.18% Statements 2/11
100% Branches 0/0
0% Functions 0/4
18.18% Lines 2/11

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26  2x   2x                                            
import type Community from '../index'
import {BaseInput} from './index'
 
export class InputText extends BaseInput {
  type: 'text' = 'text'
  default: string | number
  e: HTMLInputElement
  source: string
  constructor(e: HTMLElement, site: Community) {
    super(e, site)
    this.listen = this.listen.bind(this)
    e.addEventListener('change', this.listen)
  }
  get() {
    this.set(this.e.value)
  }
  set(v: string) {
    this.previous = this.e.checked
    this.e.value = this.source = v
    this.site.request_queue(this.id)
  }
  listen(e: MouseEvent) {
    this.set(this.e.value)
  }
}