UNPKG

@engie-group/fluid-design-system-angular

Version:

Fluid Design System Angular

71 lines 9.2 kB
import { CommonModule } from '@angular/common'; import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core'; import * as i0 from "@angular/core"; export class RadioComponent { constructor(cdr) { this.cdr = cdr; this.radioClassName = 'nj-radio'; /** * Whether the radio is checked or not */ this.isChecked = false; /** * Radio size */ this.size = 'md'; /** * Output that emits checked value on change only */ this.valueChange = new EventEmitter(); } /** * @ignore */ onInputChange(event) { event.stopPropagation(); this.isChecked = !this.isChecked; this.valueChange.emit(this.isChecked); } /** * @ignore */ _markForCheck() { this.cdr.markForCheck(); } get classes() { const classes = [this.radioClassName]; if (this.size && this.size !== 'md') { classes.push(`${this.radioClassName}--${this.size}`); } return classes; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RadioComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RadioComponent, isStandalone: true, selector: "nj-radio", inputs: { inputId: "inputId", name: "name", required: "required", isChecked: "isChecked", value: "value", isDisabled: "isDisabled", size: "size", ariaLabel: "ariaLabel", ariaLabelledby: "ariaLabelledby" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class": "classes" } }, ngImport: i0, template: "<label [attr.for]=\"inputId\">\n <input\n type=\"radio\"\n [value]=\"value\"\n [required]=\"required\"\n [checked]=\"isChecked\"\n [disabled]=\"isDisabled\"\n [attr.id]=\"inputId\"\n [attr.name]=\"name\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n (change)=\"onInputChange($event)\"\n />\n <ng-content></ng-content>\n</label>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RadioComponent, decorators: [{ type: Component, args: [{ selector: 'nj-radio', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], host: { '[class]': 'classes' }, template: "<label [attr.for]=\"inputId\">\n <input\n type=\"radio\"\n [value]=\"value\"\n [required]=\"required\"\n [checked]=\"isChecked\"\n [disabled]=\"isDisabled\"\n [attr.id]=\"inputId\"\n [attr.name]=\"name\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n (change)=\"onInputChange($event)\"\n />\n <ng-content></ng-content>\n</label>\n" }] }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { inputId: [{ type: Input }], name: [{ type: Input }], required: [{ type: Input }], isChecked: [{ type: Input }], value: [{ type: Input }], isDisabled: [{ type: Input }], size: [{ type: Input }], ariaLabel: [{ type: Input }], ariaLabelledby: [{ type: Input }], valueChange: [{ type: Output }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmFkaW8vcmFkaW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmFkaW8vcmFkaW8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQWFuSCxNQUFNLE9BQU8sY0FBYztJQXVEekIsWUFBb0IsR0FBc0I7UUFBdEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUF0RHpCLG1CQUFjLEdBQUcsVUFBVSxDQUFDO1FBaUI3Qzs7V0FFRztRQUNNLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFZM0I7O1dBRUc7UUFDTSxTQUFJLEdBQWUsSUFBSSxDQUFDO1FBY2pDOztXQUVHO1FBQ08sZ0JBQVcsR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQUU5QixDQUFDO0lBRTlDOztPQUVHO0lBQ0gsYUFBYSxDQUFDLEtBQVk7UUFDeEIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxhQUFhO1FBQ1gsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBYyxPQUFPO1FBQ25CLE1BQU0sT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRXRDLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRTtZQUNuQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsS0FBSyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztTQUN0RDtRQUVELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7K0dBakZVLGNBQWM7bUdBQWQsY0FBYyx5V0NkM0IsOFlBZUEsMkNETlksWUFBWTs7NEZBS1gsY0FBYztrQkFWMUIsU0FBUzsrQkFDRSxVQUFVLG1CQUVILHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDLFFBQ2pCO3dCQUNKLFNBQVMsRUFBRSxTQUFTO3FCQUNyQjt3R0FRUSxPQUFPO3NCQUFmLEtBQUs7Z0JBS0csSUFBSTtzQkFBWixLQUFLO2dCQUtHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBS0csU0FBUztzQkFBakIsS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUs7Z0JBS0csVUFBVTtzQkFBbEIsS0FBSztnQkFLRyxJQUFJO3NCQUFaLEtBQUs7Z0JBTUcsU0FBUztzQkFBakIsS0FBSztnQkFNRyxjQUFjO3NCQUF0QixLQUFLO2dCQUtJLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmFkaW9TaXplIH0gZnJvbSAnLi9yYWRpby5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25qLXJhZGlvJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JhZGlvLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzc10nOiAnY2xhc3NlcydcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBSYWRpb0NvbXBvbmVudCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmFkaW9DbGFzc05hbWUgPSAnbmotcmFkaW8nO1xuXG4gIC8qKlxuICAgKiBJbnB1dCBpZFxuICAgKi9cbiAgQElucHV0KCkgaW5wdXRJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJbnB1dCBuYW1lXG4gICAqL1xuICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgaW5wdXQgaXMgcmVxdWlyZWQgb3Igbm90XG4gICAqL1xuICBASW5wdXQoKSByZXF1aXJlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHJhZGlvIGlzIGNoZWNrZWQgb3Igbm90XG4gICAqL1xuICBASW5wdXQoKSBpc0NoZWNrZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5wdXQgdmFsdWVcbiAgICovXG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHJhZGlvIGlzIGRpc2FibGVkIG9yIG5vdFxuICAgKi9cbiAgQElucHV0KCkgaXNEaXNhYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFJhZGlvIHNpemVcbiAgICovXG4gIEBJbnB1dCgpIHNpemU/OiBSYWRpb1NpemUgPSAnbWQnO1xuXG4gIC8qKlxuICAgKiBUZXh0IGFsdGVybmF0aXZlIGZvciBhc3Npc3RpdmUgdGVjaG5vbG9naWVzXG4gICAqIEBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQWNjZXNzaWJpbGl0eS9BUklBL0F0dHJpYnV0ZXMvYXJpYS1sYWJlbFxuICAgKi9cbiAgQElucHV0KCkgYXJpYUxhYmVsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUZXh0IGFsdGVybmF0aXZlIGZvciBhc3Npc3RpdmUgdGVjaG5vbG9naWVzIGJhc2VkIG9uIHZpc2libGUgdGV4dFxuICAgKiBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FjY2Vzc2liaWxpdHkvQVJJQS9BdHRyaWJ1dGVzL2FyaWEtbGFiZWxsZWRieVxuICAgKi9cbiAgQElucHV0KCkgYXJpYUxhYmVsbGVkYnk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE91dHB1dCB0aGF0IGVtaXRzIGNoZWNrZWQgdmFsdWUgb24gY2hhbmdlIG9ubHlcbiAgICovXG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgb25JbnB1dENoYW5nZShldmVudDogRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmlzQ2hlY2tlZCA9ICF0aGlzLmlzQ2hlY2tlZDtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy5pc0NoZWNrZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIF9tYXJrRm9yQ2hlY2soKSB7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IGNsYXNzZXMoKSB7XG4gICAgY29uc3QgY2xhc3NlcyA9IFt0aGlzLnJhZGlvQ2xhc3NOYW1lXTtcblxuICAgIGlmICh0aGlzLnNpemUgJiYgdGhpcy5zaXplICE9PSAnbWQnKSB7XG4gICAgICBjbGFzc2VzLnB1c2goYCR7dGhpcy5yYWRpb0NsYXNzTmFtZX0tLSR7dGhpcy5zaXplfWApO1xuICAgIH1cblxuICAgIHJldHVybiBjbGFzc2VzO1xuICB9XG59XG4iLCI8bGFiZWwgW2F0dHIuZm9yXT1cImlucHV0SWRcIj5cbiAgPGlucHV0XG4gICAgdHlwZT1cInJhZGlvXCJcbiAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgW2NoZWNrZWRdPVwiaXNDaGVja2VkXCJcbiAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiXG4gICAgW2F0dHIuaWRdPVwiaW5wdXRJZFwiXG4gICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZGJ5XCJcbiAgICAoY2hhbmdlKT1cIm9uSW5wdXRDaGFuZ2UoJGV2ZW50KVwiXG4gIC8+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbGFiZWw+XG4iXX0=