UNPKG

5.81 kBSource Map (JSON)View Raw
1{"version":3,"file":"bmat-angular-forms-bm-radio.js","sources":["ng://@bmat/angular/forms/bm-radio/lib/bm-radio.component.ts","ng://@bmat/angular/forms/bm-radio/lib/bm-radio.component.module.ts"],"sourcesContent":["/**\n * Angular Component. Checkbox with BMAT Style\n */\nimport {\n animate,\n state,\n style,\n transition,\n trigger,\n} from '@angular/animations';\nimport {\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n Input,\n Renderer2,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport interface BMRadioComponentChangeEvent {\n source: BMRadioComponent;\n checked: boolean;\n}\n\n@Component({\n selector: 'bm-radio',\n templateUrl: 'bm-radio.component.html',\n styleUrls: ['bm-radio.component.scss'],\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n // tslint:disable-next-line:no-forward-ref\n useExisting: forwardRef(() => BMRadioComponent),\n multi: true,\n },\n ],\n animations: [\n trigger('fadeInOut', [\n state('in', style({ opacity: 1 })),\n transition('void => *', [\n style({\n opacity: 0,\n }),\n animate('0.2s ease-in'),\n ]),\n transition('* => void', [\n animate(\n '0.2s ease-out',\n style({\n opacity: 0,\n }),\n ),\n ]),\n ]),\n ],\n})\nexport class BMRadioComponent implements ControlValueAccessor {\n @ViewChild('input', { static: true }) public input!: ElementRef<HTMLInputElement>;\n @HostBinding('class.bm-radio--focused')\n public get isFocused() {\n return this._focused;\n }\n\n /**\n * Input values to directly copy to inner radio\n */\n @Input() public name = '';\n @Input() public value = '';\n @Input() public tabIndex = 0;\n @Input() public required!: boolean;\n @Input() public disabled!: boolean;\n @Input() public readonly!: boolean;\n // tslint:disable-next-line:no-input-rename\n @Input('aria-label') public ariaLabel!: string;\n // tslint:disable-next-line:no-input-rename\n @Input('aria-labelledby') public ariaLabelledby!: string;\n\n @Input()\n public set checked(checked: boolean) {\n if (checked !== this.checked) {\n this._renderer.setProperty(this.input.nativeElement, 'checked', checked);\n }\n }\n public get checked() {\n return this.input.nativeElement.checked;\n }\n\n // Focus Blur Handle\n private _focused!: boolean;\n\n // tslint:disable-next-line:no-any\n private _onChangeCb!: (_: any) => void;\n private _onTouchedCb!: () => void;\n\n constructor(private _renderer: Renderer2) {}\n\n public inputFocus() {\n this._focused = true;\n }\n public inputBlur() {\n this._focused = false;\n\n if (this._onTouchedCb) {\n this._onTouchedCb();\n }\n }\n\n // tslint:disable-next-line:no-any\n public writeValue(value: any) {\n this.checked = value === this.value;\n }\n\n // tslint:disable-next-line:no-any\n public registerOnChange(fn: (_: any) => void) {\n this._onChangeCb = fn;\n }\n\n // tslint:disable-next-line:no-any\n public registerOnTouched(fn: () => void) {\n this._onTouchedCb = fn;\n }\n\n public inputChange() {\n if (this._onChangeCb && this.checked) {\n this._onChangeCb(this.value);\n }\n }\n\n public focus() {\n this.input.nativeElement.focus();\n }\n}\n","/**\n * BMAT Layout Module\n */\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { BMRadioComponent } from './bm-radio.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [BMRadioComponent],\n exports: [BMRadioComponent],\n})\nexport class BMRadioComponentModule {}\n"],"names":[],"mappings":";;;;;;;;;MA4Da,gBAAgB;;;;IAsC3B,YAAoB,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;;;;QA5BxB,SAAI,GAAG,EAAE,CAAC;QACV,UAAK,GAAG,EAAE,CAAC;QACX,aAAQ,GAAG,CAAC,CAAC;KA0Be;;;;IApC5C,IACW,SAAS;QAClB,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;;;;;IAgBD,IACW,OAAO,CAAC,OAAgB;QACjC,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,EAAE;YAC5B,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;SAC1E;KACF;;;;IACD,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC;KACzC;;;;IAWM,UAAU;QACf,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;KACtB;;;;IACM,SAAS;QACd,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QAEtB,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,YAAY,EAAE,CAAC;SACrB;KACF;;;;;;IAGM,UAAU,CAAC,KAAU;QAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC;KACrC;;;;;;IAGM,gBAAgB,CAAC,EAAoB;QAC1C,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;KACvB;;;;;;IAGM,iBAAiB,CAAC,EAAc;QACrC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;KACxB;;;;IAEM,WAAW;QAChB,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,EAAE;YACpC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC9B;KACF;;;;IAEM,KAAK;QACV,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;KAClC;;;YA3GF,SAAS,SAAC;gBACT,QAAQ,EAAE,UAAU;gBACpB,iqBAAsC;gBAEtC,aAAa,EAAE,iBAAiB,CAAC,IAAI;gBACrC,SAAS,EAAE;oBACT;wBACE,OAAO,EAAE,iBAAiB;;wBAE1B,WAAW,EAAE,UAAU;;;wBAAC,MAAM,gBAAgB,EAAC;wBAC/C,KAAK,EAAE,IAAI;qBACZ;iBACF;gBACD,UAAU,EAAE;oBACV,OAAO,CAAC,WAAW,EAAE;wBACnB,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;wBAClC,UAAU,CAAC,WAAW,EAAE;4BACtB,KAAK,CAAC;gCACJ,OAAO,EAAE,CAAC;6BACX,CAAC;4BACF,OAAO,CAAC,cAAc,CAAC;yBACxB,CAAC;wBACF,UAAU,CAAC,WAAW,EAAE;4BACtB,OAAO,CACL,eAAe,EACf,KAAK,CAAC;gCACJ,OAAO,EAAE,CAAC;6BACX,CAAC,CACH;yBACF,CAAC;qBACH,CAAC;iBACH;;aACF;;;;YA3CC,SAAS;;;oBA6CR,SAAS,SAAC,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;wBACnC,WAAW,SAAC,yBAAyB;mBAQrC,KAAK;oBACL,KAAK;uBACL,KAAK;uBACL,KAAK;uBACL,KAAK;uBACL,KAAK;wBAEL,KAAK,SAAC,YAAY;6BAElB,KAAK,SAAC,iBAAiB;sBAEvB,KAAK;;;;;;;MCpEK,sBAAsB;;;YALlC,QAAQ,SAAC;gBACR,OAAO,EAAE,CAAC,YAAY,CAAC;gBACvB,YAAY,EAAE,CAAC,gBAAgB,CAAC;gBAChC,OAAO,EAAE,CAAC,gBAAgB,CAAC;aAC5B;;;;;"}
\No newline at end of file