UNPKG

@stencil/angular-output-target

Version:

Angular output target for @stencil/core components.

30 lines (27 loc) 804 B
import { Directive, ElementRef } from '@angular/core'; import { NG_VALUE_ACCESSOR } from '@angular/forms'; import { ValueAccessor } from './value-accessor'; @Directive({ /* tslint:disable-next-line:directive-selector */ selector: '<VALUE_ACCESSOR_SELECTORS>', host: { '(<VALUE_ACCESSOR_EVENT>)': 'handleChangeEvent($event.target.<VALUE_ACCESSOR_TARGETATTR>)' }, providers: [ { provide: NG_VALUE_ACCESSOR, useExisting: NumericValueAccessor, multi: true } ]<VALUE_ACCESSOR_STANDALONE> }) export class NumericValueAccessor extends ValueAccessor { constructor(el: ElementRef) { super(el); } override registerOnChange(fn: (_: number | null) => void) { super.registerOnChange(value => { fn(value === '' ? null : parseFloat(value)); }); } }