ngx-axis-appforge 0.0.23 → 0.0.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/axis-components/radio/design/index.d.ts +5 -0
- package/axis-components/radio/index.d.ts +31 -0
- package/axis-components/select/index.d.ts +0 -2
- package/axis-components/switch/design/index.d.ts +5 -0
- package/axis-components/switch/index.d.ts +23 -0
- package/axis-components/table/index.d.ts +1 -1
- package/axis-components-covers/radio.svg +19 -0
- package/axis-components-covers/switch.svg +14 -0
- package/fesm2022/ngx-axis-appforge-axis-components-radio-design.mjs +104 -0
- package/fesm2022/ngx-axis-appforge-axis-components-radio-design.mjs.map +1 -0
- package/fesm2022/ngx-axis-appforge-axis-components-radio.mjs +94 -0
- package/fesm2022/ngx-axis-appforge-axis-components-radio.mjs.map +1 -0
- package/fesm2022/ngx-axis-appforge-axis-components-select-design.mjs +2 -6
- package/fesm2022/ngx-axis-appforge-axis-components-select-design.mjs.map +1 -1
- package/fesm2022/ngx-axis-appforge-axis-components-select.mjs +16 -10
- package/fesm2022/ngx-axis-appforge-axis-components-select.mjs.map +1 -1
- package/fesm2022/ngx-axis-appforge-axis-components-single-selector-design.mjs +1 -0
- package/fesm2022/ngx-axis-appforge-axis-components-single-selector-design.mjs.map +1 -1
- package/fesm2022/ngx-axis-appforge-axis-components-switch-design.mjs +79 -0
- package/fesm2022/ngx-axis-appforge-axis-components-switch-design.mjs.map +1 -0
- package/fesm2022/ngx-axis-appforge-axis-components-switch.mjs +48 -0
- package/fesm2022/ngx-axis-appforge-axis-components-switch.mjs.map +1 -0
- package/fesm2022/ngx-axis-appforge-axis-components.mjs +45 -0
- package/fesm2022/ngx-axis-appforge-axis-components.mjs.map +1 -1
- package/package.json +69 -53
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { ValueAccessOptions, ValueAccess } from 'ngx-axis-appforge/core';
|
|
3
|
+
|
|
4
|
+
declare class RadioOptions extends ValueAccessOptions {
|
|
5
|
+
readonly labelField: _angular_core.WritableSignal<string>;
|
|
6
|
+
readonly valueField: _angular_core.WritableSignal<string>;
|
|
7
|
+
readonly disabledField: _angular_core.WritableSignal<string>;
|
|
8
|
+
readonly fullValue: _angular_core.WritableSignal<boolean>;
|
|
9
|
+
readonly defaultFirst: _angular_core.WritableSignal<boolean>;
|
|
10
|
+
readonly data: _angular_core.WritableSignal<any>;
|
|
11
|
+
readonly buttonMode: _angular_core.WritableSignal<boolean>;
|
|
12
|
+
readonly buttonStyle: _angular_core.WritableSignal<"outline" | "solid">;
|
|
13
|
+
readonly size: _angular_core.WritableSignal<"large" | "small" | "default">;
|
|
14
|
+
readonly direction: _angular_core.WritableSignal<"horizontal" | "vertical">;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
declare class Radio extends ValueAccess<RadioOptions> {
|
|
18
|
+
constructor();
|
|
19
|
+
options: RadioOptions;
|
|
20
|
+
readonly displayValue: _angular_core.Signal<string>;
|
|
21
|
+
readonly radioValue: _angular_core.ModelSignal<any[] | undefined>;
|
|
22
|
+
writeValue(value: any): void;
|
|
23
|
+
setInitValue(value: any): void;
|
|
24
|
+
private valueToRadioValue;
|
|
25
|
+
onRadioChange(value: any): void;
|
|
26
|
+
private buildDisplay;
|
|
27
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Radio, never>;
|
|
28
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Radio, "axis-radio", never, { "radioValue": { "alias": "radioValue"; "required": false; "isSignal": true; }; }, { "radioValue": "radioValueChange"; }, never, never, true, never>;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export { Radio };
|
|
@@ -12,13 +12,11 @@ declare class SelectOptions extends ValueAccessOptions {
|
|
|
12
12
|
readonly defaultFirst: _angular_core.WritableSignal<boolean>;
|
|
13
13
|
readonly maxMultipleCount: _angular_core.WritableSignal<number>;
|
|
14
14
|
readonly placeholder: _angular_core.WritableSignal<string>;
|
|
15
|
-
readonly backdrop: _angular_core.WritableSignal<boolean>;
|
|
16
15
|
readonly variant: _angular_core.WritableSignal<"outlined" | "borderless" | "filled" | "underlined">;
|
|
17
16
|
readonly dropdownMatchSelectWidth: _angular_core.WritableSignal<boolean>;
|
|
18
17
|
readonly size: _angular_core.WritableSignal<"default" | "large" | "small">;
|
|
19
18
|
readonly optionOverflowSize: _angular_core.WritableSignal<number>;
|
|
20
19
|
readonly selectOnTab: _angular_core.WritableSignal<boolean>;
|
|
21
|
-
readonly tokenSeparators: _angular_core.WritableSignal<string[]>;
|
|
22
20
|
readonly maxTagCount: _angular_core.WritableSignal<number>;
|
|
23
21
|
readonly showSearch: _angular_core.WritableSignal<boolean>;
|
|
24
22
|
readonly serverSearch: _angular_core.WritableSignal<boolean>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { ValueAccessOptions, ValueAccess } from 'ngx-axis-appforge/core';
|
|
3
|
+
|
|
4
|
+
declare class SwitchOptions extends ValueAccessOptions {
|
|
5
|
+
readonly onValue: _angular_core.WritableSignal<any>;
|
|
6
|
+
readonly offValue: _angular_core.WritableSignal<any>;
|
|
7
|
+
readonly onLabel: _angular_core.WritableSignal<any>;
|
|
8
|
+
readonly offLabel: _angular_core.WritableSignal<any>;
|
|
9
|
+
readonly size: _angular_core.WritableSignal<"small" | "default">;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
declare class Switch extends ValueAccess<SwitchOptions> {
|
|
13
|
+
options: SwitchOptions;
|
|
14
|
+
readonly switchValue: _angular_core.ModelSignal<boolean>;
|
|
15
|
+
writeValue(value: any): void;
|
|
16
|
+
setInitValue(value: any): void;
|
|
17
|
+
private valueToSwitchValue;
|
|
18
|
+
onSwitchChange(value: boolean): void;
|
|
19
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Switch, never>;
|
|
20
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Switch, "axis-switch", never, { "switchValue": { "alias": "switchValue"; "required": false; "isSignal": true; }; }, { "switchValue": "switchValueChange"; }, never, never, true, never>;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export { Switch };
|
|
@@ -68,7 +68,7 @@ declare class TableFieldOptions {
|
|
|
68
68
|
readonly filterAble: _angular_core.WritableSignal<boolean>;
|
|
69
69
|
readonly filterMultiple: _angular_core.WritableSignal<boolean>;
|
|
70
70
|
readonly width: _angular_core.WritableSignal<number | null>;
|
|
71
|
-
readonly align: _angular_core.WritableSignal<"
|
|
71
|
+
readonly align: _angular_core.WritableSignal<"center" | "left" | "right">;
|
|
72
72
|
readonly freezeMode: _angular_core.WritableSignal<"left" | "right" | "none">;
|
|
73
73
|
readonly groupLevel: _angular_core.WritableSignal<number | null>;
|
|
74
74
|
readonly totalAble: _angular_core.WritableSignal<boolean>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg width="93px" height="82px" viewBox="0 0 93 22" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
3
|
+
<title>编组 47</title>
|
|
4
|
+
<g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
|
5
|
+
<g id="CheckBox备份" transform="translate(-178.000000, -21.000000)">
|
|
6
|
+
<g id="编组-47" transform="translate(178.000000, 21.000000)">
|
|
7
|
+
<g id="Radio/Selected/Normal">
|
|
8
|
+
<g id="Group" transform="translate(0.000000, 3.000000)">
|
|
9
|
+
<circle id="Oval-1-Copy-2" stroke="#1890FF" fill="#FFFFFF" cx="8" cy="8" r="7.5"></circle>
|
|
10
|
+
<circle id="Oval-1-Copy-5" fill="#1890FF" cx="8" cy="8" r="4"></circle>
|
|
11
|
+
</g>
|
|
12
|
+
<text id="Text" font-family="PingFangSC-Regular, PingFang SC" font-size="14" font-weight="normal" line-spacing="22" fill="#000000" fill-opacity="0.65">
|
|
13
|
+
<tspan x="24" y="15">|||||||||||||||||||||||||</tspan>
|
|
14
|
+
</text>
|
|
15
|
+
</g>
|
|
16
|
+
</g>
|
|
17
|
+
</g>
|
|
18
|
+
</g>
|
|
19
|
+
</svg>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg width="100px" height="66px" viewBox="0 -10 28 36" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
3
|
+
<title>编组 48</title>
|
|
4
|
+
<g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
|
5
|
+
<g id="Ant-Design-组件缩略图" transform="translate(-1820.000000, -126.000000)">
|
|
6
|
+
<g id="编组-48" transform="translate(1821.000000, 126.000000)">
|
|
7
|
+
<g id="3.DataEntry/Switch/Small/on#" transform="translate(-1.000000, 0.000000)">
|
|
8
|
+
<path d="M0,8 L0,8 C0,3.581722 3.57465974,0 8.00493448,0 L19.9950655,0 C24.4160688,0 28,3.59071231 28,8 L28,8 C28,12.418278 24.4253403,16 19.9950655,16 L8.00493448,16 C3.58393124,16 0,12.4211798 0,8 L0,8 Z" id="Rectangle-77-Copy-11" fill="#1890FF" fill-rule="nonzero"></path>
|
|
9
|
+
<path d="M20,14 C23.3137085,14 26,11.3137085 26,8 C26,4.6862915 23.3137085,2 20,2 C16.6862915,2 14,4.6862915 14,8 C14,11.3137085 16.6862915,14 20,14 Z" id="Oval-1-Copy-15" fill="#FFFFFF" fill-rule="evenodd"></path>
|
|
10
|
+
</g>
|
|
11
|
+
</g>
|
|
12
|
+
</g>
|
|
13
|
+
</g>
|
|
14
|
+
</svg>
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { FunFieldValueBase, FormValidators, valueFbConfig, baseFbConfig, valueFunField, baseFunField, BaseDesignSetting, ValueDesignSetting, FunField, DynamicDirective, InputTrigger, OptionsNode, SimpleMenu } from 'ngx-axis-appforge/core';
|
|
2
|
+
import * as i0 from '@angular/core';
|
|
3
|
+
import { computed, ViewChild, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
4
|
+
import * as i1 from '@angular/forms';
|
|
5
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
6
|
+
import * as i5 from 'ng-zorro-antd/auto-complete';
|
|
7
|
+
import { NzAutocompleteModule } from 'ng-zorro-antd/auto-complete';
|
|
8
|
+
import * as i2 from 'ng-zorro-antd/collapse';
|
|
9
|
+
import { NzCollapseModule } from 'ng-zorro-antd/collapse';
|
|
10
|
+
import * as i4 from 'ng-zorro-antd/form';
|
|
11
|
+
import { NzFormModule } from 'ng-zorro-antd/form';
|
|
12
|
+
import * as i6 from 'ng-zorro-antd/input';
|
|
13
|
+
import { NzInputModule } from 'ng-zorro-antd/input';
|
|
14
|
+
import * as i8 from 'ng-zorro-antd/radio';
|
|
15
|
+
import { NzRadioModule } from 'ng-zorro-antd/radio';
|
|
16
|
+
import * as i7 from 'ng-zorro-antd/switch';
|
|
17
|
+
import { NzSwitchModule } from 'ng-zorro-antd/switch';
|
|
18
|
+
import * as i3 from 'ng-zorro-antd/grid';
|
|
19
|
+
|
|
20
|
+
class Setting extends FunFieldValueBase {
|
|
21
|
+
fg = this.fb.group({
|
|
22
|
+
...baseFbConfig,
|
|
23
|
+
...valueFbConfig,
|
|
24
|
+
labelField: ["title", FormValidators.required],
|
|
25
|
+
valueField: ["key", FormValidators.required],
|
|
26
|
+
disabledField: ["disabled", FormValidators.required],
|
|
27
|
+
fullValue: [false, FormValidators.required],
|
|
28
|
+
defaultFirst: [false, FormValidators.required],
|
|
29
|
+
data: [],
|
|
30
|
+
buttonMode: [undefined, FormValidators.requiredFun],
|
|
31
|
+
buttonStyle: [undefined, FormValidators.requiredFun],
|
|
32
|
+
size: [undefined, FormValidators.requiredFun],
|
|
33
|
+
direction: [undefined, FormValidators.requiredFun],
|
|
34
|
+
});
|
|
35
|
+
funFields = {
|
|
36
|
+
...baseFunField,
|
|
37
|
+
...valueFunField,
|
|
38
|
+
data: {
|
|
39
|
+
defaultValue: undefined
|
|
40
|
+
},
|
|
41
|
+
buttonMode: {
|
|
42
|
+
defaultValue: false
|
|
43
|
+
},
|
|
44
|
+
buttonStyle: {
|
|
45
|
+
defaultValue: "outline"
|
|
46
|
+
},
|
|
47
|
+
size: {
|
|
48
|
+
defaultValue: "default"
|
|
49
|
+
},
|
|
50
|
+
direction: {
|
|
51
|
+
defaultValue: "horizontal"
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
dataFunField;
|
|
55
|
+
fields = computed(() => {
|
|
56
|
+
if (this.dataFunField.computeResult()?.length) {
|
|
57
|
+
return Object.keys(this.dataFunField.computeResult()[0]);
|
|
58
|
+
}
|
|
59
|
+
return [];
|
|
60
|
+
}, ...(ngDevMode ? [{ debugName: "fields" }] : []));
|
|
61
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: Setting, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
62
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: Setting, isStandalone: true, selector: "axis-design-single-selector-setting", viewQueries: [{ propertyName: "dataFunField", first: true, predicate: ["data"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"fg\" nz-form>\n <nz-collapse [nzBordered]=\"false\">\n <nz-collapse-panel nzHeader=\"\u57FA\u672C\u8BBE\u7F6E\" nzActive>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u503C\u5B57\u6BB5\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <input nz-input formControlName=\"valueField\" [nzAutocomplete]=\"fieldAuto\" />\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u540D\u79F0\u5B57\u6BB5\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <input nz-input formControlName=\"labelField\" [nzAutocomplete]=\"fieldAuto\" />\n </nz-form-control>\n </nz-form-item>\n <nz-autocomplete #fieldAuto nzBackfill>\n @for (f of fields(); track f) {\n <nz-auto-option [nzLabel]=\"f\" [nzValue]=\"f\">\n {{f}}\n </nz-auto-option>\n }\n </nz-autocomplete>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u5B8C\u6574\u5BF9\u8C61\u503C\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <nz-switch formControlName=\"fullValue\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u9ED8\u8BA4\u7B2C\u4E00\u9879\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <nz-switch formControlName=\"defaultFirst\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u9009\u9879\u6570\u636E\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field #data formControlName=\"data\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\"\n [standalone]=\"true\" ngModel [ngModelOptions]=\"{standalone:true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"\u5916\u89C2\u8BBE\u7F6E\">\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u6309\u94AE\u6A21\u5F0F\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"buttonMode\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue()?.buttonMode.funMode || formValue()?.buttonMode.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u6309\u94AE\u6837\u5F0F\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"buttonStyle\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"outline\">\u8FB9\u6846</label>\n <label nz-radio-button nzValue=\"solid\">\u586B\u5145</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u5927\u5C0F\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"size\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"large\">\u5927</label>\n <label nz-radio-button nzValue=\"default\">\u4E2D</label>\n <label nz-radio-button nzValue=\"small\">\u5C0F</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }@else {\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u65B9\u5411\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"direction\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"horizontal\">\u6C34\u5E73</label>\n <label nz-radio-button nzValue=\"vertical\">\u5782\u76F4</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <axis-value-design-setting [fg]=\"fg\"></axis-value-design-setting>\n <axis-base-design-setting [fg]=\"fg\"></axis-base-design-setting>\n <axis-input-trigger formControlName=\"triggeEvents\" [internalTriggers]=\"['valueChange']\"></axis-input-trigger>\n </nz-collapse>\n</form>", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzCollapseModule }, { kind: "component", type: i2.NzCollapsePanelComponent, selector: "nz-collapse-panel", inputs: ["nzActive", "nzDisabled", "nzShowArrow", "nzExtra", "nzHeader", "nzExpandedIcon"], outputs: ["nzActiveChange"], exportAs: ["nzCollapsePanel"] }, { kind: "component", type: i2.NzCollapseComponent, selector: "nz-collapse", inputs: ["nzAccordion", "nzBordered", "nzGhost", "nzExpandIconPosition"], exportAs: ["nzCollapse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: NzFormModule }, { kind: "directive", type: i3.NzColDirective, selector: "[nz-col],nz-col,nz-form-control,nz-form-label", inputs: ["nzFlex", "nzSpan", "nzOrder", "nzOffset", "nzPush", "nzPull", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], exportAs: ["nzCol"] }, { kind: "directive", type: i3.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { kind: "directive", type: i4.NzFormDirective, selector: "[nz-form]", inputs: ["nzLayout", "nzNoColon", "nzAutoTips", "nzDisableAutoTips", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzForm"] }, { kind: "component", type: i4.NzFormItemComponent, selector: "nz-form-item", exportAs: ["nzFormItem"] }, { kind: "component", type: i4.NzFormLabelComponent, selector: "nz-form-label", inputs: ["nzFor", "nzRequired", "nzNoColon", "nzTooltipTitle", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzFormLabel"] }, { kind: "component", type: i4.NzFormControlComponent, selector: "nz-form-control", inputs: ["nzSuccessTip", "nzWarningTip", "nzErrorTip", "nzValidatingTip", "nzExtra", "nzAutoTips", "nzDisableAutoTips", "nzHasFeedback", "nzValidateStatus"], exportAs: ["nzFormControl"] }, { kind: "component", type: BaseDesignSetting, selector: "axis-base-design-setting", inputs: ["scopeId", "exclude", "fg"] }, { kind: "component", type: ValueDesignSetting, selector: "axis-value-design-setting", inputs: ["scopeId", "exclude", "fg"] }, { kind: "ngmodule", type: NzAutocompleteModule }, { kind: "component", type: i5.NzAutocompleteComponent, selector: "nz-autocomplete", inputs: ["nzWidth", "nzOverlayClassName", "nzOverlayStyle", "nzDefaultActiveFirstOption", "nzBackfill", "compareWith", "nzDataSource"], outputs: ["selectionChange"], exportAs: ["nzAutocomplete"] }, { kind: "component", type: i5.NzAutocompleteOptionComponent, selector: "nz-auto-option", inputs: ["nzValue", "nzLabel", "nzDisabled"], outputs: ["selectionChange", "mouseEntered"], exportAs: ["nzAutoOption"] }, { kind: "directive", type: i5.NzAutocompleteTriggerDirective, selector: "input[nzAutocomplete], textarea[nzAutocomplete]", inputs: ["nzAutocomplete"], exportAs: ["nzAutocompleteTrigger"] }, { kind: "ngmodule", type: NzInputModule }, { kind: "directive", type: i6.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzVariant", "nzSize", "nzStepperless", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "component", type: FunField, selector: "axis-fun-field", inputs: ["scopes", "exclude", "scopeId", "onlyFun", "noListen", "disabled", "editTip", "value", "open", "showCreateListenModal", "createListenDataSourceName"], outputs: ["valueChange", "openChange", "showCreateListenModalChange", "createListenDataSourceNameChange"] }, { kind: "directive", type: DynamicDirective, selector: "[axisDynamic]", inputs: ["axisDynamic", "standalone", "isDesign"], outputs: ["onRegisteValueAccess"], exportAs: ["axisDynamic"] }, { kind: "ngmodule", type: NzSwitchModule }, { kind: "component", type: i7.NzSwitchComponent, selector: "nz-switch", inputs: ["nzLoading", "nzDisabled", "nzControl", "nzCheckedChildren", "nzUnCheckedChildren", "nzSize", "nzId"], exportAs: ["nzSwitch"] }, { kind: "component", type: InputTrigger, selector: "axis-input-trigger", inputs: ["internalTriggers", "value", "eventDesc", "isVisibleHandlerModal", "editEventHandler"], outputs: ["valueChange", "isVisibleHandlerModalChange", "editEventHandlerChange"] }, { kind: "ngmodule", type: NzRadioModule }, { kind: "component", type: i8.NzRadioComponent, selector: "[nz-radio],[nz-radio-button]", inputs: ["nzValue", "nzDisabled", "nzAutoFocus", "nz-radio-button"], exportAs: ["nzRadio"] }, { kind: "component", type: i8.NzRadioGroupComponent, selector: "nz-radio-group", inputs: ["nzDisabled", "nzButtonStyle", "nzSize", "nzName"], exportAs: ["nzRadioGroup"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
63
|
+
}
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: Setting, decorators: [{
|
|
65
|
+
type: Component,
|
|
66
|
+
args: [{ selector: 'axis-design-single-selector-setting', imports: [FormsModule, NzCollapseModule, ReactiveFormsModule, NzFormModule, BaseDesignSetting, ValueDesignSetting, NzAutocompleteModule, NzInputModule, FunField, DynamicDirective, NzSwitchModule, InputTrigger, NzRadioModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<form [formGroup]=\"fg\" nz-form>\n <nz-collapse [nzBordered]=\"false\">\n <nz-collapse-panel nzHeader=\"\u57FA\u672C\u8BBE\u7F6E\" nzActive>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u503C\u5B57\u6BB5\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <input nz-input formControlName=\"valueField\" [nzAutocomplete]=\"fieldAuto\" />\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u540D\u79F0\u5B57\u6BB5\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <input nz-input formControlName=\"labelField\" [nzAutocomplete]=\"fieldAuto\" />\n </nz-form-control>\n </nz-form-item>\n <nz-autocomplete #fieldAuto nzBackfill>\n @for (f of fields(); track f) {\n <nz-auto-option [nzLabel]=\"f\" [nzValue]=\"f\">\n {{f}}\n </nz-auto-option>\n }\n </nz-autocomplete>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u5B8C\u6574\u5BF9\u8C61\u503C\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <nz-switch formControlName=\"fullValue\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u9ED8\u8BA4\u7B2C\u4E00\u9879\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <nz-switch formControlName=\"defaultFirst\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u9009\u9879\u6570\u636E\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field #data formControlName=\"data\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\"\n [standalone]=\"true\" ngModel [ngModelOptions]=\"{standalone:true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"\u5916\u89C2\u8BBE\u7F6E\">\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u6309\u94AE\u6A21\u5F0F\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"buttonMode\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue()?.buttonMode.funMode || formValue()?.buttonMode.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u6309\u94AE\u6837\u5F0F\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"buttonStyle\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"outline\">\u8FB9\u6846</label>\n <label nz-radio-button nzValue=\"solid\">\u586B\u5145</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u5927\u5C0F\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"size\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"large\">\u5927</label>\n <label nz-radio-button nzValue=\"default\">\u4E2D</label>\n <label nz-radio-button nzValue=\"small\">\u5C0F</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }@else {\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u65B9\u5411\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"direction\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"horizontal\">\u6C34\u5E73</label>\n <label nz-radio-button nzValue=\"vertical\">\u5782\u76F4</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <axis-value-design-setting [fg]=\"fg\"></axis-value-design-setting>\n <axis-base-design-setting [fg]=\"fg\"></axis-base-design-setting>\n <axis-input-trigger formControlName=\"triggeEvents\" [internalTriggers]=\"['valueChange']\"></axis-input-trigger>\n </nz-collapse>\n</form>" }]
|
|
67
|
+
}], propDecorators: { dataFunField: [{
|
|
68
|
+
type: ViewChild,
|
|
69
|
+
args: ["data", { static: true }]
|
|
70
|
+
}] } });
|
|
71
|
+
|
|
72
|
+
const Config = {
|
|
73
|
+
componentName: "单选框",
|
|
74
|
+
buildOptionsNodes(nextInfo) {
|
|
75
|
+
return {
|
|
76
|
+
treeNode: new OptionsNode({
|
|
77
|
+
parentId: nextInfo.parentId,
|
|
78
|
+
scopeId: nextInfo.scopeId,
|
|
79
|
+
name: "单选框",
|
|
80
|
+
canSetting: true,
|
|
81
|
+
canDrag: true,
|
|
82
|
+
dragType: "component",
|
|
83
|
+
parentObj: nextInfo.parentObject,
|
|
84
|
+
indexOfParentObj: nextInfo.indexOfParent,
|
|
85
|
+
rootOptions: nextInfo.currentObject,
|
|
86
|
+
settingType: Setting,
|
|
87
|
+
contextMenu: SimpleMenu,
|
|
88
|
+
icon: "select",
|
|
89
|
+
}),
|
|
90
|
+
};
|
|
91
|
+
},
|
|
92
|
+
bindElementsOptionsNode(element, options) {
|
|
93
|
+
return {
|
|
94
|
+
[options.id]: { element },
|
|
95
|
+
};
|
|
96
|
+
},
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Generated bundle index. Do not edit.
|
|
101
|
+
*/
|
|
102
|
+
|
|
103
|
+
export { Config };
|
|
104
|
+
//# sourceMappingURL=ngx-axis-appforge-axis-components-radio-design.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngx-axis-appforge-axis-components-radio-design.mjs","sources":["../../../axis-components/radio/design/setting/setting.ts","../../../axis-components/radio/design/setting/setting.html","../../../axis-components/radio/design/config.ts","../../../axis-components/radio/design/ngx-axis-appforge-axis-components-radio-design.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, ViewChild } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule, UntypedFormGroup } from '@angular/forms';\nimport { NzAutocompleteModule } from 'ng-zorro-antd/auto-complete';\nimport { NzCollapseModule } from 'ng-zorro-antd/collapse';\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { NzSwitchModule } from 'ng-zorro-antd/switch';\nimport { BaseDesignSetting, baseFbConfig, baseFunField, DynamicDirective, FormValidators, FunField, FunFieldOptions, FunFieldValueBase, InputTrigger, ValueDesignSetting, valueFbConfig, valueFunField } from 'ngx-axis-appforge/core';\n\n@Component({\n selector: 'axis-design-single-selector-setting',\n imports: [FormsModule, NzCollapseModule, ReactiveFormsModule, NzFormModule, BaseDesignSetting, ValueDesignSetting, NzAutocompleteModule, NzInputModule, FunField, DynamicDirective, NzSwitchModule, InputTrigger, NzRadioModule],\n templateUrl: './setting.html',\n styleUrl: './setting.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class Setting extends FunFieldValueBase {\n\n override fg: UntypedFormGroup = this.fb.group({\n ...baseFbConfig,\n ...valueFbConfig,\n labelField: [\"title\", FormValidators.required],\n valueField: [\"key\", FormValidators.required],\n disabledField: [\"disabled\", FormValidators.required],\n fullValue: [false, FormValidators.required],\n defaultFirst: [false, FormValidators.required],\n data: [],\n buttonMode: [undefined, FormValidators.requiredFun],\n buttonStyle: [undefined, FormValidators.requiredFun],\n size: [undefined, FormValidators.requiredFun],\n direction: [undefined, FormValidators.requiredFun],\n });\n\n protected override funFields: FunFieldOptions = {\n ...baseFunField,\n ...valueFunField,\n data: {\n defaultValue: undefined\n },\n buttonMode: {\n defaultValue: false\n },\n buttonStyle: {\n defaultValue: \"outline\"\n },\n size: {\n defaultValue: \"default\"\n },\n direction: {\n defaultValue: \"horizontal\"\n },\n };\n\n @ViewChild(\"data\", { static: true })\n dataFunField!: FunField;\n\n fields = computed(() => {\n if (this.dataFunField.computeResult()?.length) {\n return Object.keys(this.dataFunField.computeResult()[0]);\n }\n return [];\n })\n}\n","<form [formGroup]=\"fg\" nz-form>\n <nz-collapse [nzBordered]=\"false\">\n <nz-collapse-panel nzHeader=\"基本设置\" nzActive>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n 值字段\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <input nz-input formControlName=\"valueField\" [nzAutocomplete]=\"fieldAuto\" />\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n 名称字段\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <input nz-input formControlName=\"labelField\" [nzAutocomplete]=\"fieldAuto\" />\n </nz-form-control>\n </nz-form-item>\n <nz-autocomplete #fieldAuto nzBackfill>\n @for (f of fields(); track f) {\n <nz-auto-option [nzLabel]=\"f\" [nzValue]=\"f\">\n {{f}}\n </nz-auto-option>\n }\n </nz-autocomplete>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n 完整对象值\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <nz-switch formControlName=\"fullValue\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n 默认第一项\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <nz-switch formControlName=\"defaultFirst\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n 选项数据\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field #data formControlName=\"data\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\"\n [standalone]=\"true\" ngModel [ngModelOptions]=\"{standalone:true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"外观设置\">\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n 按钮模式\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"buttonMode\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue()?.buttonMode.funMode || formValue()?.buttonMode.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n 按钮样式\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"buttonStyle\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"outline\">边框</label>\n <label nz-radio-button nzValue=\"solid\">填充</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n 大小\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"size\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"large\">大</label>\n <label nz-radio-button nzValue=\"default\">中</label>\n <label nz-radio-button nzValue=\"small\">小</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }@else {\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n 方向\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <axis-fun-field formControlName=\"direction\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"horizontal\">水平</label>\n <label nz-radio-button nzValue=\"vertical\">垂直</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <axis-value-design-setting [fg]=\"fg\"></axis-value-design-setting>\n <axis-base-design-setting [fg]=\"fg\"></axis-base-design-setting>\n <axis-input-trigger formControlName=\"triggeEvents\" [internalTriggers]=\"['valueChange']\"></axis-input-trigger>\n </nz-collapse>\n</form>","import { NextInfo, DesignBuildResult, DesignBindElementsResult, DesignConfig, OptionsNode, SimpleMenu } from \"ngx-axis-appforge/core\";\nimport { Setting } from \"./setting/setting\";\n\nexport const Config: DesignConfig = {\n\n componentName: \"单选框\",\n buildOptionsNodes(nextInfo: NextInfo): DesignBuildResult {\n return {\n treeNode: new OptionsNode({\n parentId: nextInfo.parentId,\n scopeId: nextInfo.scopeId,\n name: \"单选框\",\n canSetting: true,\n canDrag: true,\n dragType: \"component\",\n parentObj: nextInfo.parentObject,\n indexOfParentObj: nextInfo.indexOfParent,\n rootOptions: nextInfo.currentObject,\n settingType: Setting,\n contextMenu: SimpleMenu,\n icon: \"select\",\n }),\n };\n },\n bindElementsOptionsNode(element: HTMLElement, options: any): DesignBindElementsResult {\n return {\n [options.id]: { element },\n }\n },\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './config';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { signal, effect, untracked, computed, model, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import { ValueAccessOptions, ValueAccess } from 'ngx-axis-appforge/core';
|
|
4
|
+
import * as i1 from 'ng-zorro-antd/radio';
|
|
5
|
+
import { NzRadioModule } from 'ng-zorro-antd/radio';
|
|
6
|
+
import * as i2 from '@angular/forms';
|
|
7
|
+
import { FormsModule } from '@angular/forms';
|
|
8
|
+
|
|
9
|
+
class RadioOptions extends ValueAccessOptions {
|
|
10
|
+
labelField = signal("title", ...(ngDevMode ? [{ debugName: "labelField" }] : []));
|
|
11
|
+
valueField = signal("key", ...(ngDevMode ? [{ debugName: "valueField" }] : []));
|
|
12
|
+
disabledField = signal("disabled", ...(ngDevMode ? [{ debugName: "disabledField" }] : []));
|
|
13
|
+
fullValue = signal(false, ...(ngDevMode ? [{ debugName: "fullValue" }] : []));
|
|
14
|
+
defaultFirst = signal(false, ...(ngDevMode ? [{ debugName: "defaultFirst" }] : []));
|
|
15
|
+
data = signal(undefined, ...(ngDevMode ? [{ debugName: "data" }] : []));
|
|
16
|
+
buttonMode = signal(false, ...(ngDevMode ? [{ debugName: "buttonMode" }] : []));
|
|
17
|
+
buttonStyle = signal("outline", ...(ngDevMode ? [{ debugName: "buttonStyle" }] : []));
|
|
18
|
+
size = signal('default', ...(ngDevMode ? [{ debugName: "size" }] : []));
|
|
19
|
+
direction = signal("horizontal", ...(ngDevMode ? [{ debugName: "direction" }] : []));
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
class Radio extends ValueAccess {
|
|
23
|
+
constructor() {
|
|
24
|
+
super();
|
|
25
|
+
effect(() => {
|
|
26
|
+
if (untracked(this.options.defaultFirst)) {
|
|
27
|
+
const data = this.options.data();
|
|
28
|
+
untracked(() => {
|
|
29
|
+
if (data?.length) {
|
|
30
|
+
if (this.options.fullValue()) {
|
|
31
|
+
this.setInitValue(data[0]);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
this.setInitValue(data[0][this.options.valueField()]);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
options = new RadioOptions();
|
|
42
|
+
displayValue = computed(() => this.buildDisplay(), ...(ngDevMode ? [{ debugName: "displayValue" }] : []));
|
|
43
|
+
radioValue = model(...(ngDevMode ? [undefined, { debugName: "radioValue" }] : []));
|
|
44
|
+
writeValue(value) {
|
|
45
|
+
super.writeValue(value);
|
|
46
|
+
this.valueToRadioValue();
|
|
47
|
+
}
|
|
48
|
+
setInitValue(value) {
|
|
49
|
+
super.setInitValue(value);
|
|
50
|
+
this.valueToRadioValue();
|
|
51
|
+
}
|
|
52
|
+
valueToRadioValue() {
|
|
53
|
+
if (this.value() != undefined) {
|
|
54
|
+
if (this.options.fullValue()) {
|
|
55
|
+
this.radioValue.set(this.value()[this.options.valueField()]);
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
this.radioValue.set(this.value());
|
|
59
|
+
}
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
this.radioValue.set(undefined);
|
|
63
|
+
}
|
|
64
|
+
onRadioChange(value) {
|
|
65
|
+
if (this.options.fullValue()) {
|
|
66
|
+
this.value.set(this.options.data().find((item) => item[this.options.valueField()] == value));
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
this.value.set(value);
|
|
70
|
+
}
|
|
71
|
+
this.onChange?.(this.value());
|
|
72
|
+
}
|
|
73
|
+
buildDisplay() {
|
|
74
|
+
if (this.options.fullValue()) {
|
|
75
|
+
return this.value()[this.options.labelField()];
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
return this.options.data().find((r) => this.value() == r[this.options.valueField()])?.[this.options.labelField()];
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: Radio, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
82
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: Radio, isStandalone: true, selector: "axis-radio", inputs: { radioValue: { classPropertyName: "radioValue", publicName: "radioValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { radioValue: "radioValueChange" }, usesInheritance: true, ngImport: i0, template: "@if (options.readonly()) {\n{{displayValue()}}\n}@else {\n<nz-radio-group [(ngModel)]=\"radioValue\" (ngModelChange)=\"onRadioChange($event)\" [nzSize]=\"options.size()\"\n [nzDisabled]=\"options.disabled()\" [class]=\"options.direction()\" [nzButtonStyle]=\"options.buttonStyle()\">\n @for (item of options.data(); track item[options.valueField()]) {\n @if (options.buttonMode()) {\n <label nz-radio-button [nzValue]=\"item[options.valueField()]\"\n [nzDisabled]=\"item[options.disabledField()]\">{{item[options.labelField()]}}</label>\n }@else {\n <label nz-radio [nzValue]=\"item[options.valueField()]\"\n [nzDisabled]=\"item[options.disabledField()]\">{{item[options.labelField()]}}</label>\n }\n }\n</nz-radio-group>\n}", styles: [":host{display:block}.vertical [nz-radio]{display:block}\n"], dependencies: [{ kind: "ngmodule", type: NzRadioModule }, { kind: "component", type: i1.NzRadioComponent, selector: "[nz-radio],[nz-radio-button]", inputs: ["nzValue", "nzDisabled", "nzAutoFocus", "nz-radio-button"], exportAs: ["nzRadio"] }, { kind: "component", type: i1.NzRadioGroupComponent, selector: "nz-radio-group", inputs: ["nzDisabled", "nzButtonStyle", "nzSize", "nzName"], exportAs: ["nzRadioGroup"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
83
|
+
}
|
|
84
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: Radio, decorators: [{
|
|
85
|
+
type: Component,
|
|
86
|
+
args: [{ selector: 'axis-radio', imports: [NzRadioModule, FormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (options.readonly()) {\n{{displayValue()}}\n}@else {\n<nz-radio-group [(ngModel)]=\"radioValue\" (ngModelChange)=\"onRadioChange($event)\" [nzSize]=\"options.size()\"\n [nzDisabled]=\"options.disabled()\" [class]=\"options.direction()\" [nzButtonStyle]=\"options.buttonStyle()\">\n @for (item of options.data(); track item[options.valueField()]) {\n @if (options.buttonMode()) {\n <label nz-radio-button [nzValue]=\"item[options.valueField()]\"\n [nzDisabled]=\"item[options.disabledField()]\">{{item[options.labelField()]}}</label>\n }@else {\n <label nz-radio [nzValue]=\"item[options.valueField()]\"\n [nzDisabled]=\"item[options.disabledField()]\">{{item[options.labelField()]}}</label>\n }\n }\n</nz-radio-group>\n}", styles: [":host{display:block}.vertical [nz-radio]{display:block}\n"] }]
|
|
87
|
+
}], ctorParameters: () => [] });
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Generated bundle index. Do not edit.
|
|
91
|
+
*/
|
|
92
|
+
|
|
93
|
+
export { Radio };
|
|
94
|
+
//# sourceMappingURL=ngx-axis-appforge-axis-components-radio.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngx-axis-appforge-axis-components-radio.mjs","sources":["../../../axis-components/radio/radio.options.ts","../../../axis-components/radio/radio.ts","../../../axis-components/radio/radio.html","../../../axis-components/radio/ngx-axis-appforge-axis-components-radio.ts"],"sourcesContent":["import { signal } from \"@angular/core\";\nimport { ValueAccessOptions } from \"ngx-axis-appforge/core\";\n\nexport class RadioOptions extends ValueAccessOptions {\n\n readonly labelField = signal(\"title\");\n readonly valueField = signal(\"key\");\n readonly disabledField = signal(\"disabled\");\n readonly fullValue = signal(false);\n readonly defaultFirst = signal(false);\n readonly data = signal<any>(undefined);\n\n readonly buttonMode = signal(false);\n readonly buttonStyle = signal<'outline' | 'solid'>(\"outline\");\n readonly size = signal<'large' | 'small' | 'default'>('default');\n readonly direction = signal<\"horizontal\" | \"vertical\">(\"horizontal\");\n\n}","import { ChangeDetectionStrategy, Component, computed, effect, model, untracked } from '@angular/core';\nimport { ValueAccess } from 'ngx-axis-appforge/core';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { FormsModule } from '@angular/forms';\nimport { RadioOptions } from './radio.options';\n\n@Component({\n selector: 'axis-radio',\n imports: [NzRadioModule, FormsModule],\n templateUrl: './radio.html',\n styleUrl: './radio.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class Radio extends ValueAccess<RadioOptions> {\n\n constructor() {\n super();\n effect(() => {\n if (untracked(this.options.defaultFirst)) {\n const data = this.options.data();\n untracked(() => {\n if (data?.length) {\n if (this.options.fullValue()) {\n this.setInitValue(data[0]);\n } else {\n this.setInitValue(data[0][this.options.valueField()]);\n }\n }\n })\n }\n });\n }\n\n override options: RadioOptions = new RadioOptions();\n\n readonly displayValue = computed(() => this.buildDisplay());\n readonly radioValue = model<any[]>();\n\n override writeValue(value: any): void {\n super.writeValue(value);\n this.valueToRadioValue();\n }\n\n override setInitValue(value: any): void {\n super.setInitValue(value);\n this.valueToRadioValue();\n }\n\n private valueToRadioValue() {\n if (this.value() != undefined) {\n if (this.options.fullValue()) {\n this.radioValue.set(this.value()[this.options.valueField()]);\n } else {\n this.radioValue.set(this.value());\n }\n return;\n }\n this.radioValue.set(undefined);\n }\n\n onRadioChange(value: any) {\n if (this.options.fullValue()) {\n this.value.set(this.options.data().find((item: any) => item[this.options.valueField()] == value));\n } else {\n this.value.set(value);\n }\n this.onChange?.(this.value());\n }\n\n private buildDisplay(): string {\n if (this.options.fullValue()) {\n return this.value()[this.options.labelField()];\n } else {\n return this.options.data().find((r: any) => this.value() == r[this.options.valueField()])?.[this.options.labelField()];\n }\n }\n}\n","@if (options.readonly()) {\n{{displayValue()}}\n}@else {\n<nz-radio-group [(ngModel)]=\"radioValue\" (ngModelChange)=\"onRadioChange($event)\" [nzSize]=\"options.size()\"\n [nzDisabled]=\"options.disabled()\" [class]=\"options.direction()\" [nzButtonStyle]=\"options.buttonStyle()\">\n @for (item of options.data(); track item[options.valueField()]) {\n @if (options.buttonMode()) {\n <label nz-radio-button [nzValue]=\"item[options.valueField()]\"\n [nzDisabled]=\"item[options.disabledField()]\">{{item[options.labelField()]}}</label>\n }@else {\n <label nz-radio [nzValue]=\"item[options.valueField()]\"\n [nzDisabled]=\"item[options.disabledField()]\">{{item[options.labelField()]}}</label>\n }\n }\n</nz-radio-group>\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './radio';\n"],"names":[],"mappings":";;;;;;;;AAGM,MAAO,YAAa,SAAQ,kBAAkB,CAAA;AAEvC,IAAA,UAAU,GAAG,MAAM,CAAC,OAAO,sDAAC;AAC5B,IAAA,UAAU,GAAG,MAAM,CAAC,KAAK,sDAAC;AAC1B,IAAA,aAAa,GAAG,MAAM,CAAC,UAAU,yDAAC;AAClC,IAAA,SAAS,GAAG,MAAM,CAAC,KAAK,qDAAC;AACzB,IAAA,YAAY,GAAG,MAAM,CAAC,KAAK,wDAAC;AAC5B,IAAA,IAAI,GAAG,MAAM,CAAM,SAAS,gDAAC;AAE7B,IAAA,UAAU,GAAG,MAAM,CAAC,KAAK,sDAAC;AAC1B,IAAA,WAAW,GAAG,MAAM,CAAsB,SAAS,uDAAC;AACpD,IAAA,IAAI,GAAG,MAAM,CAAgC,SAAS,gDAAC;AACvD,IAAA,SAAS,GAAG,MAAM,CAA4B,YAAY,qDAAC;AAEvE;;ACJK,MAAO,KAAM,SAAQ,WAAyB,CAAA;AAElD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;QACP,MAAM,CAAC,MAAK;YACV,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;gBACxC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;gBAChC,SAAS,CAAC,MAAK;AACb,oBAAA,IAAI,IAAI,EAAE,MAAM,EAAE;AAChB,wBAAA,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE;4BAC5B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;6BACrB;AACL,4BAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;;;AAG3D,iBAAC,CAAC;;AAEN,SAAC,CAAC;;AAGK,IAAA,OAAO,GAAiB,IAAI,YAAY,EAAE;IAE1C,YAAY,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,cAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;IAClD,UAAU,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,YAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAS;AAE3B,IAAA,UAAU,CAAC,KAAU,EAAA;AAC5B,QAAA,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;QACvB,IAAI,CAAC,iBAAiB,EAAE;;AAGjB,IAAA,YAAY,CAAC,KAAU,EAAA;AAC9B,QAAA,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,iBAAiB,EAAE;;IAGlB,iBAAiB,GAAA;AACvB,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,SAAS,EAAE;AAC7B,YAAA,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE;AAC5B,gBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;;iBACvD;gBACL,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;;YAEnC;;AAEF,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC;;AAGhC,IAAA,aAAa,CAAC,KAAU,EAAA;AACtB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE;AAC5B,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC;;aAC5F;AACL,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;;QAEvB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;;IAGvB,YAAY,GAAA;AAClB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE;AAC5B,YAAA,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;;aACzC;AACL,YAAA,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAM,KAAK,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;;;uGA5D/G,KAAK,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAL,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAK,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECblB,4vBAeC,EAAA,MAAA,EAAA,CAAA,2DAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDPW,aAAa,kYAAE,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAKzB,KAAK,EAAA,UAAA,EAAA,CAAA;kBAPjB,SAAS;+BACE,YAAY,EAAA,OAAA,EACb,CAAC,aAAa,EAAE,WAAW,CAAC,EAAA,eAAA,EAGpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4vBAAA,EAAA,MAAA,EAAA,CAAA,2DAAA,CAAA,EAAA;;;AEXjD;;AAEG;;;;"}
|