import { Directive , ElementRef , Input , Renderer2 } from "@angular/core" ; @ Directive ( { selector : "[appInputVerbatim]" , } ) export class InputVerbatimDirective { @ Input ( ) set appInputVerbatim ( condition ) { this . disableComplete = condition === "" || condition === true ; } private disableComplete : boolean ; constructor ( private el , private renderer ) { } ngOnInit ( ) { if ( this . disableComplete && ! this . el . nativeElement . hasAttribute ( "autocomplete" ) ) { this . renderer . setAttribute ( this . el . nativeElement , "autocomplete" , "off" ) ; } if ( ! this . el . nativeElement . hasAttribute ( "autocapitalize" ) ) { this . renderer . setAttribute ( this . el . nativeElement , "autocapitalize" , "none" ) ; } if ( ! this . el . nativeElement . hasAttribute ( "autocorrect" ) ) { this . renderer . setAttribute ( this . el . nativeElement , "autocorrect" , "none" ) ; } if ( ! this . el . nativeElement . hasAttribute ( "spellcheck" ) ) { this . renderer . setAttribute ( this . el . nativeElement , "spellcheck" , "false" ) ; } if ( ! this . el . nativeElement . hasAttribute ( "inputmode" ) ) { this . renderer . setAttribute ( this . el . nativeElement , "inputmode" , "verbatim" ) ; } } }