UNPKG

@c-standard/angular-devui-extension

Version:

an extensional components lib for devui

86 lines 8.51 kB
import { Component, EventEmitter, Input, Output } from '@angular/core'; import * as i0 from "@angular/core"; import * as i1 from "ng-devui"; import * as i2 from "@angular/forms"; import * as i3 from "@angular/common"; export class RadioPlusGroupComponent { constructor() { this.direction = 'row'; this.dataSource = []; this.valueExpr = 'value'; this.displayExpr = 'text'; this.disabled = false; this.align = 'horizontal'; this.validateRules = []; this.checkedValueChange = new EventEmitter(); } ngOnInit() { if (this.align === 'vertical') { this.direction = 'column'; } else { this.direction = 'row'; } this.control.valueChanges.subscribe((v) => { this.checkedValueChange.emit(v); }); } } RadioPlusGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: RadioPlusGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); RadioPlusGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: RadioPlusGroupComponent, selector: "d-radio-plus-group", inputs: { dataSource: "dataSource", name: "name", value: "value", control: "control", valueExpr: "valueExpr", displayExpr: "displayExpr", disabled: "disabled", align: "align", validateRules: "validateRules" }, outputs: { checkedValueChange: "checkedValueChange" }, ngImport: i0, template: ` <d-radio-group [direction]="direction || 'column'" [formControl]="control" [dValidateRules]="validateRules" > <d-radio [name]="name" *ngFor="let item of dataSource" [value]="item[valueExpr || 'value']" >{{ item[displayExpr || 'text'] }}</d-radio > </d-radio-group> `, isInline: true, components: [{ type: i1.RadioGroupComponent, selector: "d-radio-group", inputs: ["name", "values", "cssStyle", "direction", "disabled", "beforeChange"], outputs: ["change"] }, { type: i1.RadioComponent, selector: "d-radio", inputs: ["name", "disabled", "value", "beforeChange"] }], directives: [{ type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i1.DFormControlRuleDirective, selector: "[dValidateRules][formControlName],[dValidateRules][ngModel],[dValidateRules][formControl]", inputs: ["dValidateRules", "dValidatePopConfig"], outputs: ["dRulesStatusChange"], exportAs: ["dValidateRules"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: RadioPlusGroupComponent, decorators: [{ type: Component, args: [{ selector: 'd-radio-plus-group', template: ` <d-radio-group [direction]="direction || 'column'" [formControl]="control" [dValidateRules]="validateRules" > <d-radio [name]="name" *ngFor="let item of dataSource" [value]="item[valueExpr || 'value']" >{{ item[displayExpr || 'text'] }}</d-radio > </d-radio-group> `, // encapsulation: ViewEncapsulation.None, // changeDetection: ChangeDetectionStrategy.OnPush, }] }], propDecorators: { dataSource: [{ type: Input }], name: [{ type: Input }], value: [{ type: Input }], control: [{ type: Input }], valueExpr: [{ type: Input }], displayExpr: [{ type: Input }], disabled: [{ type: Input }], align: [{ type: Input }], validateRules: [{ type: Input }], checkedValueChange: [{ type: Output }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tcGx1cy1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3JhZGlvL3JhZGlvLXBsdXMtZ3JvdXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBd0IvRSxNQUFNLE9BQU8sdUJBQXVCO0lBbkJwQztRQW9CSSxjQUFTLEdBQXFCLEtBQUssQ0FBQztRQUUzQixlQUFVLEdBQVksRUFBRSxDQUFDO1FBUXpCLGNBQVMsR0FBVyxPQUFPLENBQUM7UUFFNUIsZ0JBQVcsR0FBVyxNQUFNLENBQUM7UUFFN0IsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQixVQUFLLEdBQStCLFlBQVksQ0FBQztRQUVqRCxrQkFBYSxHQUFtQixFQUFFLENBQUM7UUFFbEMsdUJBQWtCLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7S0FZbkY7SUFWRyxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLFVBQVUsRUFBRTtZQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztTQUM3QjthQUFNO1lBQ0gsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7U0FDMUI7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN0QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7b0hBaENRLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLG1VQWpCdEI7Ozs7Ozs7Ozs7Ozs7S0FhVDsyRkFJUSx1QkFBdUI7a0JBbkJuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7OztLQWFUO29CQUNELHlDQUF5QztvQkFDekMsbURBQW1EO2lCQUN0RDs4QkFJWSxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsT0FBTztzQkFBZixLQUFLO2dCQUVHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVJLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRFZhbGlkYXRlUnVsZXMgfSBmcm9tICduZy1kZXZ1aSc7XHJcbmltcG9ydCB7IFJhZGlvIH0gZnJvbSAnLi9yYWRpby1wbHVzLWdyb3VwJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnZC1yYWRpby1wbHVzLWdyb3VwJyxcclxuICAgIHRlbXBsYXRlOiBgXHJcbiAgICAgICAgPGQtcmFkaW8tZ3JvdXBcclxuICAgICAgICAgICAgW2RpcmVjdGlvbl09XCJkaXJlY3Rpb24gfHwgJ2NvbHVtbidcIlxyXG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiY29udHJvbFwiXHJcbiAgICAgICAgICAgIFtkVmFsaWRhdGVSdWxlc109XCJ2YWxpZGF0ZVJ1bGVzXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICAgIDxkLXJhZGlvXHJcbiAgICAgICAgICAgICAgICBbbmFtZV09XCJuYW1lXCJcclxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGFTb3VyY2VcIlxyXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW1bdmFsdWVFeHByIHx8ICd2YWx1ZSddXCJcclxuICAgICAgICAgICAgPnt7IGl0ZW1bZGlzcGxheUV4cHIgfHwgJ3RleHQnXSB9fTwvZC1yYWRpb1xyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgPC9kLXJhZGlvLWdyb3VwPlxyXG4gICAgYCxcclxuICAgIC8vIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgICAvLyBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJhZGlvUGx1c0dyb3VwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIGRpcmVjdGlvbjogJ3JvdycgfCAnY29sdW1uJyA9ICdyb3cnO1xyXG5cclxuICAgIEBJbnB1dCgpIGRhdGFTb3VyY2U6IFJhZGlvW10gPSBbXTtcclxuXHJcbiAgICBASW5wdXQoKSBuYW1lITogc3RyaW5nO1xyXG5cclxuICAgIEBJbnB1dCgpIHZhbHVlPzogYW55O1xyXG5cclxuICAgIEBJbnB1dCgpIGNvbnRyb2whOiBGb3JtQ29udHJvbDtcclxuXHJcbiAgICBASW5wdXQoKSB2YWx1ZUV4cHI6IHN0cmluZyA9ICd2YWx1ZSc7XHJcblxyXG4gICAgQElucHV0KCkgZGlzcGxheUV4cHI6IHN0cmluZyA9ICd0ZXh0JztcclxuXHJcbiAgICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIEBJbnB1dCgpIGFsaWduPzogJ2hvcml6b250YWwnIHwgJ3ZlcnRpY2FsJyA9ICdob3Jpem9udGFsJztcclxuXHJcbiAgICBASW5wdXQoKSB2YWxpZGF0ZVJ1bGVzOiBEVmFsaWRhdGVSdWxlcyA9IFtdO1xyXG5cclxuICAgIEBPdXRwdXQoKSBjaGVja2VkVmFsdWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuYWxpZ24gPT09ICd2ZXJ0aWNhbCcpIHtcclxuICAgICAgICAgICAgdGhpcy5kaXJlY3Rpb24gPSAnY29sdW1uJztcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmRpcmVjdGlvbiA9ICdyb3cnO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodikgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNoZWNrZWRWYWx1ZUNoYW5nZS5lbWl0KHYpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==