@c-standard/angular-devui-extension
Version:
an extensional components lib for devui
86 lines • 8.51 kB
JavaScript
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==