rd-outer-component 0.0.93 → 0.0.96

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.
Files changed (43) hide show
  1. package/esm2020/lib/modules/custom-checkbox/custom-checkbox.component.mjs +26 -19
  2. package/esm2020/lib/modules/custom-date/custom-date.component.mjs +141 -18
  3. package/esm2020/lib/modules/custom-date/custom-date.module.mjs +19 -4
  4. package/esm2020/lib/modules/custom-filter/custom-filter.component.mjs +2 -2
  5. package/esm2020/lib/modules/custom-input/custom-input.component.mjs +68 -34
  6. package/esm2020/lib/modules/custom-input/custom-input.module.mjs +7 -3
  7. package/esm2020/lib/modules/custom-input-amount/custom-input-amount.component.mjs +28 -29
  8. package/esm2020/lib/modules/custom-radio/custom-radio.component.mjs +82 -16
  9. package/esm2020/lib/modules/custom-select/index.mjs +5 -3
  10. package/esm2020/lib/modules/custom-select/industry-cascader/industry-cascader.component.mjs +361 -0
  11. package/esm2020/lib/modules/custom-select/industry-cascader/industry-cascader.module.mjs +60 -0
  12. package/esm2020/lib/modules/custom-select/pure-select-token/pure-select-token.component.mjs +3 -3
  13. package/esm2020/lib/modules/custom-select/rd-select.component.mjs +432 -0
  14. package/esm2020/lib/modules/custom-select/rd-select.module.mjs +67 -0
  15. package/esm2020/lib/modules/custom-textarea/custom-textarea.component.mjs +2 -2
  16. package/esm2020/lib/modules/form-item/form-item.component.mjs +20 -3
  17. package/esm2020/lib/modules/rd-button/rd-button.component.mjs +133 -0
  18. package/esm2020/lib/modules/rd-button/rd-button.module.mjs +20 -0
  19. package/fesm2015/rd-outer-component.mjs +1280 -218
  20. package/fesm2015/rd-outer-component.mjs.map +1 -1
  21. package/fesm2020/rd-outer-component.mjs +1276 -214
  22. package/fesm2020/rd-outer-component.mjs.map +1 -1
  23. package/lib/modules/custom-checkbox/custom-checkbox.component.d.ts +7 -3
  24. package/lib/modules/custom-date/custom-date.component.d.ts +30 -6
  25. package/lib/modules/custom-date/custom-date.module.d.ts +2 -1
  26. package/lib/modules/custom-input/custom-input.component.d.ts +12 -3
  27. package/lib/modules/custom-input/custom-input.module.d.ts +2 -1
  28. package/lib/modules/custom-input-amount/custom-input-amount.component.d.ts +5 -5
  29. package/lib/modules/custom-radio/custom-radio.component.d.ts +21 -7
  30. package/lib/modules/custom-select/index.d.ts +4 -2
  31. package/lib/modules/custom-select/industry-cascader/industry-cascader.component.d.ts +81 -0
  32. package/lib/modules/custom-select/industry-cascader/industry-cascader.module.d.ts +18 -0
  33. package/lib/modules/custom-select/rd-select.component.d.ts +90 -0
  34. package/lib/modules/custom-select/rd-select.module.d.ts +19 -0
  35. package/lib/modules/form-item/form-item.component.d.ts +7 -2
  36. package/lib/modules/rd-button/rd-button.component.d.ts +53 -0
  37. package/lib/modules/rd-button/rd-button.module.d.ts +10 -0
  38. package/package.json +4 -2
  39. package/src/lib/assets/scss/form-item.scss +2 -2
  40. package/esm2020/lib/modules/custom-select/custom-select.component.mjs +0 -194
  41. package/esm2020/lib/modules/custom-select/custom-select.module.mjs +0 -39
  42. package/lib/modules/custom-select/custom-select.component.d.ts +0 -53
  43. package/lib/modules/custom-select/custom-select.module.d.ts +0 -12
@@ -1,50 +1,63 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, forwardRef, Component, Input, Output, NgModule, ViewChild, createComponent, Injectable, Optional, SkipSelf, Pipe } from '@angular/core';
3
- import * as i2 from '@angular/forms';
2
+ import { EventEmitter, forwardRef, Component, Input, HostBinding, Output, NgModule, ViewChild, ChangeDetectionStrategy, HostListener, createComponent, Injectable, Optional, SkipSelf, Pipe } from '@angular/core';
3
+ import * as i3 from '@angular/forms';
4
4
  import { NG_VALUE_ACCESSOR, ReactiveFormsModule, FormsModule, NG_VALIDATORS } from '@angular/forms';
5
5
  import * as i1 from '@angular/common';
6
6
  import { CommonModule, formatDate } from '@angular/common';
7
- import * as i3 from 'ng-zorro-antd/checkbox';
7
+ import * as i9 from 'ng-zorro-antd/checkbox';
8
8
  import { NzCheckboxModule } from 'ng-zorro-antd/checkbox';
9
- import * as i3$1 from 'ng-zorro-antd/date-picker';
9
+ import * as i1$1 from '@ngx-translate/core';
10
+ import { TranslateModule } from '@ngx-translate/core';
11
+ import * as i4 from 'ng-zorro-antd/date-picker';
10
12
  import { NzDatePickerModule } from 'ng-zorro-antd/date-picker';
11
13
  import Big from 'big.js';
12
- import * as i3$2 from 'ng-zorro-antd/input';
14
+ import * as i3$1 from 'ng-zorro-antd/input';
13
15
  import { NzInputModule } from 'ng-zorro-antd/input';
14
- import * as i4 from 'ngx-mask';
16
+ import * as i5 from 'ngx-mask';
15
17
  import { NgxMaskModule } from 'ngx-mask';
16
18
  import { CdkTextareaAutosize } from '@angular/cdk/text-field';
17
- import * as i3$3 from 'ng-zorro-antd/radio';
18
- import { NzRadioModule } from 'ng-zorro-antd/radio';
19
- import * as i3$4 from 'ng-zorro-antd/spin';
19
+ import * as i4$2 from 'ng-zorro-antd/spin';
20
20
  import { NzSpinModule } from 'ng-zorro-antd/spin';
21
- import * as i4$1 from 'ng-zorro-antd/select';
21
+ import * as i9$1 from 'ng-zorro-antd/radio';
22
+ import { NzRadioModule } from 'ng-zorro-antd/radio';
23
+ import * as i2$1 from 'ng-zorro-antd/select';
22
24
  import { NzSelectModule } from 'ng-zorro-antd/select';
25
+ import * as i7 from 'ng-zorro-antd/drawer';
26
+ import { NzDrawerModule } from 'ng-zorro-antd/drawer';
27
+ import * as i3$2 from 'ng-zorro-antd/core/transition-patch';
28
+ import * as i11 from 'ng-zorro-antd/modal';
29
+ import { NzModalModule } from 'ng-zorro-antd/modal';
30
+ import * as i2 from 'ng-zorro-antd/button';
31
+ import { NzButtonModule } from 'ng-zorro-antd/button';
32
+ import * as i4$1 from 'ng-zorro-antd/core/wave';
33
+ import { NzIconModule } from 'ng-zorro-antd/icon';
23
34
  import * as i6 from 'ng-zorro-antd/avatar';
24
35
  import { NzAvatarModule } from 'ng-zorro-antd/avatar';
36
+ import * as i4$3 from 'ng-zorro-antd/cascader';
37
+ import { NzCascaderModule } from 'ng-zorro-antd/cascader';
38
+ import { NzListModule } from 'ng-zorro-antd/list';
25
39
  import { NzDropDownModule } from 'ng-zorro-antd/dropdown';
26
- import * as i2$2 from 'ng-zorro-antd/button';
27
- import { NzButtonModule } from 'ng-zorro-antd/button';
28
- import * as i2$1 from 'ng-zorro-antd/core/transition-patch';
29
40
  import { differenceInCalendarDays } from 'date-fns';
30
41
  import { __decorate, __awaiter } from 'tslib';
31
- import * as i4$2 from 'ng-zorro-antd/pagination';
42
+ import * as i4$4 from 'ng-zorro-antd/pagination';
32
43
  import { NzPaginationModule } from 'ng-zorro-antd/pagination';
33
- import * as i5 from 'ng-zorro-antd/grid';
44
+ import * as i5$1 from 'ng-zorro-antd/grid';
34
45
  import { NzGridModule } from 'ng-zorro-antd/grid';
35
- import * as i1$1 from 'ng-zorro-antd/notification';
46
+ import * as i1$2 from 'ng-zorro-antd/notification';
36
47
  import { NzNotificationModule } from 'ng-zorro-antd/notification';
37
- import * as i2$3 from '@angular/platform-browser';
48
+ import * as i2$2 from '@angular/platform-browser';
38
49
  import { Subject, isObservable, of } from 'rxjs';
39
50
  import { debounceTime, filter, switchMap } from 'rxjs/operators';
40
51
 
41
52
  class CustomCheckboxComponent {
53
+ get hostThemeLight() {
54
+ return this.theme === 'light';
55
+ }
56
+ get hostThemeDark() {
57
+ return this.theme === 'dark';
58
+ }
42
59
  set options(val) {
43
- this._rawOptions = val ? [...val] : [];
44
- // 核心修复:深拷贝数组中的每一个对象
45
- // 这样 nz-checkbox-group 修改 checked 属性时,只会修改这里的副本
46
- // 永远不会影响到父组件 formFieldStruct 里的原始数据!
47
- this.filteredOptions = val ? JSON.parse(JSON.stringify(val)) : [];
60
+ this._rawOptions = val;
48
61
  }
49
62
  get options() {
50
63
  return this._rawOptions;
@@ -54,7 +67,7 @@ class CustomCheckboxComponent {
54
67
  this.label = '';
55
68
  this.name = '';
56
69
  this.disabled = false;
57
- this.filteredOptions = [];
70
+ this.type = '';
58
71
  this.valueChange = new EventEmitter();
59
72
  this._rawOptions = [];
60
73
  this.value = undefined;
@@ -77,38 +90,43 @@ class CustomCheckboxComponent {
77
90
  this.onTouched = fn;
78
91
  }
79
92
  handleValueChange(value) {
80
- // 1. 核心修复:对 value 进行深拷贝
81
- // 这样 emit 出去的就不再是 formFieldStruct 里的原始对象引用了
82
- const valueCopy = JSON.parse(JSON.stringify(value));
83
- // 2. 通知 FormArray 更新
84
- this.onChange(valueCopy);
85
- // 3. 向外发射新拷贝的对象
86
- this.valueChange.emit(valueCopy);
93
+ this.onChange(value);
94
+ this.valueChange.emit(value);
87
95
  }
88
96
  }
89
97
  CustomCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomCheckboxComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
90
- CustomCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomCheckboxComponent, selector: "app-rd-checkbox", inputs: { label: "label", name: "name", disabled: "disabled", options: "options" }, outputs: { valueChange: "valueChange" }, providers: [
98
+ CustomCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomCheckboxComponent, selector: "app-custom-checkbox", inputs: { label: "label", name: "name", disabled: "disabled", type: "type", theme: "theme", options: "options" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.theme-light": "this.hostThemeLight", "class.theme-dark": "this.hostThemeDark" } }, providers: [
91
99
  {
92
100
  provide: NG_VALUE_ACCESSOR,
93
101
  useExisting: forwardRef(() => CustomCheckboxComponent),
94
102
  multi: true,
95
103
  },
96
- ], ngImport: i0, template: "<div>\n <div\n class=\"rd-form-item-check\"\n [ngClass]=\"{\n disabled: disabled,\n }\"\n >\n <div class=\"rd-form-item-check-label\">{{ label }}</div>\n <nz-checkbox-group\n [(ngModel)]=\"filteredOptions\"\n (ngModelChange)=\"handleValueChange($event)\"\n ></nz-checkbox-group>\n </div>\n</div>\n", styles: ["::ng-deep .rd-form-item-check .ant-checkbox-group{display:flex;margin-top:11px}::ng-deep .rd-form-item-check .ant-checkbox-group label{flex:1;color:var(--rd-copy-primary);font-size:14px;font-weight:500}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-checked .ant-checkbox-inner{background-color:var(--rd-control-input-selected);border-color:var(--rd-control-border-selected)}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-inner{border-radius:4px}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-checked:after{border-color:var(--rd-control-border-selected);border-radius:4px}:host .rd-form-item-check{position:relative;background-color:var(--rd-bg-panel);width:100%}:host .rd-form-item-check-label{font-size:14px;font-weight:500;color:var(--rd-copy-secondary)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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"] }, { kind: "component", type: i3.NzCheckboxGroupComponent, selector: "nz-checkbox-group", inputs: ["nzDisabled"], exportAs: ["nzCheckboxGroup"] }] });
104
+ ], ngImport: i0, template: "<div>\n <div\n class=\"rd-form-item-check\"\n [ngClass]=\"{\n disabled: disabled,\n isBpn: type === 'isBpn',\n }\"\n >\n <div class=\"rd-form-item-check-label\">{{ label }}</div>\n <nz-checkbox-group\n [(ngModel)]=\"options\"\n (ngModelChange)=\"handleValueChange($event)\"\n ></nz-checkbox-group>\n </div>\n</div>\n", styles: ["::ng-deep .rd-form-item-check .ant-checkbox-group{display:flex}::ng-deep .rd-form-item-check .ant-checkbox-group label{flex:1;color:var(--rd-copy-primary);font-size:14px;font-weight:400;line-height:22px}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-inner{border-radius:var(--rd-control-radius);background-color:var(--rd-control-input-empty);border:1px solid var(--rd-control-border-empty)}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-checked .ant-checkbox-inner{background-color:var(--rd-control-input-selected)!important;border:none!important}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-checked .ant-checkbox-inner:after{border:2px solid var(--rd-copy-inverse);border-top:0;border-left:0}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-checked:after{border-radius:var(--rd-control-radius)}::ng-deep .rd-form-item-check.isBpn .ant-checkbox-group label{color:var(--rd-copy-secondary);font-size:14px;font-weight:400;line-height:22px}::ng-deep .rd-form-item-check.isBpn .ant-checkbox-inner{width:16px;height:16px;border:1px solid var(--rd-control-border-empty);border-radius:var(--rd-control-radius);background:var(--rd-control-input-empty)}::ng-deep .rd-form-item-check.isBpn .ant-checkbox-checked .ant-checkbox-inner{background:var(--rd-copy-primary)!important;border-color:var(--rd-copy-primary)!important}::ng-deep .rd-form-item-check.isBpn .ant-checkbox-checked .ant-checkbox-inner:after{border-color:var(--rd-copy-inverse)}:host(.theme-light) ::ng-deep .rd-form-item-check .rd-form-item-check-label{display:none}:host(.theme-light) ::ng-deep .rd-form-item-check .ant-checkbox-group{width:100%}:host(.theme-light) ::ng-deep .rd-form-item-check .ant-checkbox-group label{align-items:flex-start;gap:12px;margin:0}:host(.theme-light) ::ng-deep .rd-form-item-check .ant-checkbox-group label.ant-checkbox-wrapper:after{display:none}:host(.theme-light) ::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox{top:2px;flex:0 0 16px}:host(.theme-light) ::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox+span{padding:0}:host(.theme-light) ::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-inner{width:16px;height:16px;border-radius:3px}:host(.theme-light) ::ng-deep .rd-form-item-check.isBpn .ant-checkbox-group label{color:#757575}:host(.theme-light) ::ng-deep .rd-form-item-check.isBpn .ant-checkbox-inner{border-radius:4px}:host .rd-form-item-check{position:relative;background-color:transparent;width:100%}:host .rd-form-item-check-label{font-size:14px;font-weight:500;color:var(--rd-copy-primary)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i9.NzCheckboxGroupComponent, selector: "nz-checkbox-group", inputs: ["nzDisabled"], exportAs: ["nzCheckboxGroup"] }] });
97
105
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomCheckboxComponent, decorators: [{
98
106
  type: Component,
99
- args: [{ selector: 'app-rd-checkbox', providers: [
107
+ args: [{ selector: 'app-custom-checkbox', providers: [
100
108
  {
101
109
  provide: NG_VALUE_ACCESSOR,
102
110
  useExisting: forwardRef(() => CustomCheckboxComponent),
103
111
  multi: true,
104
112
  },
105
- ], template: "<div>\n <div\n class=\"rd-form-item-check\"\n [ngClass]=\"{\n disabled: disabled,\n }\"\n >\n <div class=\"rd-form-item-check-label\">{{ label }}</div>\n <nz-checkbox-group\n [(ngModel)]=\"filteredOptions\"\n (ngModelChange)=\"handleValueChange($event)\"\n ></nz-checkbox-group>\n </div>\n</div>\n", styles: ["::ng-deep .rd-form-item-check .ant-checkbox-group{display:flex;margin-top:11px}::ng-deep .rd-form-item-check .ant-checkbox-group label{flex:1;color:var(--rd-copy-primary);font-size:14px;font-weight:500}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-checked .ant-checkbox-inner{background-color:var(--rd-control-input-selected);border-color:var(--rd-control-border-selected)}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-inner{border-radius:4px}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-checked:after{border-color:var(--rd-control-border-selected);border-radius:4px}:host .rd-form-item-check{position:relative;background-color:var(--rd-bg-panel);width:100%}:host .rd-form-item-check-label{font-size:14px;font-weight:500;color:var(--rd-copy-secondary)}\n"] }]
113
+ ], template: "<div>\n <div\n class=\"rd-form-item-check\"\n [ngClass]=\"{\n disabled: disabled,\n isBpn: type === 'isBpn',\n }\"\n >\n <div class=\"rd-form-item-check-label\">{{ label }}</div>\n <nz-checkbox-group\n [(ngModel)]=\"options\"\n (ngModelChange)=\"handleValueChange($event)\"\n ></nz-checkbox-group>\n </div>\n</div>\n", styles: ["::ng-deep .rd-form-item-check .ant-checkbox-group{display:flex}::ng-deep .rd-form-item-check .ant-checkbox-group label{flex:1;color:var(--rd-copy-primary);font-size:14px;font-weight:400;line-height:22px}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-inner{border-radius:var(--rd-control-radius);background-color:var(--rd-control-input-empty);border:1px solid var(--rd-control-border-empty)}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-checked .ant-checkbox-inner{background-color:var(--rd-control-input-selected)!important;border:none!important}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-checked .ant-checkbox-inner:after{border:2px solid var(--rd-copy-inverse);border-top:0;border-left:0}::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-checked:after{border-radius:var(--rd-control-radius)}::ng-deep .rd-form-item-check.isBpn .ant-checkbox-group label{color:var(--rd-copy-secondary);font-size:14px;font-weight:400;line-height:22px}::ng-deep .rd-form-item-check.isBpn .ant-checkbox-inner{width:16px;height:16px;border:1px solid var(--rd-control-border-empty);border-radius:var(--rd-control-radius);background:var(--rd-control-input-empty)}::ng-deep .rd-form-item-check.isBpn .ant-checkbox-checked .ant-checkbox-inner{background:var(--rd-copy-primary)!important;border-color:var(--rd-copy-primary)!important}::ng-deep .rd-form-item-check.isBpn .ant-checkbox-checked .ant-checkbox-inner:after{border-color:var(--rd-copy-inverse)}:host(.theme-light) ::ng-deep .rd-form-item-check .rd-form-item-check-label{display:none}:host(.theme-light) ::ng-deep .rd-form-item-check .ant-checkbox-group{width:100%}:host(.theme-light) ::ng-deep .rd-form-item-check .ant-checkbox-group label{align-items:flex-start;gap:12px;margin:0}:host(.theme-light) ::ng-deep .rd-form-item-check .ant-checkbox-group label.ant-checkbox-wrapper:after{display:none}:host(.theme-light) ::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox{top:2px;flex:0 0 16px}:host(.theme-light) ::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox+span{padding:0}:host(.theme-light) ::ng-deep .rd-form-item-check .ant-checkbox-group .ant-checkbox-inner{width:16px;height:16px;border-radius:3px}:host(.theme-light) ::ng-deep .rd-form-item-check.isBpn .ant-checkbox-group label{color:#757575}:host(.theme-light) ::ng-deep .rd-form-item-check.isBpn .ant-checkbox-inner{border-radius:4px}:host .rd-form-item-check{position:relative;background-color:transparent;width:100%}:host .rd-form-item-check-label{font-size:14px;font-weight:500;color:var(--rd-copy-primary)}\n"] }]
106
114
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { label: [{
107
115
  type: Input
108
116
  }], name: [{
109
117
  type: Input
110
118
  }], disabled: [{
111
119
  type: Input
120
+ }], type: [{
121
+ type: Input
122
+ }], theme: [{
123
+ type: Input
124
+ }], hostThemeLight: [{
125
+ type: HostBinding,
126
+ args: ['class.theme-light']
127
+ }], hostThemeDark: [{
128
+ type: HostBinding,
129
+ args: ['class.theme-dark']
112
130
  }], options: [{
113
131
  type: Input
114
132
  }], valueChange: [{
@@ -129,19 +147,151 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
129
147
  }]
130
148
  }] });
131
149
 
132
- class CustomDateComponent {
150
+ class FormItemComponent {
133
151
  constructor() {
152
+ this.size = 'normal';
153
+ }
154
+ get hostThemeLight() {
155
+ return this.theme === 'light';
156
+ }
157
+ get hostThemeDark() {
158
+ return this.theme === 'dark';
159
+ }
160
+ get isShowSelectIcon() {
161
+ return this.type === 'select';
162
+ }
163
+ get isShowDateIcon() {
164
+ return this.type === 'date';
165
+ }
166
+ }
167
+ FormItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
168
+ FormItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormItemComponent, selector: "app-rd-form-item", inputs: { errorMessage: "errorMessage", disabled: "disabled", label: "label", type: "type", focus: "focus", value: "value", size: "size", theme: "theme" }, host: { properties: { "class.theme-light": "this.hostThemeLight", "class.theme-dark": "this.hostThemeDark" } }, ngImport: i0, template: "<div\n class=\"rd-form-item\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': !!errorMessage,\n 'rd-focus': focus,\n 'rd-has-value': !!value,\n 'rd-form-item-s': size === 'small',\n 'rd-form-item-normal': size === 'normal',\n }\"\n>\n <ng-content></ng-content>\n <div *ngIf=\"label\" class=\"rd-form-item-label\">{{ label }}</div>\n <svg\n *ngIf=\"isShowSelectIcon\"\n class=\"rd-form-item-select-icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"17\"\n viewBox=\"0 0 16 17\"\n fill=\"none\"\n >\n <path\n d=\"M3 5.83337L8 11.1667L13 5.83337\"\n [attr.stroke]=\"disabled ? 'var(--rd-copy-disable)' : 'var(--rd-copy-primary)'\"\n stroke-width=\"1.16667\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n</div>\n<div *ngIf=\"errorMessage\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ errorMessage }}\n</div>\n", styles: [":host .rd-form-item{position:relative;border-radius:4px;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;font-size:14px;line-height:1;padding:0;transition:all .3s cubic-bezier(.645,.045,.355,1)}:host .rd-form-item.rd-form-item-normal{min-height:64px}:host .rd-form-item.rd-form-item-s{height:40px}:host .rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}:host .rd-form-item.rd-disabled .rd-form-item-label,:host .rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}:host .rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}:host .rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}:host .rd-form-item.rd-focus{border:1px solid var(--rd-input-fg-hover);box-shadow:0 0 0 2px #367af61a}:host .rd-form-item.rd-focus .rd-form-item-select-icon{transform:translateY(-50%) rotate(-180deg)}:host .rd-form-item.rd-form-item-normal.rd-focus .rd-form-item-label,:host .rd-form-item.rd-form-item-normal.rd-has-value .rd-form-item-label{top:16px;font-size:12px}:host .rd-form-item.rd-form-item-normal.rd-focus ::ng-deep .rd-form-item-select,:host .rd-form-item.rd-form-item-normal.rd-has-value ::ng-deep .rd-form-item-select{top:10px}:host .rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}:host .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none;transition:transform .2s ease}:host .rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}:host .rd-form-item-error img{width:16px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
169
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormItemComponent, decorators: [{
170
+ type: Component,
171
+ args: [{ selector: 'app-rd-form-item', template: "<div\n class=\"rd-form-item\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': !!errorMessage,\n 'rd-focus': focus,\n 'rd-has-value': !!value,\n 'rd-form-item-s': size === 'small',\n 'rd-form-item-normal': size === 'normal',\n }\"\n>\n <ng-content></ng-content>\n <div *ngIf=\"label\" class=\"rd-form-item-label\">{{ label }}</div>\n <svg\n *ngIf=\"isShowSelectIcon\"\n class=\"rd-form-item-select-icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"17\"\n viewBox=\"0 0 16 17\"\n fill=\"none\"\n >\n <path\n d=\"M3 5.83337L8 11.1667L13 5.83337\"\n [attr.stroke]=\"disabled ? 'var(--rd-copy-disable)' : 'var(--rd-copy-primary)'\"\n stroke-width=\"1.16667\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n</div>\n<div *ngIf=\"errorMessage\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ errorMessage }}\n</div>\n", styles: [":host .rd-form-item{position:relative;border-radius:4px;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;font-size:14px;line-height:1;padding:0;transition:all .3s cubic-bezier(.645,.045,.355,1)}:host .rd-form-item.rd-form-item-normal{min-height:64px}:host .rd-form-item.rd-form-item-s{height:40px}:host .rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}:host .rd-form-item.rd-disabled .rd-form-item-label,:host .rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}:host .rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}:host .rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}:host .rd-form-item.rd-focus{border:1px solid var(--rd-input-fg-hover);box-shadow:0 0 0 2px #367af61a}:host .rd-form-item.rd-focus .rd-form-item-select-icon{transform:translateY(-50%) rotate(-180deg)}:host .rd-form-item.rd-form-item-normal.rd-focus .rd-form-item-label,:host .rd-form-item.rd-form-item-normal.rd-has-value .rd-form-item-label{top:16px;font-size:12px}:host .rd-form-item.rd-form-item-normal.rd-focus ::ng-deep .rd-form-item-select,:host .rd-form-item.rd-form-item-normal.rd-has-value ::ng-deep .rd-form-item-select{top:10px}:host .rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}:host .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none;transition:transform .2s ease}:host .rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}:host .rd-form-item-error img{width:16px}\n"] }]
172
+ }], propDecorators: { errorMessage: [{
173
+ type: Input
174
+ }], disabled: [{
175
+ type: Input
176
+ }], label: [{
177
+ type: Input
178
+ }], type: [{
179
+ type: Input
180
+ }], focus: [{
181
+ type: Input
182
+ }], value: [{
183
+ type: Input
184
+ }], size: [{
185
+ type: Input
186
+ }], theme: [{
187
+ type: Input
188
+ }], hostThemeLight: [{
189
+ type: HostBinding,
190
+ args: ['class.theme-light']
191
+ }], hostThemeDark: [{
192
+ type: HostBinding,
193
+ args: ['class.theme-dark']
194
+ }] } });
195
+
196
+ class CustomDateComponent {
197
+ get hostThemeLight() {
198
+ return this.theme === 'light';
199
+ }
200
+ get hostThemeDark() {
201
+ return this.theme === 'dark';
202
+ }
203
+ get popupClassName() {
204
+ const themeClass = this.theme === 'light'
205
+ ? 'theme-light'
206
+ : this.theme === 'dark'
207
+ ? 'theme-dark'
208
+ : '';
209
+ return ['rd-form-item-date-popup', themeClass].filter(Boolean).join(' ');
210
+ }
211
+ constructor(cdr, translate) {
212
+ this.cdr = cdr;
213
+ this.translate = translate;
134
214
  this.disabled = false;
215
+ this.type = 'date';
216
+ this.required = false;
217
+ this.name = '';
218
+ this.placeholder = '';
219
+ this.errorMessages = {
220
+ required: 'please_select_date',
221
+ invalid: 'invalid_date',
222
+ custom: 'validation_failed',
223
+ };
135
224
  this.inputValue = null;
136
225
  this.isPickerOpen = false;
137
- this.showError = false;
138
- this.currentErrorMessage = '';
226
+ this.isFocus = false;
227
+ this.isComponentReady = false;
228
+ this.control = null;
139
229
  this.onChange = () => { };
140
230
  this.onTouched = () => { };
231
+ // 在组件中
232
+ this.disabledEndDate = (current) => {
233
+ if (!current) {
234
+ return false;
235
+ }
236
+ const today = new Date();
237
+ today.setHours(0, 0, 0, 0);
238
+ const currentDate = new Date(current);
239
+ currentDate.setHours(0, 0, 0, 0);
240
+ // 禁用今天和未来的日期
241
+ return currentDate.getTime() >= today.getTime();
242
+ };
243
+ }
244
+ get currentErrorMessage() {
245
+ var _a, _b, _c;
246
+ if (!((_a = this.control) === null || _a === void 0 ? void 0 : _a.errors))
247
+ return '';
248
+ const firstError = Object.keys(((_b = this.control) === null || _b === void 0 ? void 0 : _b.errors) || {})[0];
249
+ switch (firstError) {
250
+ case 'required':
251
+ return `${this.translate.instant('please_select')}${this.label.toLowerCase()}`;
252
+ case 'custom':
253
+ return (((_c = this.control) === null || _c === void 0 ? void 0 : _c.errors['custom']) ||
254
+ this.translate.instant('validation_failed'));
255
+ default:
256
+ return (this.translate.instant(this.errorMessages[firstError]) ||
257
+ this.translate.instant('validation_failed'));
258
+ }
259
+ }
260
+ get showError() {
261
+ var _a, _b, _c;
262
+ return (!!((_a = this.control) === null || _a === void 0 ? void 0 : _a.invalid) && (((_b = this.control) === null || _b === void 0 ? void 0 : _b.touched) || ((_c = this.control) === null || _c === void 0 ? void 0 : _c.dirty)));
263
+ }
264
+ get displayValue() {
265
+ if (!this.inputValue)
266
+ return '';
267
+ if (this.type === 'range' && Array.isArray(this.inputValue)) {
268
+ const [start, end] = this.inputValue;
269
+ return `${start || ''} - ${end || ''}`;
270
+ }
271
+ return this.inputValue;
272
+ }
273
+ validate(control) {
274
+ this.control = control;
275
+ // 添加自定义验证逻辑
276
+ const errors = {};
277
+ // 必填验证
278
+ if (this.required && !this.inputValue) {
279
+ errors['required'] = true;
280
+ return errors;
281
+ }
282
+ // 如果是范围选择,验证两个日期都有值
283
+ if (this.type === 'range' && Array.isArray(this.inputValue)) {
284
+ const [start, end] = this.inputValue;
285
+ if ((start && !end) || (!start && end)) {
286
+ errors['incomplete'] = true;
287
+ return errors;
288
+ }
289
+ }
290
+ return null;
141
291
  }
142
- ngOnInit() { }
143
292
  writeValue(value) {
144
293
  this.inputValue = value;
294
+ this.cdr.markForCheck();
145
295
  }
146
296
  registerOnChange(fn) {
147
297
  this.onChange = fn;
@@ -151,36 +301,55 @@ class CustomDateComponent {
151
301
  }
152
302
  setDisabledState(isDisabled) {
153
303
  this.disabled = isDisabled;
154
- }
155
- validate(control) {
156
- return null;
304
+ this.cdr.markForCheck();
157
305
  }
158
306
  onDateChange(value) {
159
307
  this.inputValue = value;
160
308
  this.onChange(value);
309
+ // 触发验证
310
+ if (this.control) {
311
+ this.control.markAsTouched();
312
+ this.control.updateValueAndValidity();
313
+ }
314
+ this.cdr.markForCheck();
161
315
  }
162
316
  onOpenChange(open) {
163
317
  setTimeout(() => {
164
318
  this.isPickerOpen = open;
319
+ this.cdr.markForCheck();
165
320
  }, 0);
166
321
  }
167
322
  openPicker() {
168
323
  var _a;
169
- if (this.isPickerOpen) {
324
+ if (this.disabled || this.isPickerOpen) {
170
325
  return;
171
326
  }
172
327
  this.isPickerOpen = true;
173
328
  (_a = this.datePicker) === null || _a === void 0 ? void 0 : _a.open();
174
329
  }
330
+ onFocus() {
331
+ this.isFocus = true;
332
+ }
333
+ onBlur() {
334
+ this.isFocus = false;
335
+ this.onTouched();
336
+ }
337
+ ngAfterViewInit() {
338
+ // 等待下一个变更检测周期,确保所有样式和类已应用
339
+ setTimeout(() => {
340
+ this.isComponentReady = true;
341
+ this.cdr.markForCheck();
342
+ }, 0);
343
+ }
175
344
  }
176
- CustomDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomDateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
177
- CustomDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomDateComponent, selector: "app-rd-date", inputs: { disabled: "disabled", disabledDate: "disabledDate", label: "label" }, providers: [
345
+ CustomDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomDateComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
346
+ CustomDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomDateComponent, selector: "app-rd-date", inputs: { disabled: "disabled", disabledDate: "disabledDate", label: "label", type: "type", required: "required", name: "name", placeholder: "placeholder", theme: "theme", errorMessages: "errorMessages" }, host: { properties: { "class.theme-light": "this.hostThemeLight", "class.theme-dark": "this.hostThemeDark" } }, providers: [
178
347
  {
179
348
  provide: NG_VALUE_ACCESSOR,
180
349
  useExisting: forwardRef(() => CustomDateComponent),
181
350
  multi: true,
182
351
  },
183
- ], viewQueries: [{ propertyName: "datePicker", first: true, predicate: ["datePicker"], descendants: true }], ngImport: i0, template: "<div\n class=\"rd-form-item\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': showError,\n 'rd-form-item-date-focus':\n (isPickerOpen || (inputValue && inputValue.length)) && !disabled\n }\"\n (click)=\"openPicker()\"\n>\n <nz-range-picker\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onDateChange($event)\"\n (nzOnOpenChange)=\"onOpenChange($event)\"\n [nzFormat]=\"'yyyy-MM-dd'\"\n [nzShowTime]=\"false\"\n [nzAllowClear]=\"false\"\n [nzPlaceHolder]=\"['From', 'To']\"\n class=\"rd-form-item-date\"\n [nzDisabledDate]=\"disabledDate\"\n [nzDropdownClassName]=\"'rd-form-item-date-popup'\"\n [nzSeparator]=\"'-'\"\n [nzDisabled]=\"disabled\"\n nzSuffixIcon=\"\"\n #datePicker\n nzBorderless\n nzPlacement=\"bottomRight\"\n [nzInputReadOnly]=\"true\"\n [ngClass]=\"{ 'rd-form-item-date-hide': !inputValue?.length }\"\n ></nz-range-picker>\n\n <div class=\"rd-form-item-label\">{{ label }}</div>\n\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n class=\"rd-form-item-date-suffix-icon\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</div>\n<div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n</div>\n", styles: ["@charset \"UTF-8\";.rd-form-item.rd-form-item-date-focus{cursor:text}.rd-form-item.rd-form-item-date-focus .rd-form-item-label{top:16px;font-size:12px}.rd-form-item .rd-form-item-date{width:auto;padding:24px 16px 0}.rd-form-item .rd-form-item-date-hide{position:absolute;top:0;left:0;width:234px;height:100%;opacity:0}.rd-form-item .rd-form-item-label{cursor:text;pointer-events:none}.rd-form-item .rd-form-item-date-suffix-icon{position:absolute;top:50%;right:16px;transform:translateY(-50%)}::ng-deep .rd-form-item-date .ant-picker-suffix svg{transition:transform .2s ease;cursor:pointer;pointer-events:initial}::ng-deep .rd-form-item-date.ant-picker:hover,::ng-deep .rd-form-item-date.ant-picker-focused{box-shadow:none;border-color:var(--rd-input-fg-hover)}::ng-deep .rd-form-item-date .ant-picker-active-bar{display:none}::ng-deep .rd-form-item-date .ant-picker-input input{field-sizing:content;font-weight:500}::ng-deep .rd-form-item-date .ant-picker-separator{width:-moz-fit-content;width:fit-content}::ng-deep .rd-date-picker-focus .ant-picker-suffix svg{pointer-events:none;transform:rotate(-180deg)}::ng-deep .rd-form-item-date-popup.ant-picker-dropdown-range{padding:0}::ng-deep .rd-form-item-date-popup .ant-picker-range-arrow{display:none}::ng-deep .rd-form-item-date-popup .ant-picker-super-next-icon,::ng-deep .rd-form-item-date-popup .ant-picker-header-next-btn,::ng-deep .rd-form-item-date-popup .ant-picker-super-prev-icon,::ng-deep .rd-form-item-date-popup .ant-picker-header-prev-btn{color:var(--rd-copy-primary)}::ng-deep .rd-form-item-date-popup .ant-picker-super-prev-icon:after,::ng-deep .rd-form-item-date-popup .ant-picker-super-next-icon:after{top:2px;left:2px}::ng-deep .rd-form-item-date-popup .ant-picker-header-view button{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container{border-radius:4px}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header{border-bottom:none}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header-view{display:flex;flex-direction:row-reverse;justify-content:center;gap:8px}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-month-btn{order:2}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-year-btn{order:1}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-panel+.ant-picker-panel .ant-picker-body{border-left:1px solid var(--rd-grey-200)}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell{color:var(--rd-copy-disable);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell-in-view{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-body th{color:var(--rd-copy-secondary);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-in-range:before{background-color:var(--rd-blue-100)}::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner{border-radius:4px!important;background-color:var(--rd-control-input-selected)}::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner:before{border-radius:4px!important}\n", ".rd-form-item{position:relative;border-radius:16px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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"] }, { kind: "component", type: i3$1.NzDatePickerComponent, selector: "nz-date-picker,nz-week-picker,nz-month-picker,nz-year-picker,nz-range-picker", inputs: ["nzAllowClear", "nzAutoFocus", "nzDisabled", "nzBorderless", "nzInputReadOnly", "nzInline", "nzOpen", "nzDisabledDate", "nzLocale", "nzPlaceHolder", "nzPopupStyle", "nzDropdownClassName", "nzSize", "nzStatus", "nzFormat", "nzDateRender", "nzDisabledTime", "nzRenderExtraFooter", "nzShowToday", "nzMode", "nzShowNow", "nzRanges", "nzDefaultPickerValue", "nzSeparator", "nzSuffixIcon", "nzBackdrop", "nzId", "nzPlacement", "nzShowWeekNumber", "nzShowTime"], outputs: ["nzOnPanelChange", "nzOnCalendarChange", "nzOnOk", "nzOnOpenChange"], exportAs: ["nzDatePicker"] }, { kind: "directive", type: i3$1.NzRangePickerComponent, selector: "nz-range-picker", exportAs: ["nzRangePicker"] }] });
352
+ ], viewQueries: [{ propertyName: "datePicker", first: true, predicate: ["datePicker"], descendants: true }], ngImport: i0, template: "<div [class.rd-date-ready]=\"isComponentReady\" class=\"rd-date-container\">\n <app-rd-form-item\n [disabled]=\"disabled\"\n [focus]=\"isFocus || isPickerOpen\"\n [type]=\"'date'\"\n [label]=\"label\"\n [value]=\"displayValue\"\n [errorMessage]=\"showError ? currentErrorMessage : ''\"\n [theme]=\"theme\"\n (click)=\"openPicker()\"\n >\n <nz-range-picker\n *ngIf=\"type === 'range'\"\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onDateChange($event)\"\n (nzOnOpenChange)=\"onOpenChange($event)\"\n [nzFormat]=\"'dd/MM/yyyy'\"\n [nzShowTime]=\"false\"\n [nzAllowClear]=\"false\"\n [nzPlaceHolder]=\"['From', 'To']\"\n class=\"rd-form-item-date\"\n [nzDisabledDate]=\"disabledDate\"\n [nzDropdownClassName]=\"popupClassName\"\n [nzSeparator]=\"'-'\"\n [nzDisabled]=\"disabled\"\n nzSuffixIcon=\"\"\n #datePicker\n nzBorderless\n nzPlacement=\"bottomRight\"\n [nzInputReadOnly]=\"true\"\n [name]=\"name\"\n (nzFocus)=\"onFocus()\"\n (nzBlur)=\"onBlur()\"\n [ngClass]=\"{\n 'rd-form-item-date-hide': !inputValue?.length,\n }\"\n ></nz-range-picker>\n <nz-date-picker\n *ngIf=\"type === 'date'\"\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onDateChange($event)\"\n (nzOnOpenChange)=\"onOpenChange($event)\"\n [nzFormat]=\"'dd/MM/yyyy'\"\n [nzShowTime]=\"false\"\n [nzAllowClear]=\"false\"\n [nzShowToday]=\"false\"\n class=\"rd-form-item-date\"\n [nzDisabledDate]=\"disabledDate || disabledEndDate\"\n [nzDropdownClassName]=\"popupClassName + ' custom-dark-datepicker'\"\n [nzDisabled]=\"disabled\"\n nzSuffixIcon=\"\"\n #datePicker\n nzBorderless\n [nzInputReadOnly]=\"true\"\n [name]=\"name\"\n (nzFocus)=\"onFocus()\"\n (nzBlur)=\"onBlur()\"\n [ngClass]=\"{\n 'rd-form-item-date-hide': !inputValue,\n }\"\n ></nz-date-picker>\n </app-rd-form-item>\n</div>\n", styles: [":host .rd-date-container{visibility:hidden}:host .rd-date-container.rd-date-ready{visibility:visible}:host .rd-form-item-date{width:auto;padding:28px 16px 0}:host .rd-form-item-date-hide{position:absolute;top:0;left:0;width:234px;height:100%;opacity:0}:host .rd-form-item-label{cursor:text;pointer-events:none}:host .rd-form-item-date-suffix-icon{position:absolute;top:50%;right:16px;transform:translateY(-50%)}::ng-deep .custom-dark-datepicker .ant-picker-panel{border:1px solid var(--rd-input-fg-default);background-color:var(--rd-bg-panel)}::ng-deep .custom-dark-datepicker .ant-picker-cell-in-view .ant-picker-cell-inner{color:var(--rd-copy-primary)!important}::ng-deep .custom-dark-datepicker .ant-picker-cell-in-view:hover:not(.ant-picker-cell-selected):not(.ant-picker-cell-disabled) .ant-picker-cell-inner{background:rgba(83,149,255,.1);border-color:var(--rd-blue-dark-400);color:var(--rd-copy-primary)!important}::ng-deep .custom-dark-datepicker .ant-picker-cell:not(.ant-picker-cell-in-view) .ant-picker-cell-inner{color:var(--rd-copy-disable)!important}::ng-deep .custom-dark-datepicker .ant-picker-header-view button{color:var(--rd-copy-primary)!important}::ng-deep .custom-dark-datepicker .ant-picker-header-next-btn{color:var(--rd-copy-primary)!important}::ng-deep .custom-dark-datepicker .ant-picker-prev-icon:before,::ng-deep .custom-dark-datepicker .ant-picker-next-icon:before,::ng-deep .custom-dark-datepicker .ant-picker-super-prev-icon:before,::ng-deep .custom-dark-datepicker .ant-picker-super-next-icon:before,::ng-deep .custom-dark-datepicker .ant-picker-super-prev-icon:after,::ng-deep .custom-dark-datepicker .ant-picker-super-next-icon:after{border:0 solid var(--rd-copy-primary);border-width:1.5px 0 0 1.5px}::ng-deep .custom-dark-datepicker .ant-picker-input input{color:var(--rd-copy-primary)}::ng-deep .custom-dark-datepicker .ant-picker-cell:hover:not(.ant-picker-cell-selected):not(.ant-picker-cell-range-start):not(.ant-picker-cell-hover-start):not(.ant-picker-cell-range-hover-end):not(.ant-picker-cell-range-hover-end) .ant-picker-cell-inner{border:1px solid var(--rd-blue-dark-400);background:transparent}::ng-deep .custom-dark-datepicker .ant-picker-suffix{color:var(--rd-copy-primary)}::ng-deep .custom-dark-datepicker .ant-picker-cell-disabled .ant-picker-cell-inner{color:var(--rd-copy-disable)!important}::ng-deep .custom-dark-datepicker .ant-picker-cell-disabled:before{background-color:var(--rd-input-bg-disable)}::ng-deep .rd-form-item-date .ant-picker-suffix svg{transition:transform .2s ease;cursor:pointer;pointer-events:initial}::ng-deep .rd-form-item-date.ant-picker:hover,::ng-deep .rd-form-item-date.ant-picker-focused{box-shadow:none;border-color:var(--rd-input-fg-hover)}::ng-deep .rd-form-item-date .ant-picker-active-bar{display:none}::ng-deep .rd-form-item-date .ant-picker-input input{field-sizing:content;font-weight:500;color:var(--rd-copy-primary)}::ng-deep .rd-form-item-date .ant-picker-separator{width:-moz-fit-content;width:fit-content;color:var(--rd-copy-primary)}::ng-deep .rd-date-picker-focus .ant-picker-suffix svg{pointer-events:none;transform:rotate(-180deg)}::ng-deep .rd-form-item-date-popup.ant-picker-dropdown-range{padding:0}::ng-deep .rd-form-item-date-popup .ant-picker-range-arrow{display:none}::ng-deep .rd-form-item-date-popup .ant-picker-super-next-icon,::ng-deep .rd-form-item-date-popup .ant-picker-header-next-btn,::ng-deep .rd-form-item-date-popup .ant-picker-super-prev-icon,::ng-deep .rd-form-item-date-popup .ant-picker-header-prev-btn{color:var(--rd-copy-primary)}::ng-deep .rd-form-item-date-popup .ant-picker-super-prev-icon:after,::ng-deep .rd-form-item-date-popup .ant-picker-super-next-icon:after{top:2px;left:2px}::ng-deep .rd-form-item-date-popup .ant-picker-header-view button{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container{border-radius:4px}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header{border-bottom:none}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header-view{display:flex;flex-direction:row-reverse;justify-content:center;gap:8px}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-month-btn{order:2}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-year-btn{order:1}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-panel+.ant-picker-panel .ant-picker-body{border-left:1px solid var(--rd-grey-200)}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell{color:var(--rd-copy-disable);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell-in-view{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-body th{color:var(--rd-copy-secondary);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-in-range:before{background-color:var(--rd-blue-100)}::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner{border-radius:4px!important;background-color:var(--rd-control-input-selected)}::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner:before{border-radius:4px!important}\n", ".rd-form-item{position:relative;border-radius:12px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:16px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.NzDatePickerComponent, selector: "nz-date-picker,nz-week-picker,nz-month-picker,nz-year-picker,nz-range-picker", inputs: ["nzAllowClear", "nzAutoFocus", "nzDisabled", "nzBorderless", "nzInputReadOnly", "nzInline", "nzOpen", "nzDisabledDate", "nzLocale", "nzPlaceHolder", "nzPopupStyle", "nzDropdownClassName", "nzSize", "nzStatus", "nzFormat", "nzDateRender", "nzDisabledTime", "nzRenderExtraFooter", "nzShowToday", "nzMode", "nzShowNow", "nzRanges", "nzDefaultPickerValue", "nzSeparator", "nzSuffixIcon", "nzBackdrop", "nzId", "nzPlacement", "nzShowWeekNumber", "nzShowTime"], outputs: ["nzOnPanelChange", "nzOnCalendarChange", "nzOnOk", "nzOnOpenChange"], exportAs: ["nzDatePicker"] }, { kind: "directive", type: i4.NzRangePickerComponent, selector: "nz-range-picker", exportAs: ["nzRangePicker"] }, { kind: "component", type: FormItemComponent, selector: "app-rd-form-item", inputs: ["errorMessage", "disabled", "label", "type", "focus", "value", "size", "theme"] }] });
184
353
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomDateComponent, decorators: [{
185
354
  type: Component,
186
355
  args: [{ selector: 'app-rd-date', providers: [
@@ -189,28 +358,74 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
189
358
  useExisting: forwardRef(() => CustomDateComponent),
190
359
  multi: true,
191
360
  },
192
- ], template: "<div\n class=\"rd-form-item\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': showError,\n 'rd-form-item-date-focus':\n (isPickerOpen || (inputValue && inputValue.length)) && !disabled\n }\"\n (click)=\"openPicker()\"\n>\n <nz-range-picker\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onDateChange($event)\"\n (nzOnOpenChange)=\"onOpenChange($event)\"\n [nzFormat]=\"'yyyy-MM-dd'\"\n [nzShowTime]=\"false\"\n [nzAllowClear]=\"false\"\n [nzPlaceHolder]=\"['From', 'To']\"\n class=\"rd-form-item-date\"\n [nzDisabledDate]=\"disabledDate\"\n [nzDropdownClassName]=\"'rd-form-item-date-popup'\"\n [nzSeparator]=\"'-'\"\n [nzDisabled]=\"disabled\"\n nzSuffixIcon=\"\"\n #datePicker\n nzBorderless\n nzPlacement=\"bottomRight\"\n [nzInputReadOnly]=\"true\"\n [ngClass]=\"{ 'rd-form-item-date-hide': !inputValue?.length }\"\n ></nz-range-picker>\n\n <div class=\"rd-form-item-label\">{{ label }}</div>\n\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n class=\"rd-form-item-date-suffix-icon\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</div>\n<div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n</div>\n", styles: ["@charset \"UTF-8\";.rd-form-item.rd-form-item-date-focus{cursor:text}.rd-form-item.rd-form-item-date-focus .rd-form-item-label{top:16px;font-size:12px}.rd-form-item .rd-form-item-date{width:auto;padding:24px 16px 0}.rd-form-item .rd-form-item-date-hide{position:absolute;top:0;left:0;width:234px;height:100%;opacity:0}.rd-form-item .rd-form-item-label{cursor:text;pointer-events:none}.rd-form-item .rd-form-item-date-suffix-icon{position:absolute;top:50%;right:16px;transform:translateY(-50%)}::ng-deep .rd-form-item-date .ant-picker-suffix svg{transition:transform .2s ease;cursor:pointer;pointer-events:initial}::ng-deep .rd-form-item-date.ant-picker:hover,::ng-deep .rd-form-item-date.ant-picker-focused{box-shadow:none;border-color:var(--rd-input-fg-hover)}::ng-deep .rd-form-item-date .ant-picker-active-bar{display:none}::ng-deep .rd-form-item-date .ant-picker-input input{field-sizing:content;font-weight:500}::ng-deep .rd-form-item-date .ant-picker-separator{width:-moz-fit-content;width:fit-content}::ng-deep .rd-date-picker-focus .ant-picker-suffix svg{pointer-events:none;transform:rotate(-180deg)}::ng-deep .rd-form-item-date-popup.ant-picker-dropdown-range{padding:0}::ng-deep .rd-form-item-date-popup .ant-picker-range-arrow{display:none}::ng-deep .rd-form-item-date-popup .ant-picker-super-next-icon,::ng-deep .rd-form-item-date-popup .ant-picker-header-next-btn,::ng-deep .rd-form-item-date-popup .ant-picker-super-prev-icon,::ng-deep .rd-form-item-date-popup .ant-picker-header-prev-btn{color:var(--rd-copy-primary)}::ng-deep .rd-form-item-date-popup .ant-picker-super-prev-icon:after,::ng-deep .rd-form-item-date-popup .ant-picker-super-next-icon:after{top:2px;left:2px}::ng-deep .rd-form-item-date-popup .ant-picker-header-view button{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container{border-radius:4px}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header{border-bottom:none}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header-view{display:flex;flex-direction:row-reverse;justify-content:center;gap:8px}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-month-btn{order:2}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-year-btn{order:1}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-panel+.ant-picker-panel .ant-picker-body{border-left:1px solid var(--rd-grey-200)}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell{color:var(--rd-copy-disable);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell-in-view{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-body th{color:var(--rd-copy-secondary);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-in-range:before{background-color:var(--rd-blue-100)}::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner{border-radius:4px!important;background-color:var(--rd-control-input-selected)}::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner:before{border-radius:4px!important}\n", ".rd-form-item{position:relative;border-radius:16px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"] }]
193
- }], propDecorators: { disabled: [{
361
+ ], template: "<div [class.rd-date-ready]=\"isComponentReady\" class=\"rd-date-container\">\n <app-rd-form-item\n [disabled]=\"disabled\"\n [focus]=\"isFocus || isPickerOpen\"\n [type]=\"'date'\"\n [label]=\"label\"\n [value]=\"displayValue\"\n [errorMessage]=\"showError ? currentErrorMessage : ''\"\n [theme]=\"theme\"\n (click)=\"openPicker()\"\n >\n <nz-range-picker\n *ngIf=\"type === 'range'\"\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onDateChange($event)\"\n (nzOnOpenChange)=\"onOpenChange($event)\"\n [nzFormat]=\"'dd/MM/yyyy'\"\n [nzShowTime]=\"false\"\n [nzAllowClear]=\"false\"\n [nzPlaceHolder]=\"['From', 'To']\"\n class=\"rd-form-item-date\"\n [nzDisabledDate]=\"disabledDate\"\n [nzDropdownClassName]=\"popupClassName\"\n [nzSeparator]=\"'-'\"\n [nzDisabled]=\"disabled\"\n nzSuffixIcon=\"\"\n #datePicker\n nzBorderless\n nzPlacement=\"bottomRight\"\n [nzInputReadOnly]=\"true\"\n [name]=\"name\"\n (nzFocus)=\"onFocus()\"\n (nzBlur)=\"onBlur()\"\n [ngClass]=\"{\n 'rd-form-item-date-hide': !inputValue?.length,\n }\"\n ></nz-range-picker>\n <nz-date-picker\n *ngIf=\"type === 'date'\"\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onDateChange($event)\"\n (nzOnOpenChange)=\"onOpenChange($event)\"\n [nzFormat]=\"'dd/MM/yyyy'\"\n [nzShowTime]=\"false\"\n [nzAllowClear]=\"false\"\n [nzShowToday]=\"false\"\n class=\"rd-form-item-date\"\n [nzDisabledDate]=\"disabledDate || disabledEndDate\"\n [nzDropdownClassName]=\"popupClassName + ' custom-dark-datepicker'\"\n [nzDisabled]=\"disabled\"\n nzSuffixIcon=\"\"\n #datePicker\n nzBorderless\n [nzInputReadOnly]=\"true\"\n [name]=\"name\"\n (nzFocus)=\"onFocus()\"\n (nzBlur)=\"onBlur()\"\n [ngClass]=\"{\n 'rd-form-item-date-hide': !inputValue,\n }\"\n ></nz-date-picker>\n </app-rd-form-item>\n</div>\n", styles: [":host .rd-date-container{visibility:hidden}:host .rd-date-container.rd-date-ready{visibility:visible}:host .rd-form-item-date{width:auto;padding:28px 16px 0}:host .rd-form-item-date-hide{position:absolute;top:0;left:0;width:234px;height:100%;opacity:0}:host .rd-form-item-label{cursor:text;pointer-events:none}:host .rd-form-item-date-suffix-icon{position:absolute;top:50%;right:16px;transform:translateY(-50%)}::ng-deep .custom-dark-datepicker .ant-picker-panel{border:1px solid var(--rd-input-fg-default);background-color:var(--rd-bg-panel)}::ng-deep .custom-dark-datepicker .ant-picker-cell-in-view .ant-picker-cell-inner{color:var(--rd-copy-primary)!important}::ng-deep .custom-dark-datepicker .ant-picker-cell-in-view:hover:not(.ant-picker-cell-selected):not(.ant-picker-cell-disabled) .ant-picker-cell-inner{background:rgba(83,149,255,.1);border-color:var(--rd-blue-dark-400);color:var(--rd-copy-primary)!important}::ng-deep .custom-dark-datepicker .ant-picker-cell:not(.ant-picker-cell-in-view) .ant-picker-cell-inner{color:var(--rd-copy-disable)!important}::ng-deep .custom-dark-datepicker .ant-picker-header-view button{color:var(--rd-copy-primary)!important}::ng-deep .custom-dark-datepicker .ant-picker-header-next-btn{color:var(--rd-copy-primary)!important}::ng-deep .custom-dark-datepicker .ant-picker-prev-icon:before,::ng-deep .custom-dark-datepicker .ant-picker-next-icon:before,::ng-deep .custom-dark-datepicker .ant-picker-super-prev-icon:before,::ng-deep .custom-dark-datepicker .ant-picker-super-next-icon:before,::ng-deep .custom-dark-datepicker .ant-picker-super-prev-icon:after,::ng-deep .custom-dark-datepicker .ant-picker-super-next-icon:after{border:0 solid var(--rd-copy-primary);border-width:1.5px 0 0 1.5px}::ng-deep .custom-dark-datepicker .ant-picker-input input{color:var(--rd-copy-primary)}::ng-deep .custom-dark-datepicker .ant-picker-cell:hover:not(.ant-picker-cell-selected):not(.ant-picker-cell-range-start):not(.ant-picker-cell-hover-start):not(.ant-picker-cell-range-hover-end):not(.ant-picker-cell-range-hover-end) .ant-picker-cell-inner{border:1px solid var(--rd-blue-dark-400);background:transparent}::ng-deep .custom-dark-datepicker .ant-picker-suffix{color:var(--rd-copy-primary)}::ng-deep .custom-dark-datepicker .ant-picker-cell-disabled .ant-picker-cell-inner{color:var(--rd-copy-disable)!important}::ng-deep .custom-dark-datepicker .ant-picker-cell-disabled:before{background-color:var(--rd-input-bg-disable)}::ng-deep .rd-form-item-date .ant-picker-suffix svg{transition:transform .2s ease;cursor:pointer;pointer-events:initial}::ng-deep .rd-form-item-date.ant-picker:hover,::ng-deep .rd-form-item-date.ant-picker-focused{box-shadow:none;border-color:var(--rd-input-fg-hover)}::ng-deep .rd-form-item-date .ant-picker-active-bar{display:none}::ng-deep .rd-form-item-date .ant-picker-input input{field-sizing:content;font-weight:500;color:var(--rd-copy-primary)}::ng-deep .rd-form-item-date .ant-picker-separator{width:-moz-fit-content;width:fit-content;color:var(--rd-copy-primary)}::ng-deep .rd-date-picker-focus .ant-picker-suffix svg{pointer-events:none;transform:rotate(-180deg)}::ng-deep .rd-form-item-date-popup.ant-picker-dropdown-range{padding:0}::ng-deep .rd-form-item-date-popup .ant-picker-range-arrow{display:none}::ng-deep .rd-form-item-date-popup .ant-picker-super-next-icon,::ng-deep .rd-form-item-date-popup .ant-picker-header-next-btn,::ng-deep .rd-form-item-date-popup .ant-picker-super-prev-icon,::ng-deep .rd-form-item-date-popup .ant-picker-header-prev-btn{color:var(--rd-copy-primary)}::ng-deep .rd-form-item-date-popup .ant-picker-super-prev-icon:after,::ng-deep .rd-form-item-date-popup .ant-picker-super-next-icon:after{top:2px;left:2px}::ng-deep .rd-form-item-date-popup .ant-picker-header-view button{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container{border-radius:4px}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header{border-bottom:none}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header-view{display:flex;flex-direction:row-reverse;justify-content:center;gap:8px}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-month-btn{order:2}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-year-btn{order:1}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-panel+.ant-picker-panel .ant-picker-body{border-left:1px solid var(--rd-grey-200)}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell{color:var(--rd-copy-disable);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell-in-view{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-panel-container .ant-picker-body th{color:var(--rd-copy-secondary);font-weight:500}::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-in-range:before{background-color:var(--rd-blue-100)}::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner{border-radius:4px!important;background-color:var(--rd-control-input-selected)}::ng-deep .rd-form-item-date-popup .ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner:before{border-radius:4px!important}\n", ".rd-form-item{position:relative;border-radius:12px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:16px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"] }]
362
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1$1.TranslateService }]; }, propDecorators: { disabled: [{
194
363
  type: Input
195
364
  }], disabledDate: [{
196
365
  type: Input
197
366
  }], label: [{
198
367
  type: Input
368
+ }], type: [{
369
+ type: Input
370
+ }], required: [{
371
+ type: Input
372
+ }], name: [{
373
+ type: Input
374
+ }], placeholder: [{
375
+ type: Input
376
+ }], theme: [{
377
+ type: Input
378
+ }], errorMessages: [{
379
+ type: Input
199
380
  }], datePicker: [{
200
381
  type: ViewChild,
201
382
  args: ['datePicker']
383
+ }], hostThemeLight: [{
384
+ type: HostBinding,
385
+ args: ['class.theme-light']
386
+ }], hostThemeDark: [{
387
+ type: HostBinding,
388
+ args: ['class.theme-dark']
202
389
  }] } });
203
390
 
391
+ class FormItemModule {
392
+ }
393
+ FormItemModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormItemModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
394
+ FormItemModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: FormItemModule, declarations: [FormItemComponent], imports: [CommonModule], exports: [FormItemComponent] });
395
+ FormItemModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormItemModule, imports: [CommonModule] });
396
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormItemModule, decorators: [{
397
+ type: NgModule,
398
+ args: [{
399
+ declarations: [FormItemComponent],
400
+ exports: [FormItemComponent],
401
+ imports: [CommonModule],
402
+ }]
403
+ }] });
404
+
204
405
  class RdDateModule {
205
406
  }
206
407
  RdDateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
207
- RdDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: RdDateModule, declarations: [CustomDateComponent], imports: [CommonModule, FormsModule, ReactiveFormsModule, NzDatePickerModule], exports: [CustomDateComponent] });
208
- RdDateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdDateModule, imports: [CommonModule, FormsModule, ReactiveFormsModule, NzDatePickerModule] });
408
+ RdDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: RdDateModule, declarations: [CustomDateComponent], imports: [CommonModule,
409
+ FormsModule,
410
+ ReactiveFormsModule,
411
+ NzDatePickerModule,
412
+ FormItemModule], exports: [CustomDateComponent] });
413
+ RdDateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdDateModule, imports: [CommonModule,
414
+ FormsModule,
415
+ ReactiveFormsModule,
416
+ NzDatePickerModule,
417
+ FormItemModule] });
209
418
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdDateModule, decorators: [{
210
419
  type: NgModule,
211
420
  args: [{
212
421
  declarations: [CustomDateComponent],
213
- imports: [CommonModule, FormsModule, ReactiveFormsModule, NzDatePickerModule],
422
+ imports: [
423
+ CommonModule,
424
+ FormsModule,
425
+ ReactiveFormsModule,
426
+ NzDatePickerModule,
427
+ FormItemModule,
428
+ ],
214
429
  exports: [CustomDateComponent],
215
430
  }]
216
431
  }] });
@@ -256,36 +471,13 @@ function numberToBig(value, precision = 6, mode = 'cut') {
256
471
  return fixedValue.replace(/\.?0+$/, '');
257
472
  }
258
473
 
259
- const translations = {
260
- en: {
261
- pleaseEnter: 'Please enter ',
262
- lengthCannotBeLess: ' Length cannot be less than the minimum length ',
263
- lengthCannotExceed: ' Length cannot exceed the maximum length ',
264
- validationFailed: 'Validation failed',
265
- cannotBeLessThan: ' cannot be less than the minimum value ',
266
- cannotExceed: ' cannot exceed the maximum value ',
267
- maxDecimalPlaces: 'The maximum number of decimal places is ',
268
- clearFilter: 'Clear filter',
269
- email_invalid: 'The email format is not correct.',
270
- },
271
- zh: {
272
- pleaseEnter: '請輸入',
273
- lengthCannotBeLess: '長度不得少於最小長度',
274
- lengthCannotExceed: '長度不得超過最大長度',
275
- validationFailed: '驗證失敗',
276
- cannotBeLessThan: '不得小於最小值',
277
- cannotExceed: '不得超過最大值',
278
- maxDecimalPlaces: '最大小數位數為',
279
- clearFilter: '清除篩選',
280
- email_invalid: '電子郵件格式不正確。',
281
- },
282
- };
283
- function getTranslation(lang, key) {
284
- var _a;
285
- return ((_a = translations[lang]) === null || _a === void 0 ? void 0 : _a[key]) || translations.en[key];
286
- }
287
-
288
474
  class CustomInputComponent {
475
+ get hostThemeLight() {
476
+ return this.theme === 'light';
477
+ }
478
+ get hostThemeDark() {
479
+ return this.theme === 'dark';
480
+ }
289
481
  get currentErrorMessage() {
290
482
  var _a, _b, _c;
291
483
  if (!((_a = this.control) === null || _a === void 0 ? void 0 : _a.errors))
@@ -295,39 +487,44 @@ class CustomInputComponent {
295
487
  switch (firstError) {
296
488
  case 'required':
297
489
  return (msg ||
298
- `${getTranslation(this.lang, 'pleaseEnter')}${this.label.toLowerCase()}`);
490
+ `${this.translate.instant('please_enter')}${this.label.toLowerCase()}`);
299
491
  case 'min':
300
492
  return (msg ||
301
- `${this.label}${getTranslation(this.lang, 'cannotBeLessThan')}${formatBigNumber(this.min)}`);
493
+ `${this.label}${this.translate.instant('min_value_error')}${formatBigNumber(this.min)}`);
302
494
  case 'max':
303
495
  return (msg ||
304
- `${this.label} ${getTranslation(this.lang, 'cannotExceed')}${formatBigNumber(this.max)}`);
496
+ `${this.label}${this.translate.instant('max_value_error')}${formatBigNumber(this.max)}`);
305
497
  case 'precision':
306
498
  return (msg ||
307
- `${getTranslation(this.lang, 'maxDecimalPlaces')}${this.maskNumber}`);
499
+ `${this.translate.instant('max_decimal_places')}${this.maskNumber}`);
308
500
  case 'minLength':
309
501
  return (msg ||
310
- `${getTranslation(this.lang, 'lengthCannotBeLess')}${this.minLength}`);
502
+ `${this.translate.instant('length_cannot_be_less')}${this.minLength}`);
311
503
  case 'maxLength':
312
504
  return (msg ||
313
- `${getTranslation(this.lang, 'lengthCannotExceed')}${this.maxLength}`);
505
+ `${this.translate.instant('length_cannot_exceed')}${this.maxLength}`);
314
506
  case 'email':
315
- return msg || `${getTranslation(this.lang, 'email_invalid')}`;
507
+ return msg || `${this.translate.instant('email_invalid')}`;
316
508
  case 'custom':
317
509
  return (((_c = this.control) === null || _c === void 0 ? void 0 : _c.errors['custom']) ||
318
- getTranslation(this.lang, 'validationFailed'));
510
+ this.translate.instant('validation_failed'));
319
511
  default:
320
- return (this.errorMessages[firstError] ||
321
- getTranslation(this.lang, 'validationFailed'));
512
+ return (this.translate.instant(this.errorMessages[firstError]) ||
513
+ this.translate.instant('validation_failed'));
322
514
  }
323
515
  }
324
516
  get showError() {
325
517
  var _a, _b, _c;
326
518
  return (!!((_a = this.control) === null || _a === void 0 ? void 0 : _a.invalid) && (((_b = this.control) === null || _b === void 0 ? void 0 : _b.touched) || ((_c = this.control) === null || _c === void 0 ? void 0 : _c.dirty)));
327
519
  }
328
- constructor(cdr) {
520
+ get resolvedPlaceholder() {
521
+ if (!this.label)
522
+ return this.placeholder || '';
523
+ return this.isFocused ? this.placeholder || ' ' : ' ';
524
+ }
525
+ constructor(cdr, translate) {
329
526
  this.cdr = cdr;
330
- this.lang = 'en';
527
+ this.translate = translate;
331
528
  this.label = '';
332
529
  this.symbol = '';
333
530
  this.name = '';
@@ -335,7 +532,9 @@ class CustomInputComponent {
335
532
  this.maskNumber = 6;
336
533
  this.maskType = 'text';
337
534
  this.type = 'text';
535
+ this.allowNegativeNumbers = true;
338
536
  this.required = false;
537
+ this.size = 'default';
339
538
  this.errorMessages = {
340
539
  pattern: 'Invalid format',
341
540
  custom: 'Validation failed',
@@ -385,7 +584,11 @@ class CustomInputComponent {
385
584
  this.focus.emit();
386
585
  }
387
586
  handleValueChange(value) {
388
- const cleanedValue = this.maskType === 'amount' ? value.replace(/,/g, '') : value.trim();
587
+ const cleanedValue = this.maskType === 'amount'
588
+ ? value.replace(/,/g, '')
589
+ : typeof value === 'string'
590
+ ? value.trim()
591
+ : value;
389
592
  this.value = cleanedValue;
390
593
  this.onChange(cleanedValue);
391
594
  this.valueChange.emit(cleanedValue);
@@ -400,12 +603,14 @@ class CustomInputComponent {
400
603
  if (this.maskType === 'amount') {
401
604
  value = (_a = control === null || control === void 0 ? void 0 : control.value) === null || _a === void 0 ? void 0 : _a.replace(/,/g, '');
402
605
  try {
403
- const bigValue = new Big(value);
404
- if (this.min && !Number.isNaN(this.min) && bigValue.lt(this.min)) {
405
- errors['min'] = { min: this.min, actual: value };
406
- }
407
- if (this.max && !Number.isNaN(this.max) && bigValue.gt(this.max)) {
408
- errors['max'] = { max: this.max, actual: value };
606
+ if (value) {
607
+ const bigValue = new Big(value);
608
+ if (this.min && !Number.isNaN(this.min) && bigValue.lt(this.min)) {
609
+ errors['min'] = { min: this.min, actual: value };
610
+ }
611
+ if (this.max && !Number.isNaN(this.max) && bigValue.gt(this.max)) {
612
+ errors['max'] = { max: this.max, actual: value };
613
+ }
409
614
  }
410
615
  }
411
616
  catch (error) {
@@ -413,7 +618,10 @@ class CustomInputComponent {
413
618
  }
414
619
  }
415
620
  else {
416
- value = (_b = control === null || control === void 0 ? void 0 : control.value) === null || _b === void 0 ? void 0 : _b.trim();
621
+ value =
622
+ typeof (control === null || control === void 0 ? void 0 : control.value) === 'string'
623
+ ? (_b = control === null || control === void 0 ? void 0 : control.value) === null || _b === void 0 ? void 0 : _b.trim()
624
+ : control === null || control === void 0 ? void 0 : control.value;
417
625
  }
418
626
  if (this.required && !value) {
419
627
  errors['required'] = true;
@@ -449,8 +657,8 @@ class CustomInputComponent {
449
657
  return Object.keys(errors).length > 0 ? errors : null;
450
658
  }
451
659
  }
452
- CustomInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomInputComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
453
- CustomInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomInputComponent, selector: "app-rd-input", inputs: { lang: "lang", label: "label", symbol: "symbol", name: "name", disabled: "disabled", maskNumber: "maskNumber", maskType: "maskType", type: "type", required: "required", min: "min", max: "max", minLength: "minLength", maxLength: "maxLength", pattern: "pattern", customValidator: "customValidator", errorMessages: "errorMessages" }, outputs: { valueChange: "valueChange", focus: "focus", blur: "blur" }, providers: [
660
+ CustomInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
661
+ CustomInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomInputComponent, selector: "app-rd-input", inputs: { label: "label", symbol: "symbol", name: "name", disabled: "disabled", maskNumber: "maskNumber", maskType: "maskType", type: "type", allowNegativeNumbers: "allowNegativeNumbers", theme: "theme", required: "required", placeholder: "placeholder", min: "min", max: "max", minLength: "minLength", maxLength: "maxLength", pattern: "pattern", customValidator: "customValidator", size: "size", errorMessages: "errorMessages" }, outputs: { valueChange: "valueChange", focus: "focus", blur: "blur" }, host: { properties: { "class.theme-light": "this.hostThemeLight", "class.theme-dark": "this.hostThemeDark" } }, providers: [
454
662
  {
455
663
  provide: NG_VALUE_ACCESSOR,
456
664
  useExisting: forwardRef(() => CustomInputComponent),
@@ -461,7 +669,7 @@ CustomInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", v
461
669
  useExisting: forwardRef(() => CustomInputComponent),
462
670
  multi: true,
463
671
  },
464
- ], ngImport: i0, template: "<div\n [ngClass]=\"{\n 'rd-form-item-rd-input-relative': type === 'select',\n }\"\n>\n <div\n class=\"rd-form-item rd-form-item-p-deal\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': showError,\n 'rd-form-item-input-select': type === 'select',\n }\"\n >\n <input\n nz-input\n nzBorderless\n placeholder=\" \"\n [name]=\"name\"\n [type]=\"type\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n [allowNegativeNumbers]=\"true\"\n [dropSpecialCharacters]=\"false\"\n [mask]=\"\n maskType === 'amount'\n ? 'separator.' + maskNumber\n : maskType === 'number'\n ? '0*'\n : ''\n \"\n [thousandSeparator]=\"maskType === 'amount' ? ',' : ''\"\n class=\"rd-form-item-input\"\n />\n <div class=\"rd-form-item-label\">{{ label }}</div>\n </div>\n <div class=\"rd-form-item-rd-input-absolute\">\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n </div>\n</div>\n", styles: [":host .rd-form-item-p-deal{padding:0!important}:host .rd-form-item-input-select{position:relative;background:var(--rd-input-bg-default)!important}:host .rd-form-item-input-select.rd-disabled .rd-form-item-input{color:var(--rd-copy-secondary)}:host .rd-form-item-rd-input-relative{position:relative}:host .rd-form-item-rd-input-relative .rd-form-item-rd-input-absolute{position:absolute;top:50%;transform:translateY(-50%);right:16px;z-index:1}:host .rd-form-item-rd-input-relative .rd-form-item-input{color:var(--rd-copy-primary)!important}\n", ".rd-form-item{position:relative;border-radius:16px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.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: 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"] }, { kind: "directive", type: i3$2.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "directive", type: i4.NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }] });
672
+ ], ngImport: i0, template: "<div\n [ngClass]=\"{\n 'rd-form-item-rd-input-relative': type === 'select',\n 'rd-form-item-s': size === 'small',\n }\"\n>\n <div\n class=\"rd-form-item rd-form-item-p-deal\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': showError,\n 'rd-focus': isFocused,\n 'rd-has-value': !!value,\n 'rd-form-item-input-select': type === 'select',\n 'rd-form-item-password': type === 'password',\n }\"\n >\n <input\n nz-input\n [placeholder]=\"resolvedPlaceholder\"\n [name]=\"name\"\n aria-autocomplete=\"none\"\n [type]=\"type\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n [allowNegativeNumbers]=\"allowNegativeNumbers\"\n [dropSpecialCharacters]=\"false\"\n [mask]=\"\n maskType === 'amount'\n ? 'separator.' + maskNumber\n : maskType === 'number'\n ? '0*'\n : ''\n \"\n [thousandSeparator]=\"maskType === 'amount' ? ',' : ''\"\n class=\"rd-form-item-input\"\n [ngClass]=\"{\n 'rd-form-item-input-no-label': !label,\n }\"\n />\n <div class=\"rd-form-item-label\" *ngIf=\"label\">{{ label }}</div>\n <ng-container *ngIf=\"symbol\">\n <div class=\"rd-input-symbol\">{{ symbol }}</div>\n </ng-container>\n </div>\n <div class=\"rd-form-item-rd-input-absolute\">\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <svg\n class=\"rd-error-icon-light\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M1.33398 7.9987C1.33398 4.3168 4.31875 1.33203 8.00065 1.33203C11.6825 1.33203 14.6673 4.3168 14.6673 7.9987C14.6673 11.6806 11.6825 14.6654 8.00065 14.6654C4.31875 14.6654 1.33398 11.6806 1.33398 7.9987ZM8.00065 2.33203C4.87104 2.33203 2.33398 4.86908 2.33398 7.9987C2.33398 11.1283 4.87104 13.6654 8.00065 13.6654C11.1303 13.6654 13.6673 11.1283 13.6673 7.9987C13.6673 4.86908 11.1303 2.33203 8.00065 2.33203Z\"\n fill=\"#EA485D\"\n />\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.00039 4.06641C8.33176 4.06641 8.60039 4.33504 8.60039 4.66641V7.99974C8.60039 8.33111 8.33176 8.59974 8.00039 8.59974C7.66902 8.59974 7.40039 8.33111 7.40039 7.99974V4.66641C7.40039 4.33504 7.66902 4.06641 8.00039 4.06641ZM8.00039 10.3997C8.33176 10.3997 8.60039 10.6684 8.60039 10.9997V11.3331C8.60039 11.6644 8.33176 11.9331 8.00039 11.9331C7.66902 11.9331 7.40039 11.6644 7.40039 11.3331V10.9997C7.40039 10.6684 7.66902 10.3997 8.00039 10.3997Z\"\n fill=\"#EA485D\"\n />\n </svg>\n\n <svg\n class=\"rd-error-icon-dark\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M1.33398 7.9987C1.33398 4.3168 4.31875 1.33203 8.00065 1.33203C11.6825 1.33203 14.6673 4.3168 14.6673 7.9987C14.6673 11.6806 11.6825 14.6654 8.00065 14.6654C4.31875 14.6654 1.33398 11.6806 1.33398 7.9987ZM8.00065 2.33203C4.87104 2.33203 2.33398 4.86908 2.33398 7.9987C2.33398 11.1283 4.87104 13.6654 8.00065 13.6654C11.1303 13.6654 13.6673 11.1283 13.6673 7.9987C13.6673 4.86908 11.1303 2.33203 8.00065 2.33203Z\"\n fill=\"#EF7484\"\n />\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.00039 4.06641C8.33176 4.06641 8.60039 4.33504 8.60039 4.66641V7.99974C8.60039 8.33111 8.33176 8.59974 8.00039 8.59974C7.66902 8.59974 7.40039 8.33111 7.40039 7.99974V4.66641C7.40039 4.33504 7.66902 4.06641 8.00039 4.06641ZM8.00039 10.3997C8.33176 10.3997 8.60039 10.6684 8.60039 10.9997V11.3331C8.60039 11.6644 8.33176 11.9331 8.00039 11.9331C7.66902 11.9331 7.40039 11.6644 7.40039 11.3331V10.9997C7.40039 10.6684 7.66902 10.3997 8.00039 10.3997Z\"\n fill=\"#EF7484\"\n />\n </svg>\n\n {{ currentErrorMessage | translate }}\n </div>\n</div>\n", styles: [":host .rd-form-item-p-deal{padding:0!important}:host .rd-form-item-input{background:var(--rd-input-bg-default);border:none;box-shadow:none;color:var(--rd-copy-primary)}:host .rd-disabled .rd-form-item-input{background:var(--rd-input-bg-disable)!important}:host .rd-form-item-input-select{position:relative}:host .rd-form-item-input-select.rd-disabled .rd-form-item-input{color:var(--rd-copy-secondary)}:host .rd-form-item-password .rd-form-item-input[type=password]{font-size:20px;line-height:32px;letter-spacing:3px}:host .rd-form-item-rd-input-relative{position:relative}:host .rd-form-item-rd-input-relative .rd-form-item-rd-input-absolute{position:absolute;top:50%;transform:translateY(-50%);right:16px;z-index:1}:host .rd-form-item-rd-input-relative .rd-form-item-input{background:var(--rd-input-bg-default)!important;color:var(--rd-copy-primary)!important}:host .rd-input-symbol{position:absolute;top:50%;transform:translateY(-50%);right:16px;z-index:1;color:var(--rd-copy-primary);transition:all .3s cubic-bezier(.645,.045,.355,1)}:host .rd-form-item.rd-focus .rd-input-symbol,:host .rd-form-item.rd-has-value .rd-input-symbol{padding-top:14px}:host .rd-form-item-s .rd-form-item{height:44px}:host .rd-form-item-s .rd-form-item .rd-form-item-input{height:100%;padding:12px 16px;border-radius:4px}:host .rd-error-icon-dark{display:none}:host-context(.theme-dark):host(:not(.theme-light)) .rd-error-icon-light,:host(.theme-dark) .rd-error-icon-light{display:none}:host-context(.theme-dark):host(:not(.theme-light)) .rd-error-icon-dark,:host(.theme-dark) .rd-error-icon-dark{display:inline}\n", ".rd-form-item{position:relative;border-radius:12px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:16px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3$1.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "directive", type: i5.NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
465
673
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomInputComponent, decorators: [{
466
674
  type: Component,
467
675
  args: [{ selector: 'app-rd-input', providers: [
@@ -475,10 +683,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
475
683
  useExisting: forwardRef(() => CustomInputComponent),
476
684
  multi: true,
477
685
  },
478
- ], template: "<div\n [ngClass]=\"{\n 'rd-form-item-rd-input-relative': type === 'select',\n }\"\n>\n <div\n class=\"rd-form-item rd-form-item-p-deal\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': showError,\n 'rd-form-item-input-select': type === 'select',\n }\"\n >\n <input\n nz-input\n nzBorderless\n placeholder=\" \"\n [name]=\"name\"\n [type]=\"type\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n [allowNegativeNumbers]=\"true\"\n [dropSpecialCharacters]=\"false\"\n [mask]=\"\n maskType === 'amount'\n ? 'separator.' + maskNumber\n : maskType === 'number'\n ? '0*'\n : ''\n \"\n [thousandSeparator]=\"maskType === 'amount' ? ',' : ''\"\n class=\"rd-form-item-input\"\n />\n <div class=\"rd-form-item-label\">{{ label }}</div>\n </div>\n <div class=\"rd-form-item-rd-input-absolute\">\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n </div>\n</div>\n", styles: [":host .rd-form-item-p-deal{padding:0!important}:host .rd-form-item-input-select{position:relative;background:var(--rd-input-bg-default)!important}:host .rd-form-item-input-select.rd-disabled .rd-form-item-input{color:var(--rd-copy-secondary)}:host .rd-form-item-rd-input-relative{position:relative}:host .rd-form-item-rd-input-relative .rd-form-item-rd-input-absolute{position:absolute;top:50%;transform:translateY(-50%);right:16px;z-index:1}:host .rd-form-item-rd-input-relative .rd-form-item-input{color:var(--rd-copy-primary)!important}\n", ".rd-form-item{position:relative;border-radius:16px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"] }]
479
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { lang: [{
480
- type: Input
481
- }], label: [{
686
+ ], template: "<div\n [ngClass]=\"{\n 'rd-form-item-rd-input-relative': type === 'select',\n 'rd-form-item-s': size === 'small',\n }\"\n>\n <div\n class=\"rd-form-item rd-form-item-p-deal\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': showError,\n 'rd-focus': isFocused,\n 'rd-has-value': !!value,\n 'rd-form-item-input-select': type === 'select',\n 'rd-form-item-password': type === 'password',\n }\"\n >\n <input\n nz-input\n [placeholder]=\"resolvedPlaceholder\"\n [name]=\"name\"\n aria-autocomplete=\"none\"\n [type]=\"type\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n [allowNegativeNumbers]=\"allowNegativeNumbers\"\n [dropSpecialCharacters]=\"false\"\n [mask]=\"\n maskType === 'amount'\n ? 'separator.' + maskNumber\n : maskType === 'number'\n ? '0*'\n : ''\n \"\n [thousandSeparator]=\"maskType === 'amount' ? ',' : ''\"\n class=\"rd-form-item-input\"\n [ngClass]=\"{\n 'rd-form-item-input-no-label': !label,\n }\"\n />\n <div class=\"rd-form-item-label\" *ngIf=\"label\">{{ label }}</div>\n <ng-container *ngIf=\"symbol\">\n <div class=\"rd-input-symbol\">{{ symbol }}</div>\n </ng-container>\n </div>\n <div class=\"rd-form-item-rd-input-absolute\">\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <svg\n class=\"rd-error-icon-light\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M1.33398 7.9987C1.33398 4.3168 4.31875 1.33203 8.00065 1.33203C11.6825 1.33203 14.6673 4.3168 14.6673 7.9987C14.6673 11.6806 11.6825 14.6654 8.00065 14.6654C4.31875 14.6654 1.33398 11.6806 1.33398 7.9987ZM8.00065 2.33203C4.87104 2.33203 2.33398 4.86908 2.33398 7.9987C2.33398 11.1283 4.87104 13.6654 8.00065 13.6654C11.1303 13.6654 13.6673 11.1283 13.6673 7.9987C13.6673 4.86908 11.1303 2.33203 8.00065 2.33203Z\"\n fill=\"#EA485D\"\n />\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.00039 4.06641C8.33176 4.06641 8.60039 4.33504 8.60039 4.66641V7.99974C8.60039 8.33111 8.33176 8.59974 8.00039 8.59974C7.66902 8.59974 7.40039 8.33111 7.40039 7.99974V4.66641C7.40039 4.33504 7.66902 4.06641 8.00039 4.06641ZM8.00039 10.3997C8.33176 10.3997 8.60039 10.6684 8.60039 10.9997V11.3331C8.60039 11.6644 8.33176 11.9331 8.00039 11.9331C7.66902 11.9331 7.40039 11.6644 7.40039 11.3331V10.9997C7.40039 10.6684 7.66902 10.3997 8.00039 10.3997Z\"\n fill=\"#EA485D\"\n />\n </svg>\n\n <svg\n class=\"rd-error-icon-dark\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M1.33398 7.9987C1.33398 4.3168 4.31875 1.33203 8.00065 1.33203C11.6825 1.33203 14.6673 4.3168 14.6673 7.9987C14.6673 11.6806 11.6825 14.6654 8.00065 14.6654C4.31875 14.6654 1.33398 11.6806 1.33398 7.9987ZM8.00065 2.33203C4.87104 2.33203 2.33398 4.86908 2.33398 7.9987C2.33398 11.1283 4.87104 13.6654 8.00065 13.6654C11.1303 13.6654 13.6673 11.1283 13.6673 7.9987C13.6673 4.86908 11.1303 2.33203 8.00065 2.33203Z\"\n fill=\"#EF7484\"\n />\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.00039 4.06641C8.33176 4.06641 8.60039 4.33504 8.60039 4.66641V7.99974C8.60039 8.33111 8.33176 8.59974 8.00039 8.59974C7.66902 8.59974 7.40039 8.33111 7.40039 7.99974V4.66641C7.40039 4.33504 7.66902 4.06641 8.00039 4.06641ZM8.00039 10.3997C8.33176 10.3997 8.60039 10.6684 8.60039 10.9997V11.3331C8.60039 11.6644 8.33176 11.9331 8.00039 11.9331C7.66902 11.9331 7.40039 11.6644 7.40039 11.3331V10.9997C7.40039 10.6684 7.66902 10.3997 8.00039 10.3997Z\"\n fill=\"#EF7484\"\n />\n </svg>\n\n {{ currentErrorMessage | translate }}\n </div>\n</div>\n", styles: [":host .rd-form-item-p-deal{padding:0!important}:host .rd-form-item-input{background:var(--rd-input-bg-default);border:none;box-shadow:none;color:var(--rd-copy-primary)}:host .rd-disabled .rd-form-item-input{background:var(--rd-input-bg-disable)!important}:host .rd-form-item-input-select{position:relative}:host .rd-form-item-input-select.rd-disabled .rd-form-item-input{color:var(--rd-copy-secondary)}:host .rd-form-item-password .rd-form-item-input[type=password]{font-size:20px;line-height:32px;letter-spacing:3px}:host .rd-form-item-rd-input-relative{position:relative}:host .rd-form-item-rd-input-relative .rd-form-item-rd-input-absolute{position:absolute;top:50%;transform:translateY(-50%);right:16px;z-index:1}:host .rd-form-item-rd-input-relative .rd-form-item-input{background:var(--rd-input-bg-default)!important;color:var(--rd-copy-primary)!important}:host .rd-input-symbol{position:absolute;top:50%;transform:translateY(-50%);right:16px;z-index:1;color:var(--rd-copy-primary);transition:all .3s cubic-bezier(.645,.045,.355,1)}:host .rd-form-item.rd-focus .rd-input-symbol,:host .rd-form-item.rd-has-value .rd-input-symbol{padding-top:14px}:host .rd-form-item-s .rd-form-item{height:44px}:host .rd-form-item-s .rd-form-item .rd-form-item-input{height:100%;padding:12px 16px;border-radius:4px}:host .rd-error-icon-dark{display:none}:host-context(.theme-dark):host(:not(.theme-light)) .rd-error-icon-light,:host(.theme-dark) .rd-error-icon-light{display:none}:host-context(.theme-dark):host(:not(.theme-light)) .rd-error-icon-dark,:host(.theme-dark) .rd-error-icon-dark{display:inline}\n", ".rd-form-item{position:relative;border-radius:12px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:16px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"] }]
687
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1$1.TranslateService }]; }, propDecorators: { label: [{
482
688
  type: Input
483
689
  }], symbol: [{
484
690
  type: Input
@@ -492,8 +698,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
492
698
  type: Input
493
699
  }], type: [{
494
700
  type: Input
701
+ }], allowNegativeNumbers: [{
702
+ type: Input
703
+ }], theme: [{
704
+ type: Input
495
705
  }], required: [{
496
706
  type: Input
707
+ }], placeholder: [{
708
+ type: Input
497
709
  }], min: [{
498
710
  type: Input
499
711
  }], max: [{
@@ -506,6 +718,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
506
718
  type: Input
507
719
  }], customValidator: [{
508
720
  type: Input
721
+ }], size: [{
722
+ type: Input
509
723
  }], errorMessages: [{
510
724
  type: Input
511
725
  }], valueChange: [{
@@ -514,6 +728,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
514
728
  type: Output
515
729
  }], blur: [{
516
730
  type: Output
731
+ }], hostThemeLight: [{
732
+ type: HostBinding,
733
+ args: ['class.theme-light']
734
+ }], hostThemeDark: [{
735
+ type: HostBinding,
736
+ args: ['class.theme-dark']
517
737
  }] } });
518
738
 
519
739
  class RdInputModule {
@@ -523,12 +743,14 @@ RdInputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
523
743
  ReactiveFormsModule,
524
744
  FormsModule,
525
745
  NzInputModule,
526
- NgxMaskModule], exports: [CustomInputComponent] });
746
+ NgxMaskModule,
747
+ TranslateModule], exports: [CustomInputComponent] });
527
748
  RdInputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdInputModule, imports: [CommonModule,
528
749
  ReactiveFormsModule,
529
750
  FormsModule,
530
751
  NzInputModule,
531
- NgxMaskModule] });
752
+ NgxMaskModule,
753
+ TranslateModule] });
532
754
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdInputModule, decorators: [{
533
755
  type: NgModule,
534
756
  args: [{
@@ -539,11 +761,41 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
539
761
  FormsModule,
540
762
  NzInputModule,
541
763
  NgxMaskModule,
764
+ TranslateModule,
542
765
  ],
543
766
  exports: [CustomInputComponent],
544
767
  }]
545
768
  }] });
546
769
 
770
+ const translations = {
771
+ en: {
772
+ pleaseEnter: 'Please enter ',
773
+ lengthCannotBeLess: ' Length cannot be less than the minimum length ',
774
+ lengthCannotExceed: ' Length cannot exceed the maximum length ',
775
+ validationFailed: 'Validation failed',
776
+ cannotBeLessThan: ' cannot be less than the minimum value ',
777
+ cannotExceed: ' cannot exceed the maximum value ',
778
+ maxDecimalPlaces: 'The maximum number of decimal places is ',
779
+ clearFilter: 'Clear filter',
780
+ email_invalid: 'The email format is not correct.',
781
+ },
782
+ zh: {
783
+ pleaseEnter: '請輸入',
784
+ lengthCannotBeLess: '長度不得少於最小長度',
785
+ lengthCannotExceed: '長度不得超過最大長度',
786
+ validationFailed: '驗證失敗',
787
+ cannotBeLessThan: '不得小於最小值',
788
+ cannotExceed: '不得超過最大值',
789
+ maxDecimalPlaces: '最大小數位數為',
790
+ clearFilter: '清除篩選',
791
+ email_invalid: '電子郵件格式不正確。',
792
+ },
793
+ };
794
+ function getTranslation(lang, key) {
795
+ var _a;
796
+ return ((_a = translations[lang]) === null || _a === void 0 ? void 0 : _a[key]) || translations.en[key];
797
+ }
798
+
547
799
  class CustomTextareaComponent {
548
800
  get currentErrorMessage() {
549
801
  var _a, _b, _c;
@@ -683,7 +935,7 @@ CustomTextareaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
683
935
  useExisting: forwardRef(() => CustomTextareaComponent),
684
936
  multi: true,
685
937
  },
686
- ], viewQueries: [{ propertyName: "autosize", first: true, predicate: CdkTextareaAutosize, descendants: true }], ngImport: i0, template: "<div>\n <div\n class=\"rd-form-item rd-form-textarea\"\n [ngClass]=\"{ disabled: disabled, error: showError }\"\n >\n <textarea\n nz-input\n nzBorderless\n [name]=\"name\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n [nzAutosize]=\"nzAutosize\"\n placeholder=\" \"\n class=\"rd-form-item-input\"\n ></textarea>\n <div class=\"rd-form-item-label\">{{ label }}</div>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img *ngIf=\"currentErrorMessage\" src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n </div>\n</div>\n", styles: [":host .rd-form-textarea{height:auto;min-height:64px}:host .rd-form-textarea .rd-form-item-input{position:static;line-height:1.5;min-height:58px}:host .rd-form-textarea .rd-form-item-input:focus,:host .rd-form-textarea .rd-form-item-input:not(:placeholder-shown){padding-top:28px}\n", ".rd-form-item{position:relative;border-radius:16px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.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: 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"] }, { kind: "directive", type: i3$2.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "directive", type: i3$2.NzAutosizeDirective, selector: "textarea[nzAutosize]", inputs: ["nzAutosize"], exportAs: ["nzAutosize"] }] });
938
+ ], viewQueries: [{ propertyName: "autosize", first: true, predicate: CdkTextareaAutosize, descendants: true }], ngImport: i0, template: "<div>\n <div\n class=\"rd-form-item rd-form-textarea\"\n [ngClass]=\"{ disabled: disabled, error: showError }\"\n >\n <textarea\n nz-input\n nzBorderless\n [name]=\"name\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n [nzAutosize]=\"nzAutosize\"\n placeholder=\" \"\n class=\"rd-form-item-input\"\n ></textarea>\n <div class=\"rd-form-item-label\">{{ label }}</div>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img *ngIf=\"currentErrorMessage\" src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n </div>\n</div>\n", styles: [":host .rd-form-textarea{height:auto;min-height:64px}:host .rd-form-textarea .rd-form-item-input{position:static;line-height:1.5;min-height:58px}:host .rd-form-textarea .rd-form-item-input:focus,:host .rd-form-textarea .rd-form-item-input:not(:placeholder-shown){padding-top:28px}\n", ".rd-form-item{position:relative;border-radius:12px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:16px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3$1.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "directive", type: i3$1.NzAutosizeDirective, selector: "textarea[nzAutosize]", inputs: ["nzAutosize"], exportAs: ["nzAutosize"] }] });
687
939
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomTextareaComponent, decorators: [{
688
940
  type: Component,
689
941
  args: [{ selector: 'app-rd-textarea', providers: [
@@ -697,7 +949,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
697
949
  useExisting: forwardRef(() => CustomTextareaComponent),
698
950
  multi: true,
699
951
  },
700
- ], template: "<div>\n <div\n class=\"rd-form-item rd-form-textarea\"\n [ngClass]=\"{ disabled: disabled, error: showError }\"\n >\n <textarea\n nz-input\n nzBorderless\n [name]=\"name\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n [nzAutosize]=\"nzAutosize\"\n placeholder=\" \"\n class=\"rd-form-item-input\"\n ></textarea>\n <div class=\"rd-form-item-label\">{{ label }}</div>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img *ngIf=\"currentErrorMessage\" src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n </div>\n</div>\n", styles: [":host .rd-form-textarea{height:auto;min-height:64px}:host .rd-form-textarea .rd-form-item-input{position:static;line-height:1.5;min-height:58px}:host .rd-form-textarea .rd-form-item-input:focus,:host .rd-form-textarea .rd-form-item-input:not(:placeholder-shown){padding-top:28px}\n", ".rd-form-item{position:relative;border-radius:16px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"] }]
952
+ ], template: "<div>\n <div\n class=\"rd-form-item rd-form-textarea\"\n [ngClass]=\"{ disabled: disabled, error: showError }\"\n >\n <textarea\n nz-input\n nzBorderless\n [name]=\"name\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n [nzAutosize]=\"nzAutosize\"\n placeholder=\" \"\n class=\"rd-form-item-input\"\n ></textarea>\n <div class=\"rd-form-item-label\">{{ label }}</div>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img *ngIf=\"currentErrorMessage\" src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n </div>\n</div>\n", styles: [":host .rd-form-textarea{height:auto;min-height:64px}:host .rd-form-textarea .rd-form-item-input{position:static;line-height:1.5;min-height:58px}:host .rd-form-textarea .rd-form-item-input:focus,:host .rd-form-textarea .rd-form-item-input:not(:placeholder-shown){padding-top:28px}\n", ".rd-form-item{position:relative;border-radius:12px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:16px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"] }]
701
953
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { lang: [{
702
954
  type: Input
703
955
  }], label: [{
@@ -746,8 +998,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
746
998
  }] });
747
999
 
748
1000
  class CustomInputAmountComponent {
749
- constructor(cdr) {
1001
+ constructor(cdr, translate) {
750
1002
  this.cdr = cdr;
1003
+ this.translate = translate;
751
1004
  this.lang = 'en';
752
1005
  this.label = '';
753
1006
  this.symbol = '';
@@ -764,8 +1017,8 @@ class CustomInputAmountComponent {
764
1017
  this.blur = new EventEmitter();
765
1018
  this.focus = new EventEmitter();
766
1019
  this.valueChange = new EventEmitter();
767
- this.inputValue = '';
768
- this.value = '';
1020
+ this.inputValue = ''; // 绑定到输入框
1021
+ this.value = ''; // 内部值,始终以 string 形式存储
769
1022
  this.touched = false;
770
1023
  this.control = null;
771
1024
  this.errors = null;
@@ -774,37 +1027,34 @@ class CustomInputAmountComponent {
774
1027
  this.onValidatorChange = () => { };
775
1028
  }
776
1029
  get currentErrorMessage() {
777
- var _a, _b, _c;
778
- if (!((_a = this.control) === null || _a === void 0 ? void 0 : _a.errors))
1030
+ var _a, _b, _c, _d, _e;
1031
+ if (!this.errors)
779
1032
  return '';
780
- const firstError = Object.keys(((_b = this.control) === null || _b === void 0 ? void 0 : _b.errors) || {})[0];
1033
+ const firstError = Object.keys(((_a = this.control) === null || _a === void 0 ? void 0 : _a.errors) || {})[0];
781
1034
  const msg = this.errorMessages[firstError];
782
1035
  switch (firstError) {
783
1036
  case 'required':
784
- return (msg ||
785
- `${getTranslation(this.lang, 'pleaseEnter')}${this.label.toLowerCase()}`);
1037
+ return (((_b = this.errorMessages) === null || _b === void 0 ? void 0 : _b.required) ||
1038
+ `${this.translate.instant('please_enter')}${this.label.toLowerCase()}`);
786
1039
  case 'min':
787
- return (msg ||
788
- `${this.label}${getTranslation(this.lang, 'cannotBeLessThan')}${formatBigNumber(this.min)}`);
1040
+ return (((_c = this.errorMessages) === null || _c === void 0 ? void 0 : _c.min) ||
1041
+ `${this.label}${this.translate.instant('min_value_error')}${formatBigNumber(this.min)}`);
789
1042
  case 'max':
790
- return (msg ||
791
- `${this.label} ${getTranslation(this.lang, 'cannotExceed')}${formatBigNumber(this.max)}`);
1043
+ return (((_d = this.errorMessages) === null || _d === void 0 ? void 0 : _d.max) ||
1044
+ `${this.label}${this.translate.instant('max_value_error')}${formatBigNumber(this.max)}`);
792
1045
  case 'precision':
793
- return (msg ||
794
- `${getTranslation(this.lang, 'maxDecimalPlaces')}${this.nzPrecision}`);
795
- case 'custom':
796
- return (((_c = this.control) === null || _c === void 0 ? void 0 : _c.errors['custom']) ||
797
- getTranslation(this.lang, 'validationFailed'));
1046
+ return (((_e = this.errorMessages) === null || _e === void 0 ? void 0 : _e.precision) ||
1047
+ `${this.translate.instant('max_decimal_places')}${this.nzPrecision}`);
798
1048
  default:
799
- return msg || getTranslation(this.lang, 'validationFailed');
1049
+ return (this.errorMessages[firstError] ||
1050
+ this.translate.instant('validation_failed'));
800
1051
  }
801
1052
  }
802
1053
  get showError() {
803
- var _a, _b, _c;
804
- return (!!((_a = this.control) === null || _a === void 0 ? void 0 : _a.invalid) && (((_b = this.control) === null || _b === void 0 ? void 0 : _b.touched) || ((_c = this.control) === null || _c === void 0 ? void 0 : _c.dirty)));
1054
+ return this.touched && !!this.errors;
805
1055
  }
806
- handleValueChange(raw) {
807
- const rawValue = raw.replace(/,/g, '');
1056
+ handleValueChange(value) {
1057
+ const rawValue = value.replace(/,/g, '');
808
1058
  // 处理输入的值,转换成 Big.js 格式
809
1059
  this.value = numberToBig(rawValue, this.nzPrecision);
810
1060
  // 更新绑定值
@@ -884,7 +1134,7 @@ class CustomInputAmountComponent {
884
1134
  this.cdr.markForCheck();
885
1135
  }
886
1136
  }
887
- CustomInputAmountComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomInputAmountComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1137
+ CustomInputAmountComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomInputAmountComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
888
1138
  CustomInputAmountComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomInputAmountComponent, selector: "app-rd-input-amount", inputs: { lang: "lang", label: "label", symbol: "symbol", name: "name", disabled: "disabled", min: "min", max: "max", nzPrecision: "nzPrecision", allowNegativeNumbers: "allowNegativeNumbers", required: "required", nzSize: "nzSize", errorMessages: "errorMessages", clearError: "clearError" }, outputs: { blur: "blur", focus: "focus", valueChange: "valueChange" }, providers: [
889
1139
  {
890
1140
  provide: NG_VALUE_ACCESSOR,
@@ -896,7 +1146,7 @@ CustomInputAmountComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
896
1146
  useExisting: forwardRef(() => CustomInputAmountComponent),
897
1147
  multi: true,
898
1148
  },
899
- ], ngImport: i0, template: "<div>\n <div\n class=\"rd-form-number-item\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': showError,\n 'rd-form-number-small': nzSize === 'small'\n }\"\n >\n <div class=\"rd-item-label\">{{ label }}</div>\n <div class=\"rd-item-content\">\n <input\n nz-input\n [name]=\"name\"\n type=\"text\"\n [placeholder]=\"'0'\"\n [mask]=\"'separator.' + nzPrecision\"\n [thousandSeparator]=\"','\"\n [allowNegativeNumbers]=\"allowNegativeNumbers\"\n [dropSpecialCharacters]=\"false\"\n [(ngModel)]=\"inputValue\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n class=\"rd-item-content-value\"\n />\n <ng-content select=\"[slot='token']\"></ng-content>\n <div *ngIf=\"symbol\" class=\"rd-item-content-symbol\">{{ symbol }}</div>\n </div>\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n </div>\n</div>\n", styles: [":host .rd-form-number-small{height:64px}:host .rd-form-number-small .rd-item-content{font-size:14px!important;font-weight:400!important;line-height:22px!important}:host .rd-form-number-small ::ng-deep app-rd-pure-select-token{transform:translateY(-10px)!important}:host .rd-form-number-small .rd-item-content{transform:translateY(-10px)!important}:host .rd-form-number-small .rd-item-content-value{flex:1;color:var(--rd-copy-primary);border:none;padding:4px 0;margin-top:4px;font-size:14px!important;font-weight:500!important;line-height:22px!important}\n", ".rd-form-item{position:relative;border-radius:16px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.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: 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"] }, { kind: "directive", type: i3$2.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "directive", type: i4.NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }] });
1149
+ ], ngImport: i0, template: "<div>\n <div\n class=\"rd-form-number-item\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': showError,\n 'rd-form-number-small': nzSize === 'small',\n disabled: disabled,\n error: showError,\n }\"\n >\n <div class=\"rd-item-label\">{{ label }}</div>\n <div class=\"rd-item-content\">\n <input\n nz-input\n [name]=\"name\"\n type=\"text\"\n [placeholder]=\"'0'\"\n [mask]=\"'separator.' + nzPrecision\"\n [thousandSeparator]=\"','\"\n [allowNegativeNumbers]=\"allowNegativeNumbers\"\n [dropSpecialCharacters]=\"false\"\n [(ngModel)]=\"inputValue\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n class=\"rd-item-content-value\"\n />\n <ng-content select=\"[slot='token']\"></ng-content>\n <div *ngIf=\"symbol\" class=\"rd-item-content-symbol\">{{ symbol }}</div>\n </div>\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n </div>\n</div>\n", styles: [":host .rd-form-number-small{height:64px}:host .rd-form-number-small .rd-item-content{font-size:14px!important;font-weight:400!important;line-height:22px!important}:host .rd-form-number-small ::ng-deep app-rd-pure-select-token{transform:translateY(-10px)!important}:host .rd-form-number-small .rd-item-content{transform:translateY(-10px)!important}:host .rd-form-number-small .rd-item-content-value{flex:1;color:var(--rd-copy-primary);background-color:var(--rd-input-bg-default)!important;border:none;padding:4px 0;margin-top:4px;font-size:14px!important;font-weight:500!important;line-height:22px!important}\n", ".rd-form-item{position:relative;border-radius:12px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:16px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3$1.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "directive", type: i5.NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }] });
900
1150
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomInputAmountComponent, decorators: [{
901
1151
  type: Component,
902
1152
  args: [{ selector: 'app-rd-input-amount', providers: [
@@ -910,8 +1160,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
910
1160
  useExisting: forwardRef(() => CustomInputAmountComponent),
911
1161
  multi: true,
912
1162
  },
913
- ], template: "<div>\n <div\n class=\"rd-form-number-item\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': showError,\n 'rd-form-number-small': nzSize === 'small'\n }\"\n >\n <div class=\"rd-item-label\">{{ label }}</div>\n <div class=\"rd-item-content\">\n <input\n nz-input\n [name]=\"name\"\n type=\"text\"\n [placeholder]=\"'0'\"\n [mask]=\"'separator.' + nzPrecision\"\n [thousandSeparator]=\"','\"\n [allowNegativeNumbers]=\"allowNegativeNumbers\"\n [dropSpecialCharacters]=\"false\"\n [(ngModel)]=\"inputValue\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n class=\"rd-item-content-value\"\n />\n <ng-content select=\"[slot='token']\"></ng-content>\n <div *ngIf=\"symbol\" class=\"rd-item-content-symbol\">{{ symbol }}</div>\n </div>\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n </div>\n</div>\n", styles: [":host .rd-form-number-small{height:64px}:host .rd-form-number-small .rd-item-content{font-size:14px!important;font-weight:400!important;line-height:22px!important}:host .rd-form-number-small ::ng-deep app-rd-pure-select-token{transform:translateY(-10px)!important}:host .rd-form-number-small .rd-item-content{transform:translateY(-10px)!important}:host .rd-form-number-small .rd-item-content-value{flex:1;color:var(--rd-copy-primary);border:none;padding:4px 0;margin-top:4px;font-size:14px!important;font-weight:500!important;line-height:22px!important}\n", ".rd-form-item{position:relative;border-radius:16px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"] }]
914
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { lang: [{
1163
+ ], template: "<div>\n <div\n class=\"rd-form-number-item\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': showError,\n 'rd-form-number-small': nzSize === 'small',\n disabled: disabled,\n error: showError,\n }\"\n >\n <div class=\"rd-item-label\">{{ label }}</div>\n <div class=\"rd-item-content\">\n <input\n nz-input\n [name]=\"name\"\n type=\"text\"\n [placeholder]=\"'0'\"\n [mask]=\"'separator.' + nzPrecision\"\n [thousandSeparator]=\"','\"\n [allowNegativeNumbers]=\"allowNegativeNumbers\"\n [dropSpecialCharacters]=\"false\"\n [(ngModel)]=\"inputValue\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n class=\"rd-item-content-value\"\n />\n <ng-content select=\"[slot='token']\"></ng-content>\n <div *ngIf=\"symbol\" class=\"rd-item-content-symbol\">{{ symbol }}</div>\n </div>\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n </div>\n</div>\n", styles: [":host .rd-form-number-small{height:64px}:host .rd-form-number-small .rd-item-content{font-size:14px!important;font-weight:400!important;line-height:22px!important}:host .rd-form-number-small ::ng-deep app-rd-pure-select-token{transform:translateY(-10px)!important}:host .rd-form-number-small .rd-item-content{transform:translateY(-10px)!important}:host .rd-form-number-small .rd-item-content-value{flex:1;color:var(--rd-copy-primary);background-color:var(--rd-input-bg-default)!important;border:none;padding:4px 0;margin-top:4px;font-size:14px!important;font-weight:500!important;line-height:22px!important}\n", ".rd-form-item{position:relative;border-radius:12px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:16px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"] }]
1164
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1$1.TranslateService }]; }, propDecorators: { lang: [{
915
1165
  type: Input
916
1166
  }], label: [{
917
1167
  type: Input
@@ -974,6 +1224,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
974
1224
  }] });
975
1225
 
976
1226
  class CustomRadioComponent {
1227
+ get hostThemeLight() {
1228
+ return this.theme === 'light';
1229
+ }
1230
+ get hostThemeDark() {
1231
+ return this.theme === 'dark';
1232
+ }
977
1233
  set options(val) {
978
1234
  this._rawOptions = val;
979
1235
  }
@@ -985,20 +1241,56 @@ class CustomRadioComponent {
985
1241
  this.label = '';
986
1242
  this.name = '';
987
1243
  this.disabled = false;
1244
+ /** 按钮大小:large, default, small */
1245
+ this.size = 'default';
1246
+ this.direction = 'horizontal';
1247
+ this.allowDeselect = true; // 新增:是否允许取消选中
988
1248
  this.valueChange = new EventEmitter();
989
1249
  this._rawOptions = [];
990
- this.value = undefined;
991
- this.nativeValue = undefined;
1250
+ this._value = null;
992
1251
  this.onChange = () => { };
993
1252
  this.onTouched = () => { };
994
1253
  }
995
- setDisabledState(isDisabled) {
1254
+ ngOnInit() { }
1255
+ ngOnDestroy() { }
1256
+ get value() {
1257
+ return this._value;
1258
+ }
1259
+ set value(val) {
1260
+ if (this._value !== val) {
1261
+ this._value = val;
1262
+ this.onChange(val);
1263
+ this.valueChange.emit(val);
1264
+ }
1265
+ }
1266
+ get nativeValue() {
1267
+ var _a;
1268
+ return (_a = this._value) === null || _a === void 0 ? void 0 : _a.value;
1269
+ }
1270
+ set nativeValue(val) {
1271
+ const option = this.options.find((opt) => opt.value === val);
1272
+ this.value = option || null;
1273
+ }
1274
+ setDisabledState(isDisabled) {
996
1275
  this.disabled = isDisabled;
997
1276
  this.cdr.markForCheck();
998
1277
  }
999
1278
  writeValue(value) {
1000
- this.value = value;
1001
- this.nativeValue = value === null || value === void 0 ? void 0 : value.value;
1279
+ if (value) {
1280
+ if (typeof value === 'object' && 'value' in value) {
1281
+ // 如果传入的是 ISelectOption 对象
1282
+ this._value =
1283
+ this.options.find((opt) => opt.value === value.value) || value;
1284
+ }
1285
+ else {
1286
+ // 如果传入的是值
1287
+ this._value = this.options.find((opt) => opt.value === value) || null;
1288
+ }
1289
+ }
1290
+ else {
1291
+ this._value = null;
1292
+ }
1293
+ this.cdr.markForCheck();
1002
1294
  }
1003
1295
  registerOnChange(fn) {
1004
1296
  this.onChange = fn;
@@ -1006,21 +1298,34 @@ class CustomRadioComponent {
1006
1298
  registerOnTouched(fn) {
1007
1299
  this.onTouched = fn;
1008
1300
  }
1009
- handleValueChange(value) {
1010
- this.nativeValue = value;
1011
- this.value = this.options.find((item) => item.value === value);
1012
- this.onChange(this.value);
1013
- this.valueChange.emit(this.value);
1301
+ // 处理单选按钮点击
1302
+ handleRadioClick(optionValue) {
1303
+ if (this.disabled)
1304
+ return;
1305
+ this.onTouched();
1306
+ // 如果允许取消选中,并且点击的是当前选中的选项
1307
+ if (this.allowDeselect && this.nativeValue === optionValue) {
1308
+ // 取消选中
1309
+ this.nativeValue = null;
1310
+ }
1311
+ else {
1312
+ // 选中新选项
1313
+ this.nativeValue = optionValue;
1314
+ }
1315
+ }
1316
+ // 判断选项是否选中
1317
+ isOptionSelected(optionValue) {
1318
+ return this.nativeValue === optionValue;
1014
1319
  }
1015
1320
  }
1016
1321
  CustomRadioComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomRadioComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1017
- CustomRadioComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomRadioComponent, selector: "app-rd-radio", inputs: { label: "label", name: "name", disabled: "disabled", options: "options" }, outputs: { valueChange: "valueChange" }, providers: [
1322
+ CustomRadioComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomRadioComponent, selector: "app-rd-radio", inputs: { label: "label", name: "name", disabled: "disabled", size: "size", direction: "direction", allowDeselect: "allowDeselect", theme: "theme", options: "options" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.theme-light": "this.hostThemeLight", "class.theme-dark": "this.hostThemeDark" } }, providers: [
1018
1323
  {
1019
1324
  provide: NG_VALUE_ACCESSOR,
1020
1325
  useExisting: forwardRef(() => CustomRadioComponent),
1021
1326
  multi: true,
1022
1327
  },
1023
- ], ngImport: i0, template: "<div>\n <div\n class=\"rd-form-item-check\"\n [ngClass]=\"{\n disabled: disabled\n }\"\n >\n <div class=\"rd-form-item-check-label\">{{ label }}</div>\n <nz-radio-group\n [(ngModel)]=\"nativeValue\"\n (ngModelChange)=\"handleValueChange($event)\"\n >\n <label\n *ngFor=\"let option of options\"\n nz-radio\n [nzValue]=\"option.value\"\n [nzDisabled]=\"option.disabled\"\n >\n {{ option.label }}\n </label>\n </nz-radio-group>\n </div>\n</div>\n", styles: ["::ng-deep .rd-form-item-check .ant-radio-group{display:flex;margin-top:11px}::ng-deep .rd-form-item-check .ant-radio-group label{flex:1;color:var(--rd-copy-primary);font-size:14px;font-weight:500}::ng-deep .rd-form-item-check .ant-radio-group .ant-radio-checked .ant-radio-inner:after{background-color:var(--rd-control-input-selected)}::ng-deep .rd-form-item-check .ant-radio-group .ant-radio-checked:after{border-color:var(--rd-control-border-selected)}:host .rd-form-item-check{position:relative;background-color:var(--rd-bg-panel);width:100%}:host .rd-form-item-check-label{font-size:14px;font-weight:500;color:var(--rd-copy-secondary)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { 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"] }, { kind: "component", type: i3$3.NzRadioComponent, selector: "[nz-radio],[nz-radio-button]", inputs: ["nzValue", "nzDisabled", "nzAutoFocus"], exportAs: ["nzRadio"] }, { kind: "component", type: i3$3.NzRadioGroupComponent, selector: "nz-radio-group", inputs: ["nzDisabled", "nzButtonStyle", "nzSize", "nzName"], exportAs: ["nzRadioGroup"] }] });
1328
+ ], ngImport: i0, template: "<div\n class=\"rd-form-item-radio\"\n [ngClass]=\"{\n 'rd-form-item-radio-disabled': disabled,\n 'rd-form-item-radio-vertical': direction === 'vertical',\n large: size === 'large',\n }\"\n>\n <div class=\"rd-form-item-radio-label\" *ngIf=\"label\">\n {{ label }}\n </div>\n\n <div\n [ngClass]=\"{\n 'rd-radio-group-horizontal': direction === 'horizontal',\n 'rd-radio-group-vertical': direction === 'vertical',\n }\"\n class=\"rd-custom-radio-group\"\n >\n <label\n *ngFor=\"let option of options\"\n class=\"rd-radio-item\"\n [class.rd-radio-item-selected]=\"isOptionSelected(option.value)\"\n [class.rd-radio-item-disabled]=\"disabled || option.disabled\"\n [class.rd-radio-item-large]=\"size === 'large'\"\n [class.rd-radio-item-small]=\"size === 'small'\"\n (click)=\"handleRadioClick(option.value)\"\n >\n <div\n [style.width.px]=\"size === 'large' ? 40 : size === 'small' ? 20 : 24\"\n [style.height.px]=\"size === 'large' ? 40 : size === 'small' ? 20 : 24\"\n >\n <span\n class=\"rd-custom-radio\"\n [class.rd-custom-radio-selected]=\"isOptionSelected(option.value)\"\n [class.rd-custom-radio-disabled]=\"disabled || option.disabled\"\n >\n <span class=\"rd-custom-radio-inner\"></span>\n </span>\n </div>\n <span class=\"rd-radio-text\" [innerHtml]=\"option.label\"> </span>\n </label>\n </div>\n</div>\n", styles: ["::ng-deep .rd-form-item-check .ant-radio-group{display:flex;margin-top:11px}::ng-deep .rd-form-item-check .ant-radio-group label{flex:1;color:var(--rd-copy-primary);font-size:14px;font-weight:500}::ng-deep .rd-form-item-check .ant-radio-group .ant-radio-checked .ant-radio-inner:after{background-color:var(--rd-control-input-selected)}::ng-deep .rd-form-item-check .ant-radio-group .ant-radio-checked:after{border-color:var(--rd-control-border-selected)}:host .rd-form-item-check{position:relative;background-color:var(--rd-bg-panel);width:100%}:host .rd-form-item-check-label{font-size:14px;font-weight:500;color:var(--rd-copy-secondary)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1024
1329
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomRadioComponent, decorators: [{
1025
1330
  type: Component,
1026
1331
  args: [{ selector: 'app-rd-radio', providers: [
@@ -1029,13 +1334,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1029
1334
  useExisting: forwardRef(() => CustomRadioComponent),
1030
1335
  multi: true,
1031
1336
  },
1032
- ], template: "<div>\n <div\n class=\"rd-form-item-check\"\n [ngClass]=\"{\n disabled: disabled\n }\"\n >\n <div class=\"rd-form-item-check-label\">{{ label }}</div>\n <nz-radio-group\n [(ngModel)]=\"nativeValue\"\n (ngModelChange)=\"handleValueChange($event)\"\n >\n <label\n *ngFor=\"let option of options\"\n nz-radio\n [nzValue]=\"option.value\"\n [nzDisabled]=\"option.disabled\"\n >\n {{ option.label }}\n </label>\n </nz-radio-group>\n </div>\n</div>\n", styles: ["::ng-deep .rd-form-item-check .ant-radio-group{display:flex;margin-top:11px}::ng-deep .rd-form-item-check .ant-radio-group label{flex:1;color:var(--rd-copy-primary);font-size:14px;font-weight:500}::ng-deep .rd-form-item-check .ant-radio-group .ant-radio-checked .ant-radio-inner:after{background-color:var(--rd-control-input-selected)}::ng-deep .rd-form-item-check .ant-radio-group .ant-radio-checked:after{border-color:var(--rd-control-border-selected)}:host .rd-form-item-check{position:relative;background-color:var(--rd-bg-panel);width:100%}:host .rd-form-item-check-label{font-size:14px;font-weight:500;color:var(--rd-copy-secondary)}\n"] }]
1337
+ ], template: "<div\n class=\"rd-form-item-radio\"\n [ngClass]=\"{\n 'rd-form-item-radio-disabled': disabled,\n 'rd-form-item-radio-vertical': direction === 'vertical',\n large: size === 'large',\n }\"\n>\n <div class=\"rd-form-item-radio-label\" *ngIf=\"label\">\n {{ label }}\n </div>\n\n <div\n [ngClass]=\"{\n 'rd-radio-group-horizontal': direction === 'horizontal',\n 'rd-radio-group-vertical': direction === 'vertical',\n }\"\n class=\"rd-custom-radio-group\"\n >\n <label\n *ngFor=\"let option of options\"\n class=\"rd-radio-item\"\n [class.rd-radio-item-selected]=\"isOptionSelected(option.value)\"\n [class.rd-radio-item-disabled]=\"disabled || option.disabled\"\n [class.rd-radio-item-large]=\"size === 'large'\"\n [class.rd-radio-item-small]=\"size === 'small'\"\n (click)=\"handleRadioClick(option.value)\"\n >\n <div\n [style.width.px]=\"size === 'large' ? 40 : size === 'small' ? 20 : 24\"\n [style.height.px]=\"size === 'large' ? 40 : size === 'small' ? 20 : 24\"\n >\n <span\n class=\"rd-custom-radio\"\n [class.rd-custom-radio-selected]=\"isOptionSelected(option.value)\"\n [class.rd-custom-radio-disabled]=\"disabled || option.disabled\"\n >\n <span class=\"rd-custom-radio-inner\"></span>\n </span>\n </div>\n <span class=\"rd-radio-text\" [innerHtml]=\"option.label\"> </span>\n </label>\n </div>\n</div>\n", styles: ["::ng-deep .rd-form-item-check .ant-radio-group{display:flex;margin-top:11px}::ng-deep .rd-form-item-check .ant-radio-group label{flex:1;color:var(--rd-copy-primary);font-size:14px;font-weight:500}::ng-deep .rd-form-item-check .ant-radio-group .ant-radio-checked .ant-radio-inner:after{background-color:var(--rd-control-input-selected)}::ng-deep .rd-form-item-check .ant-radio-group .ant-radio-checked:after{border-color:var(--rd-control-border-selected)}:host .rd-form-item-check{position:relative;background-color:var(--rd-bg-panel);width:100%}:host .rd-form-item-check-label{font-size:14px;font-weight:500;color:var(--rd-copy-secondary)}\n"] }]
1033
1338
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { label: [{
1034
1339
  type: Input
1035
1340
  }], name: [{
1036
1341
  type: Input
1037
1342
  }], disabled: [{
1038
1343
  type: Input
1344
+ }], size: [{
1345
+ type: Input
1346
+ }], direction: [{
1347
+ type: Input
1348
+ }], allowDeselect: [{
1349
+ type: Input
1350
+ }], theme: [{
1351
+ type: Input
1352
+ }], hostThemeLight: [{
1353
+ type: HostBinding,
1354
+ args: ['class.theme-light']
1355
+ }], hostThemeDark: [{
1356
+ type: HostBinding,
1357
+ args: ['class.theme-dark']
1039
1358
  }], options: [{
1040
1359
  type: Input
1041
1360
  }], valueChange: [{
@@ -1070,36 +1389,134 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1070
1389
  }]
1071
1390
  }] });
1072
1391
 
1073
- class FormItemComponent {
1392
+ class RdButtonComponent {
1074
1393
  constructor() {
1075
- this.size = 'normal';
1394
+ /** 按钮类型:primary, default, danger, yellow, link, text */
1395
+ this.type = 'default';
1396
+ /** 按钮大小:large, default, small */
1397
+ this.size = 'default';
1398
+ /** 按钮形状:default, circle, round */
1399
+ this.shape = 'default';
1400
+ /** 是否禁用 */
1401
+ this.disabled = false;
1402
+ /** 是否加载中 */
1403
+ this.loading = false;
1404
+ /** 是否块级元素,宽度充满父容器 */
1405
+ this.block = false;
1406
+ /** 原生 button 类型:button, submit, reset */
1407
+ this.htmlType = 'button';
1408
+ /** 是否显示为幽灵按钮(背景透明) */
1409
+ this.ghost = false;
1410
+ /** 是否显示为虚线按钮 */
1411
+ this.dashed = false;
1412
+ /** 危险按钮(type=danger 时自动为 true) */
1413
+ this.danger = false;
1414
+ /** 点击事件 */
1415
+ this.click = new EventEmitter();
1416
+ this.minWidth = 56;
1417
+ }
1418
+ get hostThemeLight() {
1419
+ return this.theme === 'light';
1420
+ }
1421
+ get hostThemeDark() {
1422
+ return this.theme === 'dark';
1423
+ }
1424
+ /** 获取 ng-zorro 的 nzType,兼容现有代码 */
1425
+ get nzType() {
1426
+ if (this.type === 'danger' || this.type === 'yellow') {
1427
+ return 'primary';
1428
+ }
1429
+ if (this.type === 'gray') {
1430
+ return 'default';
1431
+ }
1432
+ return this.type;
1076
1433
  }
1077
- get isShowSelectIcon() {
1078
- return this.type === 'select';
1434
+ /** 获取 ng-zorro 的 nzShape */
1435
+ get nzShape() {
1436
+ return this.shape !== 'default' ? this.shape : undefined;
1437
+ }
1438
+ /** 获取 ng-zorro 的 nzSize */
1439
+ get nzSize() {
1440
+ return this.size !== 'default' ? this.size : undefined;
1441
+ }
1442
+ /** 处理点击事件 */
1443
+ onClick(event) {
1444
+ event.stopPropagation();
1445
+ if (!this.disabled && !this.loading) {
1446
+ this.click.emit(event);
1447
+ }
1448
+ }
1449
+ /** 获取按钮 CSS 类 */
1450
+ get buttonClasses() {
1451
+ const classes = {
1452
+ 'rd-button': true,
1453
+ [`rd-button-${this.type}`]: true,
1454
+ 'rd-button-block': this.block,
1455
+ 'rd-button-loading': this.loading,
1456
+ 'rd-button-disabled': this.disabled,
1457
+ 'rd-button-ghost': this.ghost,
1458
+ 'rd-button-dashed': this.dashed,
1459
+ 'rd-button-danger': this.danger || this.type === 'danger',
1460
+ 'rd-button-icon-only': !!this.icon && !this.hasContent,
1461
+ };
1462
+ // 添加尺寸类,避免与 type="default" 冲突
1463
+ if (this.size !== 'default') {
1464
+ classes[`rd-button-size-${this.size}`] = true;
1465
+ }
1466
+ // 添加形状类,避免与 type 值冲突
1467
+ if (this.shape !== 'default') {
1468
+ classes[`rd-button-shape-${this.shape}`] = true;
1469
+ }
1470
+ return classes;
1471
+ }
1472
+ /** 检查是否有内容(除了图标) */
1473
+ get hasContent() {
1474
+ // 通过内容投影判断,在模板中使用 <ng-content>
1475
+ return true; // 实际由模板判断,这里返回 true 假设有内容
1079
1476
  }
1080
1477
  }
1081
- FormItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1082
- FormItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormItemComponent, selector: "app-rd-form-item", inputs: { errorMessage: "errorMessage", disabled: "disabled", label: "label", type: "type", focus: "focus", value: "value", size: "size" }, ngImport: i0, template: "<div\n class=\"rd-form-item\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': !!errorMessage,\n 'rd-focus': focus,\n 'rd-has-value': !!value,\n 'rd-form-item-s': size === 'small',\n 'rd-form-item-normal': size === 'normal',\n }\"\n>\n <ng-content></ng-content>\n <div *ngIf=\"label\" class=\"rd-form-item-label\">{{ label }}</div>\n <svg\n *ngIf=\"isShowSelectIcon\"\n class=\"rd-form-item-select-icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"17\"\n viewBox=\"0 0 16 17\"\n fill=\"none\"\n >\n <path\n d=\"M3 5.83337L8 11.1667L13 5.83337\"\n [attr.stroke]=\"disabled ? 'var(--rd-copy-disable)' : 'var(--rd-copy-primary)'\"\n stroke-width=\"1.16667\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n</div>\n<div *ngIf=\"errorMessage\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ errorMessage }}\n</div>\n", styles: [":host .rd-form-item{position:relative;border-radius:4px;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;font-size:14px;line-height:1;padding:0;transition:all .3s cubic-bezier(.645,.045,.355,1)}:host .rd-form-item.rd-form-item-normal{min-height:64px}:host .rd-form-item.rd-form-item-s{height:40px}:host .rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}:host .rd-form-item.rd-disabled .rd-form-item-label,:host .rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}:host .rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}:host .rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}:host .rd-form-item.rd-focus{border:1px solid var(--rd-input-fg-hover);box-shadow:0 0 0 2px #367af61a}:host .rd-form-item.rd-focus .rd-form-item-select-icon{transform:translateY(-50%) rotate(-180deg)}:host .rd-form-item.rd-form-item-normal.rd-focus .rd-form-item-label,:host .rd-form-item.rd-form-item-normal.rd-has-value .rd-form-item-label{top:16px;font-size:12px}:host .rd-form-item.rd-form-item-normal.rd-focus ::ng-deep .rd-form-item-select,:host .rd-form-item.rd-form-item-normal.rd-has-value ::ng-deep .rd-form-item-select{top:10px}:host .rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}:host .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none;transition:transform .2s ease}:host .rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}:host .rd-form-item-error img{width:16px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1083
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormItemComponent, decorators: [{
1478
+ RdButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1479
+ RdButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RdButtonComponent, selector: "app-rd-button", inputs: { type: "type", size: "size", shape: "shape", disabled: "disabled", loading: "loading", block: "block", htmlType: "htmlType", ghost: "ghost", dashed: "dashed", icon: "icon", danger: "danger", minWidth: "minWidth", theme: "theme" }, outputs: { click: "click" }, host: { properties: { "class.theme-light": "this.hostThemeLight", "class.theme-dark": "this.hostThemeDark" } }, ngImport: i0, template: "<button\n nz-button\n [nzType]=\"nzType\"\n [nzShape]=\"nzShape\"\n [nzSize]=\"nzSize\"\n [nzGhost]=\"ghost\"\n [nzDanger]=\"danger || type === 'danger'\"\n [nzBlock]=\"block\"\n [nzLoading]=\"loading\"\n [disabled]=\"disabled\"\n [type]=\"htmlType\"\n [ngClass]=\"buttonClasses\"\n [ngStyle]=\"{ 'min-width': minWidth + 'px' }\"\n (click)=\"onClick($event)\"\n class=\"rd-button-native\"\n>\n <span class=\"rd-button-content\">\n <ng-content></ng-content>\n </span>\n</button>\n", styles: [".rd-button-native{transition:all .3s ease;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:4px;border:1px solid transparent;cursor:pointer}.rd-button-native:focus{outline:none}.rd-button-native:disabled{cursor:not-allowed}.rd-button-primary{height:44px;padding:0 24px;color:var(--rd-btn-solid-primary-fg-default);background-color:var(--rd-btn-solid-primary-bg-default);border:1px solid var(--rd-btn-solid-primary-bg-default)}.rd-button-primary:hover,.rd-button-primary:active,.rd-button-primary:focus{border:1px solid var(--rd-btn-solid-primary-bg-hover);background-color:var(--rd-btn-solid-primary-bg-hover)}.rd-button-primary:disabled{background-color:var(--rd-btn-solid-primary-bg-disable)!important;border:1px solid var(--rd-btn-solid-primary-bg-disable)!important;color:var(--rd-btn-solid-primary-fg-disable)!important}.rd-button-default{height:44px;padding:0 24px;border-radius:4px;border:1px solid var(--rd-btn-outline-primary-border-default);color:var(--rd-btn-outline-primary-fg-default);background-color:transparent;font-size:14px;line-height:22px}.rd-button-default:hover,.rd-button-default:active,.rd-button-default:focus{border:1px solid var(--rd-btn-outline-primary-border-hover);color:var(--rd-btn-outline-primary-fg-hover);background-color:transparent}.rd-button-default:disabled{background-color:transparent!important;border:1px solid var(--rd-btn-outline-primary-border-disable)!important;color:var(--rd-btn-outline-primary-fg-disable)!important}.rd-button-danger{height:44px;padding:0 24px;border-radius:4px;border:1px solid var(--rd-btn-solid-danger-bg-default);color:var(--rd-btn-solid-danger-fg-default)!important;background-color:var(--rd-btn-solid-danger-bg-default)}.rd-button-danger:hover,.rd-button-danger:active,.rd-button-danger:focus{background-color:var(--rd-btn-solid-danger-bg-hover)!important;border:1px solid var(--rd-btn-solid-danger-bg-hover);color:var(--rd-btn-solid-danger-fg-hover)!important}.rd-button-yellow{height:44px;padding:0 24px;border-radius:8px!important;border:1px solid #fcd535;color:#000;background-color:#fcd535}.rd-button-yellow:active{border:1px solid #d9a23a;background-color:#d9a23a}.rd-button-yellow:disabled{background-color:#242e3c!important;border:1px solid #242e3c!important;color:#4b5563!important}.rd-button-gray{--antd-wave-shadow-color: #ededed;height:44px;padding:0 24px;border-radius:8px!important;border:1px solid #ededed;color:#000;background-color:#ededed}.rd-button-gray:active{border:1px solid #e5e5e5;background-color:#e5e5e5}.rd-button-gray:disabled{background-color:#242e3c!important;border:1px solid #242e3c!important;color:#4b5563!important}.rd-button-link{font-size:13px;line-height:18px;color:var(--rd-copy-brand);background:transparent;border:none;padding:0;height:auto}.rd-button-link:hover,.rd-button-link:active,.rd-button-link:focus{color:var(--rd-copy-brand-hover);text-decoration:underline}.rd-button-text{color:var(--rd-copy-brand);background:transparent;border:none;padding:0 16px;height:auto}.rd-button-text:hover,.rd-button-text:active,.rd-button-text:focus{color:var(--rd-copy-brand-hover)}.rd-button-size-large{height:48px;padding:0 32px;font-size:16px}.rd-button-size-small{height:32px!important;padding:0 16px!important;font-size:13px;font-weight:500;line-height:18px}.rd-button-size-small.rd-button-primary{border:1px solid var(--rd-btn-solid-primary-bg-default);background-color:var(--rd-btn-solid-primary-bg-default)}.rd-button-size-small.rd-button-primary:hover,.rd-button-size-small.rd-button-primary:active,.rd-button-size-small.rd-button-primary:focus{border:1px solid var(--rd-btn-solid-primary-bg-hover);background-color:var(--rd-btn-solid-primary-bg-hover)}.rd-button-size-small.rd-button-default{border:1px solid var(--rd-btn-outline-primary-border-default);color:var(--rd-btn-outline-primary-fg-default);background-color:transparent}.rd-button-size-small.rd-button-default:hover,.rd-button-size-small.rd-button-default:active,.rd-button-size-small.rd-button-default:focus{border:1px solid var(--rd-btn-outline-primary-border-hover);color:var(--rd-btn-outline-primary-fg-hover);background-color:transparent}.rd-button-size-small.rd-button-yellow{border:1px solid #fcd535;background-color:#fcd535;color:#000}.rd-button-size-small.rd-button-yellow:active{border:1px solid #d9a23a;background-color:#d9a23a}.rd-button-size-small.rd-button-gray{border:1px solid #ededed;background-color:#ededed;color:#000}.rd-button-size-small.rd-button-gray:active{border:1px solid #e5e5e5;background-color:#e5e5e5}.rd-button-shape-circle{border-radius:50%;width:44px;height:44px;padding:0}.rd-button-shape-circle.rd-button-size-small{width:32px!important;height:32px!important}.rd-button-shape-circle.rd-button-size-large{width:48px;height:48px}.rd-button-shape-round{border-radius:22px}.rd-button-shape-round.rd-button-size-small{border-radius:16px}.rd-button-shape-round.rd-button-size-large{border-radius:24px}.rd-button-block{display:block;width:100%}.rd-button-ghost{background-color:transparent!important}.rd-button-ghost.rd-button-primary{border:1px solid var(--rd-btn-ghost-primary-fg-default);color:var(--rd-btn-ghost-primary-fg-default)}.rd-button-ghost.rd-button-primary:hover,.rd-button-ghost.rd-button-primary:active,.rd-button-ghost.rd-button-primary:focus{border:1px solid var(--rd-btn-ghost-primary-fg-hover);background-color:transparent;color:var(--rd-btn-ghost-primary-fg-hover)}.rd-button-ghost.rd-button-default{border:1px solid var(--rd-btn-outline-primary-border-default);color:var(--rd-btn-outline-primary-fg-default);background:transparent}.rd-button-ghost.rd-button-danger{border:1px solid var(--rd-btn-ghost-danger-fg-default);color:var(--rd-btn-ghost-danger-fg-default)}.rd-button-ghost.rd-button-yellow{border:1px solid #f9ba43;color:#f9ba43}.rd-button-ghost.rd-button-gray{border:1px solid #d1d1d1;color:#d1d1d1}.rd-button-dashed{border-style:dashed}.rd-button-content{display:inline-flex;align-items:center;gap:8px}.rd-button-icon{font-size:14px;line-height:1}.rd-button-loading-icon{margin-right:4px}.rd-button-icon-only .rd-button-content{display:none}.rd-button-icon-only .rd-button-icon{margin:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:host ::ng-deep .ant-btn{font-family:inherit;line-height:1.5715;box-shadow:none}:host ::ng-deep .ant-btn:focus{outline:none}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i3$2.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i4$1.NzWaveDirective, selector: "[nz-wave],button[nz-button]:not([nzType=\"link\"]):not([nzType=\"text\"])", inputs: ["nzWaveExtraNode"], exportAs: ["nzWave"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1480
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdButtonComponent, decorators: [{
1084
1481
  type: Component,
1085
- args: [{ selector: 'app-rd-form-item', template: "<div\n class=\"rd-form-item\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': !!errorMessage,\n 'rd-focus': focus,\n 'rd-has-value': !!value,\n 'rd-form-item-s': size === 'small',\n 'rd-form-item-normal': size === 'normal',\n }\"\n>\n <ng-content></ng-content>\n <div *ngIf=\"label\" class=\"rd-form-item-label\">{{ label }}</div>\n <svg\n *ngIf=\"isShowSelectIcon\"\n class=\"rd-form-item-select-icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"17\"\n viewBox=\"0 0 16 17\"\n fill=\"none\"\n >\n <path\n d=\"M3 5.83337L8 11.1667L13 5.83337\"\n [attr.stroke]=\"disabled ? 'var(--rd-copy-disable)' : 'var(--rd-copy-primary)'\"\n stroke-width=\"1.16667\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n</div>\n<div *ngIf=\"errorMessage\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ errorMessage }}\n</div>\n", styles: [":host .rd-form-item{position:relative;border-radius:4px;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;font-size:14px;line-height:1;padding:0;transition:all .3s cubic-bezier(.645,.045,.355,1)}:host .rd-form-item.rd-form-item-normal{min-height:64px}:host .rd-form-item.rd-form-item-s{height:40px}:host .rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}:host .rd-form-item.rd-disabled .rd-form-item-label,:host .rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}:host .rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}:host .rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}:host .rd-form-item.rd-focus{border:1px solid var(--rd-input-fg-hover);box-shadow:0 0 0 2px #367af61a}:host .rd-form-item.rd-focus .rd-form-item-select-icon{transform:translateY(-50%) rotate(-180deg)}:host .rd-form-item.rd-form-item-normal.rd-focus .rd-form-item-label,:host .rd-form-item.rd-form-item-normal.rd-has-value .rd-form-item-label{top:16px;font-size:12px}:host .rd-form-item.rd-form-item-normal.rd-focus ::ng-deep .rd-form-item-select,:host .rd-form-item.rd-form-item-normal.rd-has-value ::ng-deep .rd-form-item-select{top:10px}:host .rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}:host .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none;transition:transform .2s ease}:host .rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}:host .rd-form-item-error img{width:16px}\n"] }]
1086
- }], propDecorators: { errorMessage: [{
1482
+ args: [{ selector: 'app-rd-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n nz-button\n [nzType]=\"nzType\"\n [nzShape]=\"nzShape\"\n [nzSize]=\"nzSize\"\n [nzGhost]=\"ghost\"\n [nzDanger]=\"danger || type === 'danger'\"\n [nzBlock]=\"block\"\n [nzLoading]=\"loading\"\n [disabled]=\"disabled\"\n [type]=\"htmlType\"\n [ngClass]=\"buttonClasses\"\n [ngStyle]=\"{ 'min-width': minWidth + 'px' }\"\n (click)=\"onClick($event)\"\n class=\"rd-button-native\"\n>\n <span class=\"rd-button-content\">\n <ng-content></ng-content>\n </span>\n</button>\n", styles: [".rd-button-native{transition:all .3s ease;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:4px;border:1px solid transparent;cursor:pointer}.rd-button-native:focus{outline:none}.rd-button-native:disabled{cursor:not-allowed}.rd-button-primary{height:44px;padding:0 24px;color:var(--rd-btn-solid-primary-fg-default);background-color:var(--rd-btn-solid-primary-bg-default);border:1px solid var(--rd-btn-solid-primary-bg-default)}.rd-button-primary:hover,.rd-button-primary:active,.rd-button-primary:focus{border:1px solid var(--rd-btn-solid-primary-bg-hover);background-color:var(--rd-btn-solid-primary-bg-hover)}.rd-button-primary:disabled{background-color:var(--rd-btn-solid-primary-bg-disable)!important;border:1px solid var(--rd-btn-solid-primary-bg-disable)!important;color:var(--rd-btn-solid-primary-fg-disable)!important}.rd-button-default{height:44px;padding:0 24px;border-radius:4px;border:1px solid var(--rd-btn-outline-primary-border-default);color:var(--rd-btn-outline-primary-fg-default);background-color:transparent;font-size:14px;line-height:22px}.rd-button-default:hover,.rd-button-default:active,.rd-button-default:focus{border:1px solid var(--rd-btn-outline-primary-border-hover);color:var(--rd-btn-outline-primary-fg-hover);background-color:transparent}.rd-button-default:disabled{background-color:transparent!important;border:1px solid var(--rd-btn-outline-primary-border-disable)!important;color:var(--rd-btn-outline-primary-fg-disable)!important}.rd-button-danger{height:44px;padding:0 24px;border-radius:4px;border:1px solid var(--rd-btn-solid-danger-bg-default);color:var(--rd-btn-solid-danger-fg-default)!important;background-color:var(--rd-btn-solid-danger-bg-default)}.rd-button-danger:hover,.rd-button-danger:active,.rd-button-danger:focus{background-color:var(--rd-btn-solid-danger-bg-hover)!important;border:1px solid var(--rd-btn-solid-danger-bg-hover);color:var(--rd-btn-solid-danger-fg-hover)!important}.rd-button-yellow{height:44px;padding:0 24px;border-radius:8px!important;border:1px solid #fcd535;color:#000;background-color:#fcd535}.rd-button-yellow:active{border:1px solid #d9a23a;background-color:#d9a23a}.rd-button-yellow:disabled{background-color:#242e3c!important;border:1px solid #242e3c!important;color:#4b5563!important}.rd-button-gray{--antd-wave-shadow-color: #ededed;height:44px;padding:0 24px;border-radius:8px!important;border:1px solid #ededed;color:#000;background-color:#ededed}.rd-button-gray:active{border:1px solid #e5e5e5;background-color:#e5e5e5}.rd-button-gray:disabled{background-color:#242e3c!important;border:1px solid #242e3c!important;color:#4b5563!important}.rd-button-link{font-size:13px;line-height:18px;color:var(--rd-copy-brand);background:transparent;border:none;padding:0;height:auto}.rd-button-link:hover,.rd-button-link:active,.rd-button-link:focus{color:var(--rd-copy-brand-hover);text-decoration:underline}.rd-button-text{color:var(--rd-copy-brand);background:transparent;border:none;padding:0 16px;height:auto}.rd-button-text:hover,.rd-button-text:active,.rd-button-text:focus{color:var(--rd-copy-brand-hover)}.rd-button-size-large{height:48px;padding:0 32px;font-size:16px}.rd-button-size-small{height:32px!important;padding:0 16px!important;font-size:13px;font-weight:500;line-height:18px}.rd-button-size-small.rd-button-primary{border:1px solid var(--rd-btn-solid-primary-bg-default);background-color:var(--rd-btn-solid-primary-bg-default)}.rd-button-size-small.rd-button-primary:hover,.rd-button-size-small.rd-button-primary:active,.rd-button-size-small.rd-button-primary:focus{border:1px solid var(--rd-btn-solid-primary-bg-hover);background-color:var(--rd-btn-solid-primary-bg-hover)}.rd-button-size-small.rd-button-default{border:1px solid var(--rd-btn-outline-primary-border-default);color:var(--rd-btn-outline-primary-fg-default);background-color:transparent}.rd-button-size-small.rd-button-default:hover,.rd-button-size-small.rd-button-default:active,.rd-button-size-small.rd-button-default:focus{border:1px solid var(--rd-btn-outline-primary-border-hover);color:var(--rd-btn-outline-primary-fg-hover);background-color:transparent}.rd-button-size-small.rd-button-yellow{border:1px solid #fcd535;background-color:#fcd535;color:#000}.rd-button-size-small.rd-button-yellow:active{border:1px solid #d9a23a;background-color:#d9a23a}.rd-button-size-small.rd-button-gray{border:1px solid #ededed;background-color:#ededed;color:#000}.rd-button-size-small.rd-button-gray:active{border:1px solid #e5e5e5;background-color:#e5e5e5}.rd-button-shape-circle{border-radius:50%;width:44px;height:44px;padding:0}.rd-button-shape-circle.rd-button-size-small{width:32px!important;height:32px!important}.rd-button-shape-circle.rd-button-size-large{width:48px;height:48px}.rd-button-shape-round{border-radius:22px}.rd-button-shape-round.rd-button-size-small{border-radius:16px}.rd-button-shape-round.rd-button-size-large{border-radius:24px}.rd-button-block{display:block;width:100%}.rd-button-ghost{background-color:transparent!important}.rd-button-ghost.rd-button-primary{border:1px solid var(--rd-btn-ghost-primary-fg-default);color:var(--rd-btn-ghost-primary-fg-default)}.rd-button-ghost.rd-button-primary:hover,.rd-button-ghost.rd-button-primary:active,.rd-button-ghost.rd-button-primary:focus{border:1px solid var(--rd-btn-ghost-primary-fg-hover);background-color:transparent;color:var(--rd-btn-ghost-primary-fg-hover)}.rd-button-ghost.rd-button-default{border:1px solid var(--rd-btn-outline-primary-border-default);color:var(--rd-btn-outline-primary-fg-default);background:transparent}.rd-button-ghost.rd-button-danger{border:1px solid var(--rd-btn-ghost-danger-fg-default);color:var(--rd-btn-ghost-danger-fg-default)}.rd-button-ghost.rd-button-yellow{border:1px solid #f9ba43;color:#f9ba43}.rd-button-ghost.rd-button-gray{border:1px solid #d1d1d1;color:#d1d1d1}.rd-button-dashed{border-style:dashed}.rd-button-content{display:inline-flex;align-items:center;gap:8px}.rd-button-icon{font-size:14px;line-height:1}.rd-button-loading-icon{margin-right:4px}.rd-button-icon-only .rd-button-content{display:none}.rd-button-icon-only .rd-button-icon{margin:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:host ::ng-deep .ant-btn{font-family:inherit;line-height:1.5715;box-shadow:none}:host ::ng-deep .ant-btn:focus{outline:none}\n"] }]
1483
+ }], propDecorators: { type: [{
1484
+ type: Input
1485
+ }], size: [{
1486
+ type: Input
1487
+ }], shape: [{
1087
1488
  type: Input
1088
1489
  }], disabled: [{
1089
1490
  type: Input
1090
- }], label: [{
1491
+ }], loading: [{
1091
1492
  type: Input
1092
- }], type: [{
1493
+ }], block: [{
1093
1494
  type: Input
1094
- }], focus: [{
1495
+ }], htmlType: [{
1095
1496
  type: Input
1096
- }], value: [{
1497
+ }], ghost: [{
1097
1498
  type: Input
1098
- }], size: [{
1499
+ }], dashed: [{
1500
+ type: Input
1501
+ }], icon: [{
1502
+ type: Input
1503
+ }], danger: [{
1504
+ type: Input
1505
+ }], click: [{
1506
+ type: Output
1507
+ }], minWidth: [{
1508
+ type: Input
1509
+ }], theme: [{
1099
1510
  type: Input
1511
+ }], hostThemeLight: [{
1512
+ type: HostBinding,
1513
+ args: ['class.theme-light']
1514
+ }], hostThemeDark: [{
1515
+ type: HostBinding,
1516
+ args: ['class.theme-dark']
1100
1517
  }] } });
1101
1518
 
1102
- class CustomSelectComponent {
1519
+ class RdSelectComponent {
1103
1520
  set options(val) {
1104
1521
  this._rawOptions = val;
1105
1522
  this.filteredOptions = val;
@@ -1107,6 +1524,53 @@ class CustomSelectComponent {
1107
1524
  get options() {
1108
1525
  return this._rawOptions;
1109
1526
  }
1527
+ // 计算选中的数量
1528
+ get selectedCount() {
1529
+ if (this.nzMode === 'multiple') {
1530
+ return Array.isArray(this.nativeValue) ? this.nativeValue.length : 0;
1531
+ }
1532
+ return this.nativeValue !== undefined && this.nativeValue !== null ? 1 : 0;
1533
+ }
1534
+ get dropdownClassNames() {
1535
+ const classes = [];
1536
+ // 基础类名
1537
+ if (this.nzMode === 'multiple') {
1538
+ classes.push('rd-form-item-multiple-select-dropdown');
1539
+ }
1540
+ else {
1541
+ classes.push('rd-form-item-select-dropdown');
1542
+ }
1543
+ // 条件类名
1544
+ if (this.showTopHint) {
1545
+ classes.push('has-top-hint');
1546
+ }
1547
+ return classes;
1548
+ }
1549
+ get isShowMaxCount() {
1550
+ // hack
1551
+ return this.nzMaxMultipleCount < 10000;
1552
+ }
1553
+ onResize() {
1554
+ this.updateIsMobile();
1555
+ }
1556
+ // 清空所有选项
1557
+ clearAll() {
1558
+ if (this.nzMode === 'multiple') {
1559
+ if (!this.isMobile) {
1560
+ this.nativeValue = [];
1561
+ this.value = [];
1562
+ }
1563
+ this.drawerSelectValue = [];
1564
+ }
1565
+ else {
1566
+ this.nativeValue = undefined;
1567
+ this.value = undefined;
1568
+ this.drawerSelectValue = [];
1569
+ }
1570
+ this.onChange(this.value);
1571
+ this.valueChange.emit(this.value);
1572
+ this.cdr.markForCheck();
1573
+ }
1110
1574
  get currentErrorMessage() {
1111
1575
  var _a, _b, _c;
1112
1576
  if (!((_a = this.control) === null || _a === void 0 ? void 0 : _a.errors))
@@ -1116,32 +1580,37 @@ class CustomSelectComponent {
1116
1580
  switch (firstError) {
1117
1581
  case 'required':
1118
1582
  return (msg ||
1119
- `${getTranslation(this.lang, 'pleaseEnter')}${this.label.toLowerCase()}`);
1583
+ `${this.translate.instant('please_select')}${this.label.toLowerCase()}`);
1120
1584
  case 'custom':
1121
1585
  return (((_c = this.control) === null || _c === void 0 ? void 0 : _c.errors['custom']) ||
1122
- getTranslation(this.lang, 'validationFailed'));
1586
+ this.translate.instant('validation_failed'));
1123
1587
  default:
1124
- return (this.errorMessages[firstError] ||
1125
- getTranslation(this.lang, 'validationFailed'));
1588
+ return (this.translate.instant(this.errorMessages[firstError]) ||
1589
+ this.translate.instant('validation_failed'));
1126
1590
  }
1127
1591
  }
1128
1592
  get showError() {
1129
1593
  var _a, _b, _c;
1130
1594
  return (!!((_a = this.control) === null || _a === void 0 ? void 0 : _a.invalid) && (((_b = this.control) === null || _b === void 0 ? void 0 : _b.touched) || ((_c = this.control) === null || _c === void 0 ? void 0 : _c.dirty)));
1131
1595
  }
1132
- constructor(cdr) {
1596
+ constructor(cdr, translate) {
1133
1597
  this.cdr = cdr;
1134
- this.lang = 'en';
1598
+ this.translate = translate;
1135
1599
  this.label = '';
1136
1600
  this.name = '';
1137
1601
  this.disabled = false;
1138
1602
  this.nzMode = 'default';
1603
+ this.nzMaxMultipleCount = 100;
1139
1604
  this.isLoading = false;
1140
1605
  this.isShowSearch = false;
1141
1606
  this.isRemoteSearch = false;
1607
+ this.placeholder = '';
1608
+ this.isRquired = true;
1609
+ this.isShowErrorTip = true; // 问卷外部已经有错误提示了,这里需要忽略
1610
+ this.isSearchWidthAuto = false;
1142
1611
  this.errorMessages = {
1143
- pattern: 'Invalid format',
1144
- custom: 'Validation failed',
1612
+ pattern: 'invalid_format',
1613
+ custom: 'validation_failed',
1145
1614
  };
1146
1615
  this.searchChange = new EventEmitter();
1147
1616
  this.valueChange = new EventEmitter();
@@ -1150,12 +1619,170 @@ class CustomSelectComponent {
1150
1619
  this.filteredOptions = [];
1151
1620
  this.value = undefined;
1152
1621
  this.nativeValue = undefined;
1622
+ this.drawerSelectValue = undefined;
1153
1623
  this.searchInput = '';
1624
+ this.businessLocation = false;
1625
+ this.businessLocationTitle = '';
1154
1626
  this.onChange = () => { };
1155
1627
  this.onTouched = () => { };
1156
1628
  this.isFocus = false;
1157
1629
  this.isOpen = false;
1630
+ this.isComponentReady = false;
1158
1631
  this.control = null;
1632
+ this.searchTerm = '';
1633
+ this.drawerOpen = false;
1634
+ this.modalOpen = false;
1635
+ this.showSelectedCount = false; // 新增:是否显示选中计数
1636
+ this.showClearAll = false; // 新增:是否显示清空按钮
1637
+ this.selectedLabel = 'Selected:';
1638
+ this.clearAllLabel = 'Clear all';
1639
+ this.showTopHint = false; // 新增:是否显示顶部提示
1640
+ this.topHintText = 'You can choose up to 3 locations'; // 顶部提示文本
1641
+ // 响应式:是否是移动端
1642
+ this.isMobile = false;
1643
+ this.updateIsMobile();
1644
+ const mq = window.matchMedia('(max-width: 997px)');
1645
+ if (mq.addEventListener) {
1646
+ mq.addEventListener('change', () => this.updateIsMobile());
1647
+ }
1648
+ else {
1649
+ mq.addListener(() => this.updateIsMobile());
1650
+ }
1651
+ }
1652
+ updateIsMobile() {
1653
+ this.isMobile = window.matchMedia('(max-width: 997px)').matches;
1654
+ }
1655
+ openDrawer() {
1656
+ if (this.disabled)
1657
+ return;
1658
+ this.searchTerm = '';
1659
+ if (!this.isMobile && this.businessLocation && this.nzMode === 'multiple') {
1660
+ this.modalOpen = true;
1661
+ }
1662
+ else {
1663
+ this.drawerOpen = true;
1664
+ }
1665
+ this.drawerSelectValue = this.nativeValue;
1666
+ this.filteredOptions = this.options;
1667
+ }
1668
+ getDrawerSelectValueLen() {
1669
+ var _a;
1670
+ if (Array.isArray(this.drawerSelectValue)) {
1671
+ return (_a = this.drawerSelectValue) === null || _a === void 0 ? void 0 : _a.length;
1672
+ }
1673
+ else {
1674
+ return 0;
1675
+ }
1676
+ }
1677
+ closeDrawer() {
1678
+ this.drawerOpen = false;
1679
+ this.filteredOptions = this.options;
1680
+ this.searchTerm = '';
1681
+ }
1682
+ closeModal() {
1683
+ this.modalOpen = false;
1684
+ this.filteredOptions = this.options;
1685
+ this.searchTerm = '';
1686
+ }
1687
+ // 获取抽屉中已选中的数量
1688
+ get drawerSelectedCount() {
1689
+ if (Array.isArray(this.drawerSelectValue)) {
1690
+ return this.drawerSelectValue.length;
1691
+ }
1692
+ return this.drawerSelectValue ? 1 : 0;
1693
+ }
1694
+ // 检查选项是否应该被禁用
1695
+ getOptionDisabled(option) {
1696
+ // 如果选项本身被禁用,直接返回true
1697
+ if (option.disabled) {
1698
+ return true;
1699
+ }
1700
+ // 如果当前不是多选模式,返回选项的disabled状态
1701
+ if (this.nzMode !== 'multiple') {
1702
+ return false;
1703
+ }
1704
+ // 在移动端抽屉中,检查是否达到最大选择数量
1705
+ if ((this.isMobile && this.businessLocation && this.drawerOpen) ||
1706
+ (!this.isMobile && this.businessLocation && this.modalOpen)) {
1707
+ // 如果已经达到最大选择数量,并且当前选项没有被选中,则禁用
1708
+ if (this.drawerSelectedCount >= this.nzMaxMultipleCount) {
1709
+ return !this.isValueSelected(option.value);
1710
+ }
1711
+ }
1712
+ return false;
1713
+ }
1714
+ // 修改 onCheckboxChange 方法,添加数量限制
1715
+ onCheckboxChange(selectedValues) {
1716
+ // 检查是否超过最大选择数量
1717
+ if (this.nzMode === 'multiple' &&
1718
+ selectedValues.length > this.nzMaxMultipleCount) {
1719
+ // 如果超过最大数量,只保留前 nzMaxMultipleCount 个
1720
+ selectedValues = selectedValues.slice(0, this.nzMaxMultipleCount);
1721
+ }
1722
+ let newDrawerValue;
1723
+ if (this.searchTerm) {
1724
+ // 在搜索状态下,合并历史选中值和当前选中值
1725
+ const currentDrawerValue = Array.isArray(this.drawerSelectValue)
1726
+ ? this.drawerSelectValue
1727
+ : [];
1728
+ // 找出被取消勾选的值
1729
+ const previousFilteredValues = this.filteredOptions
1730
+ .map((opt) => opt.value)
1731
+ .filter((value) => currentDrawerValue.includes(value));
1732
+ const deselectedValues = previousFilteredValues.filter((value) => !selectedValues.includes(value));
1733
+ // 从当前抽屉值中移除被取消勾选的值
1734
+ const remainingValues = currentDrawerValue.filter((value) => !deselectedValues.includes(value));
1735
+ // 合并剩余值和当前选中值(去重)
1736
+ newDrawerValue = [...new Set([...remainingValues, ...selectedValues])];
1737
+ // 再次检查是否超过最大数量
1738
+ if (newDrawerValue.length > this.nzMaxMultipleCount) {
1739
+ newDrawerValue = newDrawerValue.slice(0, this.nzMaxMultipleCount);
1740
+ }
1741
+ }
1742
+ else {
1743
+ // 非搜索状态下,直接使用当前选中值,但确保不超过最大数量
1744
+ newDrawerValue =
1745
+ selectedValues.length > this.nzMaxMultipleCount
1746
+ ? selectedValues.slice(0, this.nzMaxMultipleCount)
1747
+ : selectedValues;
1748
+ }
1749
+ this.drawerSelectValue = newDrawerValue;
1750
+ }
1751
+ // 修改多选移动端下一步的方法
1752
+ multSelectMobileNext() {
1753
+ // 确保选择数量不超过最大限制
1754
+ if (Array.isArray(this.drawerSelectValue) &&
1755
+ this.drawerSelectValue.length > this.nzMaxMultipleCount) {
1756
+ // 如果超过最大数量,截取前n个
1757
+ this.drawerSelectValue = this.drawerSelectValue.slice(0, this.nzMaxMultipleCount);
1758
+ }
1759
+ this.handleValueChange(this.drawerSelectValue);
1760
+ this.closeDrawer();
1761
+ this.closeModal();
1762
+ }
1763
+ getDisableNext() {
1764
+ var _a;
1765
+ if (Array.isArray(this.drawerSelectValue)) {
1766
+ return ((_a = this.drawerSelectValue) === null || _a === void 0 ? void 0 : _a.length) > this.nzMaxMultipleCount;
1767
+ }
1768
+ else {
1769
+ return false;
1770
+ }
1771
+ }
1772
+ doMobileSearch(value) {
1773
+ this.filteredOptions = this.options.filter((opt) => opt.name.toLowerCase().includes(value.toLowerCase()));
1774
+ this.cdr.markForCheck();
1775
+ }
1776
+ isValueSelected(optionValue) {
1777
+ if (this.nzMode === 'multiple') {
1778
+ if (Array.isArray(this.drawerSelectValue)) {
1779
+ return this.drawerSelectValue.includes(optionValue);
1780
+ }
1781
+ return false;
1782
+ }
1783
+ else {
1784
+ return this.drawerSelectValue === optionValue;
1785
+ }
1159
1786
  }
1160
1787
  validate(control) {
1161
1788
  if (control) {
@@ -1207,50 +1834,45 @@ class CustomSelectComponent {
1207
1834
  const lower = searchValue.toLowerCase();
1208
1835
  this.filteredOptions = this._rawOptions.filter((item) => { var _a; return (_a = item.name) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes(lower); });
1209
1836
  }
1210
- getCurrencyKey(value) {
1211
- const parts = value.split(/[-/]/);
1212
- const mapKeys = Object.keys(this.currencyUrlMap || {});
1213
- for (const part of parts) {
1214
- if (mapKeys.includes(part)) {
1215
- return part;
1216
- }
1217
- }
1218
- return parts[0];
1219
- }
1220
1837
  handleOpenChange(value) {
1221
1838
  this.isOpen = value;
1222
1839
  }
1840
+ ngAfterViewInit() {
1841
+ // 等待下一个变更检测周期,确保所有样式和类已应用
1842
+ setTimeout(() => {
1843
+ this.isComponentReady = true;
1844
+ this.cdr.markForCheck();
1845
+ }, 0);
1846
+ }
1223
1847
  }
1224
- CustomSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomSelectComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1225
- CustomSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomSelectComponent, selector: "app-rd-select", inputs: { lang: "lang", label: "label", customTpl: "customTpl", optionTpl: "optionTpl", name: "name", disabled: "disabled", nzMode: "nzMode", isCurrency: "isCurrency", currencyUrlMap: "currencyUrlMap", optionHeightPx: "optionHeightPx", isLoading: "isLoading", isShowSearch: "isShowSearch", isRemoteSearch: "isRemoteSearch", options: "options", errorMessages: "errorMessages" }, outputs: { searchChange: "searchChange", valueChange: "valueChange", scrollToBottomEmit: "scrollToBottomEmit" }, providers: [
1848
+ RdSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdSelectComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
1849
+ RdSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RdSelectComponent, selector: "app-rd-select", inputs: { label: "label", customTpl: "customTpl", optionTpl: "optionTpl", name: "name", disabled: "disabled", nzMode: "nzMode", isCurrency: "isCurrency", currencyUrlMap: "currencyUrlMap", optionHeightPx: "optionHeightPx", nzMaxMultipleCount: "nzMaxMultipleCount", isLoading: "isLoading", isShowSearch: "isShowSearch", isRemoteSearch: "isRemoteSearch", placeholder: "placeholder", isRquired: "isRquired", isShowErrorTip: "isShowErrorTip", isSearchWidthAuto: "isSearchWidthAuto", options: "options", errorMessages: "errorMessages", businessLocation: "businessLocation", businessLocationTitle: "businessLocationTitle", showSelectedCount: "showSelectedCount", showClearAll: "showClearAll", selectedLabel: "selectedLabel", clearAllLabel: "clearAllLabel", showTopHint: "showTopHint", topHintText: "topHintText" }, outputs: { searchChange: "searchChange", valueChange: "valueChange", scrollToBottomEmit: "scrollToBottomEmit" }, host: { listeners: { "window:resize": "onResize()" } }, providers: [
1226
1850
  {
1227
1851
  provide: NG_VALUE_ACCESSOR,
1228
- useExisting: forwardRef(() => CustomSelectComponent),
1852
+ useExisting: forwardRef(() => RdSelectComponent),
1229
1853
  multi: true,
1230
1854
  },
1231
1855
  {
1232
1856
  provide: NG_VALIDATORS,
1233
- useExisting: forwardRef(() => CustomSelectComponent),
1857
+ useExisting: forwardRef(() => RdSelectComponent),
1234
1858
  multi: true,
1235
1859
  },
1236
- ], ngImport: i0, template: "<app-rd-form-item\n [disabled]=\"disabled\"\n [focus]=\"!!searchInput || isFocus || isOpen\"\n [type]=\"'select'\"\n [label]=\"label\"\n [value]=\"nativeValue\"\n [errorMessage]=\"showError ? currentErrorMessage : ''\"\n [ngClass]=\"{\n 'rd-form-item-phone': !label,\n }\"\n>\n <nz-select\n class=\"rd-form-item-select\"\n nzBorderless\n [nzMode]=\"nzMode\"\n [nzShowArrow]=\"false\"\n [(ngModel)]=\"nativeValue\"\n [nzCustomTemplate]=\"\n customTpl\n ? customTpl\n : isCurrency\n ? currencySelectedTpl\n : defaultSelectedTpl\n \"\n (nzScrollToBottom)=\"onScrollToBottom()\"\n (ngModelChange)=\"handleValueChange($event)\"\n [disabled]=\"disabled\"\n (nzFocus)=\"isFocus = true\"\n (nzBlur)=\"isFocus = false\"\n [nzDropdownClassName]=\"\n nzMode === 'multiple'\n ? 'rd-form-item-multiple-select-dropdown'\n : 'rd-form-item-select-dropdown'\n \"\n [nzOptionOverflowSize]=\"5\"\n [nzOptionHeightPx]=\"optionHeightPx || 40\"\n [nzSuffixIcon]=\"customIcon\"\n [nzRemoveIcon]=\"removeIcon\"\n [nzShowSearch]=\"isShowSearch\"\n (nzOnSearch)=\"onSearch($event)\"\n (nzOpenChange)=\"handleOpenChange($event)\"\n >\n <nz-option\n *ngFor=\"let option of filteredOptions\"\n [nzValue]=\"option.value\"\n [nzLabel]=\"option.name || ''\"\n [nzDisabled]=\"option.disabled || false\"\n [nzCustomContent]=\"true\"\n >\n <ng-container *ngIf=\"optionTpl || isCurrency\">\n <ng-container\n *ngTemplateOutlet=\"\n isCurrency ? currencyOptionTpl : optionTpl;\n context: { $implicit: option }\n \"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!(optionTpl || isCurrency)\">\n {{ option.name }}\n </ng-container>\n </nz-option>\n <nz-option *ngIf=\"isLoading\" nzDisabled nzCustomContent>\n <nz-spin style=\"padding: 16px 0\"></nz-spin>\n </nz-option>\n </nz-select>\n</app-rd-form-item>\n\n<ng-template #defaultSelectedTpl let-selected>\n {{ selected?.nzLabel }}\n</ng-template>\n\n<ng-template #currencyOptionTpl let-option>\n <div class=\"rd-form-item-option-content\">\n <img [src]=\"option.iconUrl\" class=\"rd-token-icon\" alt=\"icon\" />\n <span>{{ option.name }}</span>\n </div>\n</ng-template>\n\n<ng-template #currencySelectedTpl let-selected let-extra>\n <div class=\"rd-form-item-option-content\">\n <img\n [src]=\"currencyUrlMap?.[getCurrencyKey(selected.nzValue)]\"\n class=\"rd-token-icon\"\n alt=\"icon\"\n />\n <span>{{ selected.nzLabel }}</span>\n </div>\n</ng-template>\n\n<ng-template #removeIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.39645 2.39645C2.59171 2.20118 2.90829 2.20118 3.10355 2.39645L6 5.29289L8.89645 2.39645C9.09171 2.20118 9.40829 2.20118 9.60355 2.39645C9.79882 2.59171 9.79882 2.90829 9.60355 3.10355L6.70711 6L9.60355 8.89645C9.79882 9.09171 9.79882 9.40829 9.60355 9.60355C9.40829 9.79882 9.09171 9.79882 8.89645 9.60355L6 6.70711L3.10355 9.60355C2.90829 9.79882 2.59171 9.79882 2.39645 9.60355C2.20118 9.40829 2.20118 9.09171 2.39645 8.89645L5.29289 6L2.39645 3.10355C2.20118 2.90829 2.20118 2.59171 2.39645 2.39645Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #customIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n", styles: ["@charset \"UTF-8\";:host .rd-form-item-select{width:100%}:host .rd-form-item-select ::ng-deep .ant-select-selection-search-input{padding:17px 5px 12px;color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500}::ng-deep .rd-form-item-phone .ant-select-selection-search-input{padding:0 5px 12px}::ng-deep .rd-form-item-phone .ant-select-single .ant-select-selector .ant-select-selection-search{position:absolute;inset:-8px 11px 0}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search{width:100%!important}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search .ant-select-selection-search-input{padding:0 0 12px!important;transform:translate(-2px,4px)!important}::ng-deep .has-top-hint .ant-select-item-option-content:has(.top-hint-option){background:transparent!important;padding-left:12px!important;cursor:default}::ng-deep .has-top-hint .ant-select-item-option-content:has(.top-hint-option):before{border:none!important}::ng-deep .rd-form-item-multiple-select-dropdown .select-footer-container{padding:16px 12px!important;border-top:1px solid var(--rd-grey-700)!important}::ng-deep .select-drawer{background-color:var(--rd-grey-900)}::ng-deep .select-drawer .select-drawer-header{padding:24px 8px 0;position:sticky;top:0;background-color:var(--rd-grey-900);z-index:1111}::ng-deep .select-drawer .select-drawer-header .header-title{display:flex;align-items:center;font-size:18px;font-weight:500;line-height:24px;justify-content:space-between}::ng-deep .select-drawer .close-btn{width:24px;height:24px;cursor:pointer}::ng-deep .select-drawer .close-btn svg{width:24px}::ng-deep .select-drawer .back-btn{width:16px;height:16px;cursor:pointer}::ng-deep .select-drawer .ant-drawer-body{padding:0 16px 24px}::ng-deep .select-drawer .ant-drawer-content{background-color:transparent;color:var(--rd-grey-50)}::ng-deep .select-drawer .cascader-drawer-search{border-radius:4px;border:1px solid var(--rd-grey-800);background:var(--rd-ashe-800);height:44px;padding:0 16px;margin-top:16px}::ng-deep .select-drawer .cascader-drawer-search::placeholder{color:var(--rd-grey-400)}::ng-deep .select-drawer .cascader-drawer-search .ant-input{background:var(--rd-ashe-800);color:var(--rd-grey-50)}::ng-deep .select-drawer .cascader-drawer-search.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:var(--rd-blue-dark-600)}::ng-deep .select-drawer .cascader-drawer-list{margin-top:16px}::ng-deep .select-drawer .cascader-drawer-option{padding:8px;min-height:44px;display:flex;align-items:flex-start;gap:8px;cursor:pointer;font-size:14px;font-weight:400;line-height:28px;line-height:1.5}::ng-deep .select-drawer .cascader-drawer-option svg{margin-left:auto;flex-shrink:0}::ng-deep .select-drawer .cascader-drawer-option-active{border-radius:4px;background:rgba(42,123,255,.3)}::ng-deep .select-drawer .cascader-drawer-option.cascader-drawer-root-option{align-items:center}::ng-deep .select-drawer .ant-checkbox-inner{border-radius:4px;background-color:var(--rd-grey-900);border:1px solid var(--rd-grey-500)}::ng-deep .select-drawer .ant-checkbox-checked .ant-checkbox-inner{background-color:var(--rd-control-input-selected)!important;border:none!important}::ng-deep .select-drawer .ant-checkbox-checked .ant-checkbox-inner:after{border:2px solid var(--rd-neutral-950);border-top:0;border-left:0}::ng-deep .select-drawer .ant-checkbox-checked:after{border-radius:4px}::ng-deep .select-drawer .ant-checkbox-disabled+span{color:var(--rd-grey-50)!important}::ng-deep .select-drawer .ant-checkbox-disabled .ant-checkbox-inner{border:1px solid var(--rd-grey-500)!important}::ng-deep .select-drawer .ant-checkbox-wrapper{font-weight:400;font-size:14px;line-height:22px;color:var(--rd-grey-50)!important}::ng-deep .select-drawer .ant-checkbox-wrapper>span{margin-left:8px}::ng-deep .select-drawer .ant-drawer-footer{padding:24px!important;border-top:1px solid var(--rd-grey-700)!important}\n", "::ng-deep .rd-form-item-select{min-width:113px;min-height:52px;max-height:100%;position:relative}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search{margin-inline-start:0}::ng-deep .rd-form-item-select .ant-select-selection-search-input{padding:12px 4px 0}::ng-deep .rd-form-item-select .ant-select-selection-search-input::placeholder{color:var(--rd-copy-disable)}::ng-deep .rd-form-item-select .ant-select-selection-search .ant-select-selection-search-input{padding:12px 4px 0;transform:translate(-2px,12px)!important}::ng-deep .rd-form-item-select .ant-select-show-search{transform:translateY(10px)}::ng-deep .rd-form-item-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:14px 16px 10px;min-height:52px;height:-moz-fit-content;height:fit-content}::ng-deep .rd-form-item-select.ant-select-single .ant-select-selector .ant-select-selection-item:after{display:none}::ng-deep .rd-form-item-select.ant-select .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selector{padding:12px 16px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item{border-radius:4px;background:var(--rd-grey-100);font-size:14px;font-weight:500;color:var(--rd-copy-primary);display:flex;align-items:center;gap:4px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item .ant-select-selection-item-remove{line-height:1}::ng-deep .rd-form-item-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px}::ng-deep .rd-form-item-select.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px;border:1px solid var(--rd-input-fg-hover);background:var(--rd-input-bg-hover);box-shadow:0 0 0 2px #367af61a}::ng-deep .rd-form-item-select .ant-select-selection-placeholder{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selection-item-content{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-select .ant-select-arrow{transition:ease-in-out .2s all;cursor:pointer;pointer-events:initial}::ng-deep .rd-form-item-select:hover:has(.ant-select-clear) .ant-select-arrow{opacity:0}::ng-deep .rd-form-item-select.ant-select-focused .ant-select-arrow,::ng-deep .rd-form-item-select .ant-select-selector:focus-within .ant-select-arrow{transform:rotate(-180deg);transition:transform .2s ease}.rd-form-item-phone ::ng-deep .ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:6px 16px 10px!important;min-height:52px!important;height:-moz-fit-content;height:fit-content}.rd-form-item-phone ::ng-deep .ant-select-show-search.ant-select-multiple .ant-select-selector{padding:6px 16px!important}::ng-deep .rd-form-item-select-s{min-height:38px}::ng-deep .rd-form-item-select-s.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{height:100%;min-height:38px;padding:0 12px}::ng-deep .rd-form-item-select-dropdown .ant-select-dropdown,::ng-deep .rd-form-item-select-dropdown-s .ant-select-dropdown,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-dropdown{border-radius:4px;background:var(--rd-bg-panel);min-width:113px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option{background-color:transparent;padding:0 6px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;padding:0 6px;display:flex;align-items:center;color:var(--rd-copy-primary);font-size:14px;min-height:40px;font-weight:600}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-active .ant-select-item-option-content{background:rgba(54,122,246,.1)}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content{color:var(--rd-copy-secondary);background:var(--rd-grey-200)}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty img,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty img,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty img{width:61px;height:68px}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty p,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty p,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty p{font-size:13px;color:var(--rd-copy-disable);font-weight:500;margin:0}::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content{padding:0 4px;min-height:32px}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;color:var(--rd-copy-primary);font-size:14px;padding:0 6px 0 32px;position:relative}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content:before{content:\"\";position:absolute;top:50%;left:6px;width:16px;height:16px;transform:translateY(-50%);border-radius:4px;border:1px solid var(--rd-grey-400)}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-selected .ant-select-item-option-content:before{background-image:url(/assets/img/icon/checkbox.svg);background-size:contain;background-position:center;background-repeat:no-repeat;border:none}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-state{display:none}::ng-deep .rd-form-item-option-content{display:flex;align-items:center;gap:8px;height:100%}::ng-deep .rd-form-item-option-content span{font-size:14px;font-weight:500}::ng-deep .rd-form-item-option-content .rd-token-icon{width:20px;height:20px;transition:opacity .3s ease-in-out}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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"] }, { kind: "component", type: i3$4.NzSpinComponent, selector: "nz-spin", inputs: ["nzIndicator", "nzSize", "nzTip", "nzDelay", "nzSimple", "nzSpinning"], exportAs: ["nzSpin"] }, { kind: "component", type: i4$1.NzOptionComponent, selector: "nz-option", inputs: ["nzLabel", "nzValue", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i4$1.NzSelectComponent, selector: "nz-select", inputs: ["nzId", "nzSize", "nzStatus", "nzOptionHeightPx", "nzOptionOverflowSize", "nzDropdownClassName", "nzDropdownMatchSelectWidth", "nzDropdownStyle", "nzNotFoundContent", "nzPlaceHolder", "nzPlacement", "nzMaxTagCount", "nzDropdownRender", "nzCustomTemplate", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "nzBorderless", "nzShowSearch", "nzLoading", "nzAutoFocus", "nzAutoClearSearchValue", "nzServerSearch", "nzDisabled", "nzOpen", "nzSelectOnTab", "nzBackdrop", "nzOptions", "nzShowArrow"], outputs: ["nzOnSearch", "nzScrollToBottom", "nzOpenChange", "nzBlur", "nzFocus"], exportAs: ["nzSelect"] }, { kind: "component", type: FormItemComponent, selector: "app-rd-form-item", inputs: ["errorMessage", "disabled", "label", "type", "focus", "value", "size"] }] });
1237
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomSelectComponent, decorators: [{
1860
+ ], ngImport: i0, template: "<!-- rd-select.component.html -->\n<div\n [class.rd-select-ready]=\"isComponentReady\"\n [class.rd-search-width-auto]=\"isSearchWidthAuto\"\n class=\"rd-select-container\"\n>\n <app-rd-form-item\n [disabled]=\"disabled\"\n [focus]=\"!!searchInput || isFocus || isOpen\"\n [type]=\"'select'\"\n [label]=\"label\"\n [value]=\"nativeValue\"\n [errorMessage]=\"showError && isShowErrorTip ? currentErrorMessage : ''\"\n [ngClass]=\"{\n 'rd-form-item-phone': !label,\n }\"\n (click)=\"openDrawer()\"\n >\n <nz-select\n class=\"rd-form-item-select\"\n [ngStyle]=\"{\n 'pointer-events':\n businessLocation && nzMode === 'multiple' ? 'none' : '',\n }\"\n nzBorderless\n [nzMode]=\"nzMode\"\n [nzShowArrow]=\"false\"\n [(ngModel)]=\"nativeValue\"\n [nzMaxMultipleCount]=\"nzMaxMultipleCount ? nzMaxMultipleCount : null\"\n [nzPlaceHolder]=\"placeholder\"\n [nzCustomTemplate]=\"\n customTpl\n ? customTpl\n : isCurrency\n ? currencySelectedTpl\n : defaultSelectedTpl\n \"\n (nzScrollToBottom)=\"onScrollToBottom()\"\n (ngModelChange)=\"handleValueChange($event)\"\n [disabled]=\"disabled\"\n (nzFocus)=\"isFocus = true\"\n (nzBlur)=\"isFocus = false\"\n [nzDropdownClassName]=\"dropdownClassNames\"\n [nzOptionOverflowSize]=\"5\"\n [nzOptionHeightPx]=\"optionHeightPx || 40\"\n [nzSuffixIcon]=\"customIcon\"\n [nzRemoveIcon]=\"removeIcon\"\n [nzShowSearch]=\"\n nzMode === 'multiple' && businessLocation ? false : isShowSearch\n \"\n (nzOnSearch)=\"onSearch($event)\"\n [name]=\"name\"\n (nzOpenChange)=\"handleOpenChange($event)\"\n [nzDropdownRender]=\"\n showSelectedCount || showClearAll ? customDropdownFooter : null\n \"\n [ngClass]=\"{\n 'rd-select-disabled-open': isMobile && businessLocation,\n }\"\n >\n <nz-option\n *ngIf=\"showTopHint && isShowMaxCount\"\n nzDisabled\n nzCustomContent\n >\n <div class=\"top-hint-option\">\n <span class=\"t14-400 c-text-primary\">{{ topHintText }}</span>\n </div>\n </nz-option>\n\n <nz-option\n *ngFor=\"let option of filteredOptions\"\n [nzValue]=\"option.value\"\n [nzLabel]=\"option.name || ''\"\n [nzDisabled]=\"option.disabled || false\"\n [nzCustomContent]=\"true\"\n >\n <ng-container *ngIf=\"optionTpl || isCurrency\">\n <ng-container\n *ngTemplateOutlet=\"\n isCurrency ? currencyOptionTpl : optionTpl;\n context: { $implicit: option }\n \"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!(optionTpl || isCurrency)\">\n <span class=\"t14-400 c-text-primary\">{{ option?.name }}</span>\n </ng-container>\n </nz-option>\n\n <nz-option *ngIf=\"isLoading\" nzDisabled nzCustomContent>\n <nz-spin style=\"padding: 16px 0\"></nz-spin>\n </nz-option>\n </nz-select>\n </app-rd-form-item>\n</div>\n\n<!-- \u81EA\u5B9A\u4E49\u4E0B\u62C9\u83DC\u5355\u5E95\u90E8 -->\n<ng-template #customDropdownFooter>\n <div class=\"select-footer-container\">\n <div\n class=\"select-footer-content d-flex justify-content-between align-items-center\"\n >\n <div>\n <!-- \u9009\u4E2D\u8BA1\u6570 -->\n <span *ngIf=\"showSelectedCount\" class=\"t14-400 c-text-primary\">\n {{ selectedLabel }}\n {{\n isMobile ? getDrawerSelectValueLen() : selectedCount\n }}/<ng-container *ngIf=\"isShowMaxCount\"\n >/{{ nzMaxMultipleCount }}\n </ng-container>\n </span>\n\n <!-- \u6E05\u7A7A\u6309\u94AE -->\n <a\n *ngIf=\"\n showClearAll &&\n (isMobile ? getDrawerSelectValueLen() : selectedCount) > 0\n \"\n class=\"b14 ml-16\"\n (click)=\"clearAll(); $event.stopPropagation()\"\n >\n {{ clearAllLabel }}\n </a>\n </div>\n\n <div>\n <app-rd-button\n type=\"primary\"\n *ngIf=\"isMobile\"\n [disabled]=\"getDisableNext()\"\n (click)=\"multSelectMobileNext()\"\n >\n {{ \"next\" | translate }}</app-rd-button\n >\n </div>\n </div>\n </div>\n</ng-template>\n\n<ng-template #customModalFooter>\n <div class=\"select-footer-container\">\n <div\n class=\"select-footer-content d-flex justify-content-between align-items-center\"\n >\n <div>\n <!-- \u9009\u4E2D\u8BA1\u6570 -->\n <span *ngIf=\"showSelectedCount\" class=\"t14-400 c-text-primary\">\n {{ selectedLabel }}\n {{ getDrawerSelectValueLen()\n }}<ng-container *ngIf=\"isShowMaxCount\"\n >/{{ nzMaxMultipleCount }}\n </ng-container>\n </span>\n\n <!-- \u6E05\u7A7A\u6309\u94AE -->\n <a\n *ngIf=\"showClearAll && getDrawerSelectValueLen() > 0\"\n class=\"b14 ml-16\"\n (click)=\"clearAll(); $event.stopPropagation()\"\n >\n {{ clearAllLabel }}\n </a>\n </div>\n\n <div>\n <app-rd-button\n type=\"primary\"\n [disabled]=\"isRquired ? getDrawerSelectValueLen() === 0 : false\"\n (click)=\"multSelectMobileNext()\"\n >\n {{ \"done\" | translate }}</app-rd-button\n >\n </div>\n </div>\n </div>\n</ng-template>\n\n<!-- \u5176\u4ED6\u6A21\u677F\u4FDD\u6301\u4E0D\u53D8 -->\n<ng-template #defaultSelectedTpl let-selected>\n {{ selected?.nzLabel }}\n</ng-template>\n\n<ng-template #currencyOptionTpl let-option>\n <div class=\"rd-form-item-option-content\">\n <img [src]=\"option.iconUrl\" class=\"rd-token-icon\" alt=\"icon\" />\n <span>{{ option.name }}</span>\n </div>\n</ng-template>\n\n<ng-template #currencySelectedTpl let-selected let-extra>\n <div class=\"rd-form-item-option-content\">\n <img\n [src]=\"currencyUrlMap?.[selected.nzValue]\"\n class=\"rd-token-icon\"\n alt=\"icon\"\n />\n <span>{{ selected.nzLabel }}</span>\n </div>\n</ng-template>\n\n<ng-template #removeIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.39645 2.39645C2.59171 2.20118 2.90829 2.20118 3.10355 2.39645L6 5.29289L8.89645 2.39645C9.09171 2.20118 9.40829 2.20118 9.60355 2.39645C9.79882 2.59171 9.79882 2.90829 9.60355 3.10355L6.70711 6L9.60355 8.89645C9.79882 9.09171 9.79882 9.40829 9.60355 9.60355C9.40829 9.79882 9.09171 9.79882 8.89645 9.60355L6 6.70711L3.10355 9.60355C2.90829 9.79882 2.59171 9.79882 2.39645 9.60355C2.20118 9.40829 2.20118 9.09171 2.39645 8.89645L5.29289 6L2.39645 3.10355C2.20118 2.90829 2.20118 2.59171 2.39645 2.39645Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #customIcon>\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<nz-drawer\n [nzVisible]=\"drawerOpen && isMobile && businessLocation\"\n [nzPlacement]=\"'bottom'\"\n [nzHeight]=\"'70vh'\"\n [nzTitle]=\"''\"\n [nzClosable]=\"false\"\n [nzFooter]=\"customDropdownFooter\"\n nzWrapClassName=\"select-drawer\"\n (nzOnClose)=\"closeDrawer()\"\n>\n <div *nzDrawerContent>\n <div class=\"select-drawer-header\">\n <div class=\"header-title\">\n <div>\n {{\n (businessLocation ? \"select_nature_of_business\" : \" \") | translate\n }}\n </div>\n <div class=\"close-btn\" (click)=\"closeDrawer()\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n class=\"w-full\"\n >\n <path\n d=\"M3.40039 3.3999L8.00039 7.9999M12.6004 12.5999L8.00039 7.9999M8.00039 7.9999L12.6004 3.3999L3.40039 12.5999\"\n stroke=\"var(--rd-copy-primary)\"\n stroke-width=\"1.36\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n </div>\n </div>\n\n <nz-input-group\n class=\"cascader-drawer-search\"\n [nzPrefix]=\"prefixIconSearch\"\n nzClearable\n >\n <input\n nz-input\n [placeholder]=\"'search' | translate\"\n [(ngModel)]=\"searchTerm\"\n (ngModelChange)=\"doMobileSearch($event)\"\n />\n </nz-input-group>\n </div>\n\n <div class=\"cascader-drawer-list\">\n <div *ngIf=\"isShowMaxCount\" class=\"my-16 ml-8\">\n <span class=\"t14-400 c-text-primary\">{{ topHintText }}</span>\n </div>\n <ng-container *ngIf=\"filteredOptions?.length\">\n <nz-checkbox-wrapper\n class=\"question-content\"\n class=\"t14-400 c-text-primary\"\n (nzOnChange)=\"onCheckboxChange($event)\"\n >\n <div *ngFor=\"let option of filteredOptions\" class=\"mb-8\">\n <label\n nz-checkbox\n [nzValue]=\"option?.value\"\n [nzDisabled]=\"getOptionDisabled(option)\"\n [nzChecked]=\"isValueSelected(option?.value)\"\n >\n <span class=\"t14-400 c-text-primary\">{{ option?.name }}</span>\n </label>\n </div>\n </nz-checkbox-wrapper>\n </ng-container>\n </div>\n </div>\n</nz-drawer>\n\n<!-- Modal for desktop business location multi-select -->\n<nz-modal\n [(nzVisible)]=\"modalOpen\"\n [nzTitle]=\"''\"\n [nzClosable]=\"false\"\n [nzFooter]=\"customModalFooter\"\n nzWrapClassName=\"select-modal\"\n (nzOnCancel)=\"closeModal()\"\n [nzWidth]=\"632\"\n [nzBodyStyle]=\"{ height: '600px' }\"\n nzCentered\n>\n <div *nzModalContent>\n <div class=\"select-modal-header\">\n <div\n class=\"header-title d-flex justify-content-between align-items-center\"\n >\n <div>\n {{\n (businessLocationTitle\n ? businessLocationTitle\n : businessLocation\n ? \"select_nature_of_business\"\n : \" \"\n ) | translate\n }}\n </div>\n <div class=\"close-btn\" (click)=\"closeModal()\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n d=\"M3.40039 3.3999L8.00039 7.9999M12.6004 12.5999L8.00039 7.9999M8.00039 7.9999L12.6004 3.3999L3.40039 12.5999\"\n stroke=\"var(--rd-copy-primary)\"\n stroke-width=\"1.36\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n </div>\n </div>\n\n <nz-input-group\n class=\"cascader-modal-search\"\n [nzPrefix]=\"prefixIconSearch\"\n nzClearable\n >\n <input\n nz-input\n [placeholder]=\"'search' | translate\"\n [(ngModel)]=\"searchTerm\"\n (ngModelChange)=\"doMobileSearch($event)\"\n />\n </nz-input-group>\n </div>\n\n <div class=\"cascader-modal-list\">\n <div class=\"mb-16\" *ngIf=\"showTopHint && isShowMaxCount\">\n <span class=\"t14-400 c-text-primary\">{{ topHintText }}</span>\n </div>\n <ng-container *ngIf=\"filteredOptions?.length\">\n <nz-checkbox-wrapper\n class=\"question-content\"\n class=\"t14-400 c-text-primary\"\n (nzOnChange)=\"onCheckboxChange($event)\"\n >\n <div *ngFor=\"let option of filteredOptions\" class=\"mb-8\">\n <label\n nz-checkbox\n [nzValue]=\"option?.value\"\n [nzDisabled]=\"getOptionDisabled(option)\"\n [nzChecked]=\"isValueSelected(option?.value)\"\n >\n <span class=\"t14-400 c-text-primary\">{{ option?.name }}</span>\n </label>\n </div>\n </nz-checkbox-wrapper>\n </ng-container>\n </div>\n </div>\n</nz-modal>\n\n<ng-template #prefixIconSearch>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n d=\"M14.4951 13.6948L11.3962 10.5959C12.3175 9.46902 12.7704 8.03122 12.6613 6.57983C12.5522 5.12844 11.8894 3.77451 10.81 2.79807C9.73066 1.82164 8.3173 1.29741 6.86227 1.33381C5.40723 1.37021 4.02185 1.96445 2.99266 2.99364C1.96348 4.02282 1.36923 5.4082 1.33283 6.86323C1.29643 8.31826 1.82066 9.73162 2.7971 10.811C3.77354 11.8903 5.12747 12.5531 6.57887 12.6622C8.03026 12.7713 9.46807 12.3184 10.5949 11.3972L13.6938 14.5032C13.8027 14.6073 13.9474 14.6656 14.098 14.6663C14.2105 14.6661 14.3204 14.6325 14.4138 14.5697C14.5071 14.5069 14.5796 14.4178 14.6222 14.3136C14.6648 14.2095 14.6754 14.0951 14.6528 13.9849C14.6302 13.8747 14.5753 13.7737 14.4951 13.6948ZM7.00667 11.5461C6.10905 11.5461 5.23158 11.2799 4.48523 10.7812C3.73889 10.2825 3.15718 9.57372 2.81367 8.74443C2.47017 7.91513 2.38029 7.0026 2.55541 6.12223C2.73053 5.24185 3.16277 4.43317 3.79749 3.79846C4.43221 3.16375 5.24088 2.7315 6.12126 2.55638C7.00164 2.38127 7.91417 2.47114 8.74347 2.81465C9.57277 3.15815 10.2816 3.73986 10.7803 4.4862C11.279 5.23255 11.5451 6.11001 11.5451 7.00763C11.5433 8.21073 11.0645 9.36402 10.2138 10.2147C9.36306 11.0655 8.20977 11.5442 7.00667 11.5461Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n", styles: ["@charset \"UTF-8\";:host .rd-select-container{visibility:hidden}:host .rd-select-container.rd-select-ready{visibility:visible}:host .rd-form-item-select{width:100%}:host .rd-form-item-select ::ng-deep .ant-select-selection-search-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500}:host .rd-form-item-select ::ng-deep .ant-select-selection-placeholder{color:var(--rd-copy-disable)!important}:host .rd-select-disabled-open{pointer-events:none}::ng-deep .rd-form-item-phone .ant-select-selection-search-input{padding:0 5px 12px}::ng-deep .rd-form-item-phone .ant-select-single .ant-select-selector .ant-select-selection-search{position:absolute;inset:-8px 11px 0}::ng-deep .rd-select-container:not(.rd-search-width-auto) .rd-form-item-select.ant-select-multiple .ant-select-selection-search{width:100%!important}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search .ant-select-selection-search-input{padding:0 0 12px!important;transform:translate(-2px,4px)!important}::ng-deep .has-top-hint .ant-select-item-option-content:has(.top-hint-option){background:transparent!important;padding-left:12px!important;cursor:default}::ng-deep .has-top-hint .ant-select-item-option-content:has(.top-hint-option):before{border:none!important}::ng-deep .rd-form-item-multiple-select-dropdown .select-footer-container{padding:16px 12px!important;border-top:1px solid var(--rd-grey-700)!important}::ng-deep .select-drawer{background-color:var(--rd-bg-website)}::ng-deep .select-drawer .select-drawer-header{padding:24px 8px 0;position:sticky;top:0;background-color:var(--rd-bg-website);z-index:1111}::ng-deep .select-drawer .select-drawer-header .header-title{display:flex;align-items:center;font-size:18px;font-weight:500;line-height:24px;justify-content:space-between}::ng-deep .select-drawer .close-btn{width:24px;height:24px;cursor:pointer}::ng-deep .select-drawer .close-btn svg{width:24px}::ng-deep .select-drawer .back-btn{width:16px;height:16px;cursor:pointer}::ng-deep .select-drawer .ant-drawer-body{padding:0 16px 24px}::ng-deep .select-drawer .ant-drawer-content{background-color:transparent;color:var(--rd-copy-primary)}::ng-deep .select-drawer .cascader-drawer-search{border-radius:4px;border:1px solid var(--rd-input-fg-default);background:var(--rd-input-bg-default);height:44px;padding:0 16px;margin-top:16px}::ng-deep .select-drawer .cascader-drawer-search::placeholder{color:var(--rd-copy-disable)}::ng-deep .select-drawer .cascader-drawer-search .ant-input{background:var(--rd-input-bg-default);color:var(--rd-copy-primary)}::ng-deep .select-drawer .cascader-drawer-search.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:var(--rd-input-fg-hover)}::ng-deep .select-drawer .cascader-drawer-list{margin-top:16px}::ng-deep .select-drawer .cascader-drawer-option{padding:8px;min-height:44px;display:flex;align-items:flex-start;gap:8px;cursor:pointer;font-size:14px;font-weight:400;line-height:28px;line-height:1.5}::ng-deep .select-drawer .cascader-drawer-option svg{margin-left:auto;flex-shrink:0}::ng-deep .select-drawer .cascader-drawer-option-active{border-radius:4px;background:rgba(42,123,255,.3)}::ng-deep .select-drawer .cascader-drawer-option.cascader-drawer-root-option{align-items:center}::ng-deep .select-drawer .ant-checkbox-inner{border-radius:4px;background-color:var(--rd-control-input-empty);border:1px solid var(--rd-control-border-empty)}::ng-deep .select-drawer .ant-checkbox-checked .ant-checkbox-inner{background-color:var(--rd-control-input-selected)!important;border:none!important}::ng-deep .select-drawer .ant-checkbox-checked .ant-checkbox-inner:after{border:2px solid var(--rd-copy-inverse);border-top:0;border-left:0}::ng-deep .select-drawer .ant-checkbox-checked:after{border-radius:4px}::ng-deep .select-drawer .ant-checkbox-disabled+span{color:var(--rd-copy-primary)!important}::ng-deep .select-drawer .ant-checkbox-disabled .ant-checkbox-inner{border:1px solid var(--rd-control-border-empty)!important}::ng-deep .select-drawer .ant-checkbox-wrapper{font-weight:400;font-size:14px;line-height:22px;color:var(--rd-copy-primary)!important}::ng-deep .select-drawer .ant-checkbox-wrapper>span{margin-left:8px}::ng-deep .select-drawer .ant-drawer-footer{padding:24px!important;border-top:1px solid var(--rd-grey-700)!important}::ng-deep .select-modal .ant-modal-content{background-color:var(--rd-bg-panel);border-radius:8px}::ng-deep .select-modal .ant-checkbox{margin-right:8px}::ng-deep .select-modal .ant-checkbox>span{border-radius:4px}::ng-deep .select-modal .select-modal-header{padding:24px 0 0;position:sticky;top:0;background-color:var(--rd-bg-panel);z-index:1111}::ng-deep .select-modal .select-modal-header .header-title{display:flex;align-items:center;font-size:18px;font-weight:500;line-height:24px;color:var(--rd-copy-primary);justify-content:space-between}::ng-deep .select-modal .close-btn{width:24px;height:24px;cursor:pointer}::ng-deep .select-modal .close-btn svg{width:24px}::ng-deep .select-modal .back-btn{width:16px;height:16px;cursor:pointer}::ng-deep .select-modal .cascader-modal-search{border-radius:4px;border:1px solid var(--rd-grey-200);background:var(--rd-bg-panel);height:44px;padding:0 16px;margin-top:16px}::ng-deep .select-modal .cascader-modal-search::placeholder{color:var(--rd-copy-disable)}::ng-deep .select-modal .cascader-modal-search .ant-input{background:var(--rd-bg-panel);color:var(--rd-copy-primary);box-shadow:none;outline:none}::ng-deep .select-modal .cascader-modal-search.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:var(--rd-input-fg-hover)}::ng-deep .select-modal .cascader-modal-list{margin-top:16px;overflow-y:auto;height:460px}::ng-deep .select-modal .ant-modal-body{padding:0 24px 24px}::ng-deep .select-modal .ant-modal-footer{padding:24px!important;border-top:1px solid var(--rd-grey-200)!important;background-color:var(--rd-bg-panel)}::ng-deep .select-modal .ant-modal-close{display:none}\n", "::ng-deep .rd-form-item-select{min-width:113px;min-height:52px;max-height:100%;position:relative}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search{margin-inline-start:0}::ng-deep .rd-form-item-select .ant-select-selection-search-input{padding:12px 4px 0}::ng-deep .rd-form-item-select .ant-select-selection-search-input::placeholder{color:var(--rd-copy-disable)}::ng-deep .rd-form-item-select .ant-select-selection-search .ant-select-selection-search-input{padding:12px 4px 0;transform:translate(-2px,12px)!important}::ng-deep .rd-form-item-select .ant-select-show-search{transform:translateY(10px)}::ng-deep .rd-form-item-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:14px 16px 10px;min-height:52px;height:-moz-fit-content;height:fit-content}.rd-form-item-phone ::ng-deep .rd-form-item-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:6px 16px 10px;min-height:52px;height:-moz-fit-content;height:fit-content}.rd-form-item-phone ::ng-deep .rd-form-item-select.ant-select-show-search.ant-select-multiple .ant-select-selector{padding:6px 16px}::ng-deep .rd-form-item-select.ant-select-single .ant-select-selector .ant-select-selection-item:after{display:none}::ng-deep .rd-form-item-select.ant-select .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selector{padding:12px 16px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item{border-radius:4px;background:transparent;font-size:14px;font-weight:500;color:var(--rd-copy-primary);display:flex;align-items:center;gap:4px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item .ant-select-selection-item-remove{line-height:1}::ng-deep .rd-form-item-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px}::ng-deep .rd-form-item-select.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px;border:1px solid var(--rd-input-fg-hover);background:var(--rd-input-bg-hover);box-shadow:0 0 0 2px #367af61a}::ng-deep .rd-form-item-select .ant-empty-description{font-weight:400;font-size:14px;line-height:22px;color:var(--rd-copy-primary)}::ng-deep .rd-form-item-select .ant-select-selection-placeholder{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selection-item-content{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-select .ant-select-arrow{transition:ease-in-out .2s all;cursor:pointer;pointer-events:initial}::ng-deep .rd-form-item-select:hover:has(.ant-select-clear) .ant-select-arrow{opacity:0}::ng-deep .rd-form-item-select.ant-select-focused .ant-select-arrow,::ng-deep .rd-form-item-select .ant-select-selector:focus-within .ant-select-arrow{transform:rotate(-180deg);transition:transform .2s ease}::ng-deep .rd-form-item-select-s{min-height:38px}::ng-deep .rd-form-item-select-s.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{height:100%;min-height:38px;padding:0 12px}::ng-deep .rd-form-item-select-dropdown .ant-select-dropdown,::ng-deep .rd-form-item-select-dropdown-s .ant-select-dropdown,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-dropdown{border-radius:4px;background:var(--rd-bg-panel);min-width:113px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option{background-color:transparent;padding:0 6px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;padding:0 6px;display:flex;align-items:center;color:var(--rd-copy-primary);font-size:14px;min-height:40px;font-weight:600}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-active .ant-select-item-option-content{background:rgba(54,122,246,.1)}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content{color:var(--rd-copy-secondary);background:var(--rd-grey-200)}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty img,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty img,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty img{width:61px;height:68px}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty p,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty p,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty p{font-size:13px;color:var(--rd-copy-disable);font-weight:500;margin:0}::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content{padding:0 4px;min-height:32px}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;color:var(--rd-copy-primary);font-size:14px;padding:0 6px 0 32px;position:relative}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content:before{content:\"\";position:absolute;top:50%;left:6px;width:16px;height:16px;transform:translateY(-50%);border-radius:4px;border:1px solid var(--rd-grey-400)}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-selected .ant-select-item-option-content:before{background-image:url(/assets/img/icon/checkbox.svg);background-size:contain;background-position:center;background-repeat:no-repeat;border:none}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-state{display:none}::ng-deep .rd-form-item-option-content{display:flex;align-items:center;gap:8px;height:100%}::ng-deep .rd-form-item-option-content span{font-size:14px;font-weight:500}::ng-deep .rd-form-item-option-content .rd-token-icon{width:20px;height:20px;transition:opacity .3s ease-in-out}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$2.NzSpinComponent, selector: "nz-spin", inputs: ["nzIndicator", "nzSize", "nzTip", "nzDelay", "nzSimple", "nzSpinning"], exportAs: ["nzSpin"] }, { kind: "component", type: i2$1.NzOptionComponent, selector: "nz-option", inputs: ["nzLabel", "nzValue", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i2$1.NzSelectComponent, selector: "nz-select", inputs: ["nzId", "nzSize", "nzStatus", "nzOptionHeightPx", "nzOptionOverflowSize", "nzDropdownClassName", "nzDropdownMatchSelectWidth", "nzDropdownStyle", "nzNotFoundContent", "nzPlaceHolder", "nzPlacement", "nzMaxTagCount", "nzDropdownRender", "nzCustomTemplate", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "nzBorderless", "nzShowSearch", "nzLoading", "nzAutoFocus", "nzAutoClearSearchValue", "nzServerSearch", "nzDisabled", "nzOpen", "nzSelectOnTab", "nzBackdrop", "nzOptions", "nzShowArrow"], outputs: ["nzOnSearch", "nzScrollToBottom", "nzOpenChange", "nzBlur", "nzFocus"], exportAs: ["nzSelect"] }, { kind: "component", type: FormItemComponent, selector: "app-rd-form-item", inputs: ["errorMessage", "disabled", "label", "type", "focus", "value", "size", "theme"] }, { kind: "component", type: i7.NzDrawerComponent, selector: "nz-drawer", inputs: ["nzContent", "nzCloseIcon", "nzClosable", "nzMaskClosable", "nzMask", "nzCloseOnNavigation", "nzNoAnimation", "nzKeyboard", "nzTitle", "nzExtra", "nzFooter", "nzPlacement", "nzSize", "nzMaskStyle", "nzBodyStyle", "nzWrapClassName", "nzWidth", "nzHeight", "nzZIndex", "nzOffsetX", "nzOffsetY", "nzVisible"], outputs: ["nzOnViewInit", "nzOnClose", "nzVisibleChange"], exportAs: ["nzDrawer"] }, { kind: "directive", type: i7.NzDrawerContentDirective, selector: "[nzDrawerContent]", exportAs: ["nzDrawerContent"] }, { kind: "directive", type: i3$1.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "component", type: i3$1.NzInputGroupComponent, selector: "nz-input-group", inputs: ["nzAddOnBeforeIcon", "nzAddOnAfterIcon", "nzPrefixIcon", "nzSuffixIcon", "nzAddOnBefore", "nzAddOnAfter", "nzPrefix", "nzStatus", "nzSuffix", "nzSize", "nzSearch", "nzCompact"], exportAs: ["nzInputGroup"] }, { kind: "directive", type: i3$1.NzInputGroupWhitSuffixOrPrefixDirective, selector: "nz-input-group[nzSuffix], nz-input-group[nzPrefix]" }, { kind: "component", type: i9.NzCheckboxComponent, selector: "[nz-checkbox]", inputs: ["nzValue", "nzAutoFocus", "nzDisabled", "nzIndeterminate", "nzChecked", "nzId"], outputs: ["nzCheckedChange"], exportAs: ["nzCheckbox"] }, { kind: "component", type: i9.NzCheckboxWrapperComponent, selector: "nz-checkbox-wrapper", outputs: ["nzOnChange"], exportAs: ["nzCheckboxWrapper"] }, { kind: "directive", type: i3$2.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "component", type: i11.NzModalComponent, selector: "nz-modal", inputs: ["nzMask", "nzMaskClosable", "nzCloseOnNavigation", "nzVisible", "nzClosable", "nzOkLoading", "nzOkDisabled", "nzCancelDisabled", "nzCancelLoading", "nzKeyboard", "nzNoAnimation", "nzCentered", "nzContent", "nzComponentParams", "nzFooter", "nzZIndex", "nzWidth", "nzWrapClassName", "nzClassName", "nzStyle", "nzTitle", "nzCloseIcon", "nzMaskStyle", "nzBodyStyle", "nzOkText", "nzCancelText", "nzOkType", "nzOkDanger", "nzIconType", "nzModalType", "nzAutofocus", "nzOnOk", "nzOnCancel"], outputs: ["nzOnOk", "nzOnCancel", "nzAfterOpen", "nzAfterClose", "nzVisibleChange"], exportAs: ["nzModal"] }, { kind: "directive", type: i11.NzModalContentDirective, selector: "[nzModalContent]", exportAs: ["nzModalContent"] }, { kind: "component", type: RdButtonComponent, selector: "app-rd-button", inputs: ["type", "size", "shape", "disabled", "loading", "block", "htmlType", "ghost", "dashed", "icon", "danger", "minWidth", "theme"], outputs: ["click"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
1861
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdSelectComponent, decorators: [{
1238
1862
  type: Component,
1239
1863
  args: [{ selector: 'app-rd-select', providers: [
1240
1864
  {
1241
1865
  provide: NG_VALUE_ACCESSOR,
1242
- useExisting: forwardRef(() => CustomSelectComponent),
1866
+ useExisting: forwardRef(() => RdSelectComponent),
1243
1867
  multi: true,
1244
1868
  },
1245
1869
  {
1246
1870
  provide: NG_VALIDATORS,
1247
- useExisting: forwardRef(() => CustomSelectComponent),
1871
+ useExisting: forwardRef(() => RdSelectComponent),
1248
1872
  multi: true,
1249
1873
  },
1250
- ], template: "<app-rd-form-item\n [disabled]=\"disabled\"\n [focus]=\"!!searchInput || isFocus || isOpen\"\n [type]=\"'select'\"\n [label]=\"label\"\n [value]=\"nativeValue\"\n [errorMessage]=\"showError ? currentErrorMessage : ''\"\n [ngClass]=\"{\n 'rd-form-item-phone': !label,\n }\"\n>\n <nz-select\n class=\"rd-form-item-select\"\n nzBorderless\n [nzMode]=\"nzMode\"\n [nzShowArrow]=\"false\"\n [(ngModel)]=\"nativeValue\"\n [nzCustomTemplate]=\"\n customTpl\n ? customTpl\n : isCurrency\n ? currencySelectedTpl\n : defaultSelectedTpl\n \"\n (nzScrollToBottom)=\"onScrollToBottom()\"\n (ngModelChange)=\"handleValueChange($event)\"\n [disabled]=\"disabled\"\n (nzFocus)=\"isFocus = true\"\n (nzBlur)=\"isFocus = false\"\n [nzDropdownClassName]=\"\n nzMode === 'multiple'\n ? 'rd-form-item-multiple-select-dropdown'\n : 'rd-form-item-select-dropdown'\n \"\n [nzOptionOverflowSize]=\"5\"\n [nzOptionHeightPx]=\"optionHeightPx || 40\"\n [nzSuffixIcon]=\"customIcon\"\n [nzRemoveIcon]=\"removeIcon\"\n [nzShowSearch]=\"isShowSearch\"\n (nzOnSearch)=\"onSearch($event)\"\n (nzOpenChange)=\"handleOpenChange($event)\"\n >\n <nz-option\n *ngFor=\"let option of filteredOptions\"\n [nzValue]=\"option.value\"\n [nzLabel]=\"option.name || ''\"\n [nzDisabled]=\"option.disabled || false\"\n [nzCustomContent]=\"true\"\n >\n <ng-container *ngIf=\"optionTpl || isCurrency\">\n <ng-container\n *ngTemplateOutlet=\"\n isCurrency ? currencyOptionTpl : optionTpl;\n context: { $implicit: option }\n \"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!(optionTpl || isCurrency)\">\n {{ option.name }}\n </ng-container>\n </nz-option>\n <nz-option *ngIf=\"isLoading\" nzDisabled nzCustomContent>\n <nz-spin style=\"padding: 16px 0\"></nz-spin>\n </nz-option>\n </nz-select>\n</app-rd-form-item>\n\n<ng-template #defaultSelectedTpl let-selected>\n {{ selected?.nzLabel }}\n</ng-template>\n\n<ng-template #currencyOptionTpl let-option>\n <div class=\"rd-form-item-option-content\">\n <img [src]=\"option.iconUrl\" class=\"rd-token-icon\" alt=\"icon\" />\n <span>{{ option.name }}</span>\n </div>\n</ng-template>\n\n<ng-template #currencySelectedTpl let-selected let-extra>\n <div class=\"rd-form-item-option-content\">\n <img\n [src]=\"currencyUrlMap?.[getCurrencyKey(selected.nzValue)]\"\n class=\"rd-token-icon\"\n alt=\"icon\"\n />\n <span>{{ selected.nzLabel }}</span>\n </div>\n</ng-template>\n\n<ng-template #removeIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.39645 2.39645C2.59171 2.20118 2.90829 2.20118 3.10355 2.39645L6 5.29289L8.89645 2.39645C9.09171 2.20118 9.40829 2.20118 9.60355 2.39645C9.79882 2.59171 9.79882 2.90829 9.60355 3.10355L6.70711 6L9.60355 8.89645C9.79882 9.09171 9.79882 9.40829 9.60355 9.60355C9.40829 9.79882 9.09171 9.79882 8.89645 9.60355L6 6.70711L3.10355 9.60355C2.90829 9.79882 2.59171 9.79882 2.39645 9.60355C2.20118 9.40829 2.20118 9.09171 2.39645 8.89645L5.29289 6L2.39645 3.10355C2.20118 2.90829 2.20118 2.59171 2.39645 2.39645Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #customIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n", styles: ["@charset \"UTF-8\";:host .rd-form-item-select{width:100%}:host .rd-form-item-select ::ng-deep .ant-select-selection-search-input{padding:17px 5px 12px;color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500}::ng-deep .rd-form-item-phone .ant-select-selection-search-input{padding:0 5px 12px}::ng-deep .rd-form-item-phone .ant-select-single .ant-select-selector .ant-select-selection-search{position:absolute;inset:-8px 11px 0}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search{width:100%!important}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search .ant-select-selection-search-input{padding:0 0 12px!important;transform:translate(-2px,4px)!important}::ng-deep .has-top-hint .ant-select-item-option-content:has(.top-hint-option){background:transparent!important;padding-left:12px!important;cursor:default}::ng-deep .has-top-hint .ant-select-item-option-content:has(.top-hint-option):before{border:none!important}::ng-deep .rd-form-item-multiple-select-dropdown .select-footer-container{padding:16px 12px!important;border-top:1px solid var(--rd-grey-700)!important}::ng-deep .select-drawer{background-color:var(--rd-grey-900)}::ng-deep .select-drawer .select-drawer-header{padding:24px 8px 0;position:sticky;top:0;background-color:var(--rd-grey-900);z-index:1111}::ng-deep .select-drawer .select-drawer-header .header-title{display:flex;align-items:center;font-size:18px;font-weight:500;line-height:24px;justify-content:space-between}::ng-deep .select-drawer .close-btn{width:24px;height:24px;cursor:pointer}::ng-deep .select-drawer .close-btn svg{width:24px}::ng-deep .select-drawer .back-btn{width:16px;height:16px;cursor:pointer}::ng-deep .select-drawer .ant-drawer-body{padding:0 16px 24px}::ng-deep .select-drawer .ant-drawer-content{background-color:transparent;color:var(--rd-grey-50)}::ng-deep .select-drawer .cascader-drawer-search{border-radius:4px;border:1px solid var(--rd-grey-800);background:var(--rd-ashe-800);height:44px;padding:0 16px;margin-top:16px}::ng-deep .select-drawer .cascader-drawer-search::placeholder{color:var(--rd-grey-400)}::ng-deep .select-drawer .cascader-drawer-search .ant-input{background:var(--rd-ashe-800);color:var(--rd-grey-50)}::ng-deep .select-drawer .cascader-drawer-search.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:var(--rd-blue-dark-600)}::ng-deep .select-drawer .cascader-drawer-list{margin-top:16px}::ng-deep .select-drawer .cascader-drawer-option{padding:8px;min-height:44px;display:flex;align-items:flex-start;gap:8px;cursor:pointer;font-size:14px;font-weight:400;line-height:28px;line-height:1.5}::ng-deep .select-drawer .cascader-drawer-option svg{margin-left:auto;flex-shrink:0}::ng-deep .select-drawer .cascader-drawer-option-active{border-radius:4px;background:rgba(42,123,255,.3)}::ng-deep .select-drawer .cascader-drawer-option.cascader-drawer-root-option{align-items:center}::ng-deep .select-drawer .ant-checkbox-inner{border-radius:4px;background-color:var(--rd-grey-900);border:1px solid var(--rd-grey-500)}::ng-deep .select-drawer .ant-checkbox-checked .ant-checkbox-inner{background-color:var(--rd-control-input-selected)!important;border:none!important}::ng-deep .select-drawer .ant-checkbox-checked .ant-checkbox-inner:after{border:2px solid var(--rd-neutral-950);border-top:0;border-left:0}::ng-deep .select-drawer .ant-checkbox-checked:after{border-radius:4px}::ng-deep .select-drawer .ant-checkbox-disabled+span{color:var(--rd-grey-50)!important}::ng-deep .select-drawer .ant-checkbox-disabled .ant-checkbox-inner{border:1px solid var(--rd-grey-500)!important}::ng-deep .select-drawer .ant-checkbox-wrapper{font-weight:400;font-size:14px;line-height:22px;color:var(--rd-grey-50)!important}::ng-deep .select-drawer .ant-checkbox-wrapper>span{margin-left:8px}::ng-deep .select-drawer .ant-drawer-footer{padding:24px!important;border-top:1px solid var(--rd-grey-700)!important}\n", "::ng-deep .rd-form-item-select{min-width:113px;min-height:52px;max-height:100%;position:relative}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search{margin-inline-start:0}::ng-deep .rd-form-item-select .ant-select-selection-search-input{padding:12px 4px 0}::ng-deep .rd-form-item-select .ant-select-selection-search-input::placeholder{color:var(--rd-copy-disable)}::ng-deep .rd-form-item-select .ant-select-selection-search .ant-select-selection-search-input{padding:12px 4px 0;transform:translate(-2px,12px)!important}::ng-deep .rd-form-item-select .ant-select-show-search{transform:translateY(10px)}::ng-deep .rd-form-item-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:14px 16px 10px;min-height:52px;height:-moz-fit-content;height:fit-content}::ng-deep .rd-form-item-select.ant-select-single .ant-select-selector .ant-select-selection-item:after{display:none}::ng-deep .rd-form-item-select.ant-select .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selector{padding:12px 16px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item{border-radius:4px;background:var(--rd-grey-100);font-size:14px;font-weight:500;color:var(--rd-copy-primary);display:flex;align-items:center;gap:4px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item .ant-select-selection-item-remove{line-height:1}::ng-deep .rd-form-item-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px}::ng-deep .rd-form-item-select.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px;border:1px solid var(--rd-input-fg-hover);background:var(--rd-input-bg-hover);box-shadow:0 0 0 2px #367af61a}::ng-deep .rd-form-item-select .ant-select-selection-placeholder{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selection-item-content{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-select .ant-select-arrow{transition:ease-in-out .2s all;cursor:pointer;pointer-events:initial}::ng-deep .rd-form-item-select:hover:has(.ant-select-clear) .ant-select-arrow{opacity:0}::ng-deep .rd-form-item-select.ant-select-focused .ant-select-arrow,::ng-deep .rd-form-item-select .ant-select-selector:focus-within .ant-select-arrow{transform:rotate(-180deg);transition:transform .2s ease}.rd-form-item-phone ::ng-deep .ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:6px 16px 10px!important;min-height:52px!important;height:-moz-fit-content;height:fit-content}.rd-form-item-phone ::ng-deep .ant-select-show-search.ant-select-multiple .ant-select-selector{padding:6px 16px!important}::ng-deep .rd-form-item-select-s{min-height:38px}::ng-deep .rd-form-item-select-s.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{height:100%;min-height:38px;padding:0 12px}::ng-deep .rd-form-item-select-dropdown .ant-select-dropdown,::ng-deep .rd-form-item-select-dropdown-s .ant-select-dropdown,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-dropdown{border-radius:4px;background:var(--rd-bg-panel);min-width:113px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option{background-color:transparent;padding:0 6px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;padding:0 6px;display:flex;align-items:center;color:var(--rd-copy-primary);font-size:14px;min-height:40px;font-weight:600}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-active .ant-select-item-option-content{background:rgba(54,122,246,.1)}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content{color:var(--rd-copy-secondary);background:var(--rd-grey-200)}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty img,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty img,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty img{width:61px;height:68px}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty p,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty p,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty p{font-size:13px;color:var(--rd-copy-disable);font-weight:500;margin:0}::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content{padding:0 4px;min-height:32px}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;color:var(--rd-copy-primary);font-size:14px;padding:0 6px 0 32px;position:relative}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content:before{content:\"\";position:absolute;top:50%;left:6px;width:16px;height:16px;transform:translateY(-50%);border-radius:4px;border:1px solid var(--rd-grey-400)}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-selected .ant-select-item-option-content:before{background-image:url(/assets/img/icon/checkbox.svg);background-size:contain;background-position:center;background-repeat:no-repeat;border:none}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-state{display:none}::ng-deep .rd-form-item-option-content{display:flex;align-items:center;gap:8px;height:100%}::ng-deep .rd-form-item-option-content span{font-size:14px;font-weight:500}::ng-deep .rd-form-item-option-content .rd-token-icon{width:20px;height:20px;transition:opacity .3s ease-in-out}\n"] }]
1251
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { lang: [{
1252
- type: Input
1253
- }], label: [{
1874
+ ], template: "<!-- rd-select.component.html -->\n<div\n [class.rd-select-ready]=\"isComponentReady\"\n [class.rd-search-width-auto]=\"isSearchWidthAuto\"\n class=\"rd-select-container\"\n>\n <app-rd-form-item\n [disabled]=\"disabled\"\n [focus]=\"!!searchInput || isFocus || isOpen\"\n [type]=\"'select'\"\n [label]=\"label\"\n [value]=\"nativeValue\"\n [errorMessage]=\"showError && isShowErrorTip ? currentErrorMessage : ''\"\n [ngClass]=\"{\n 'rd-form-item-phone': !label,\n }\"\n (click)=\"openDrawer()\"\n >\n <nz-select\n class=\"rd-form-item-select\"\n [ngStyle]=\"{\n 'pointer-events':\n businessLocation && nzMode === 'multiple' ? 'none' : '',\n }\"\n nzBorderless\n [nzMode]=\"nzMode\"\n [nzShowArrow]=\"false\"\n [(ngModel)]=\"nativeValue\"\n [nzMaxMultipleCount]=\"nzMaxMultipleCount ? nzMaxMultipleCount : null\"\n [nzPlaceHolder]=\"placeholder\"\n [nzCustomTemplate]=\"\n customTpl\n ? customTpl\n : isCurrency\n ? currencySelectedTpl\n : defaultSelectedTpl\n \"\n (nzScrollToBottom)=\"onScrollToBottom()\"\n (ngModelChange)=\"handleValueChange($event)\"\n [disabled]=\"disabled\"\n (nzFocus)=\"isFocus = true\"\n (nzBlur)=\"isFocus = false\"\n [nzDropdownClassName]=\"dropdownClassNames\"\n [nzOptionOverflowSize]=\"5\"\n [nzOptionHeightPx]=\"optionHeightPx || 40\"\n [nzSuffixIcon]=\"customIcon\"\n [nzRemoveIcon]=\"removeIcon\"\n [nzShowSearch]=\"\n nzMode === 'multiple' && businessLocation ? false : isShowSearch\n \"\n (nzOnSearch)=\"onSearch($event)\"\n [name]=\"name\"\n (nzOpenChange)=\"handleOpenChange($event)\"\n [nzDropdownRender]=\"\n showSelectedCount || showClearAll ? customDropdownFooter : null\n \"\n [ngClass]=\"{\n 'rd-select-disabled-open': isMobile && businessLocation,\n }\"\n >\n <nz-option\n *ngIf=\"showTopHint && isShowMaxCount\"\n nzDisabled\n nzCustomContent\n >\n <div class=\"top-hint-option\">\n <span class=\"t14-400 c-text-primary\">{{ topHintText }}</span>\n </div>\n </nz-option>\n\n <nz-option\n *ngFor=\"let option of filteredOptions\"\n [nzValue]=\"option.value\"\n [nzLabel]=\"option.name || ''\"\n [nzDisabled]=\"option.disabled || false\"\n [nzCustomContent]=\"true\"\n >\n <ng-container *ngIf=\"optionTpl || isCurrency\">\n <ng-container\n *ngTemplateOutlet=\"\n isCurrency ? currencyOptionTpl : optionTpl;\n context: { $implicit: option }\n \"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!(optionTpl || isCurrency)\">\n <span class=\"t14-400 c-text-primary\">{{ option?.name }}</span>\n </ng-container>\n </nz-option>\n\n <nz-option *ngIf=\"isLoading\" nzDisabled nzCustomContent>\n <nz-spin style=\"padding: 16px 0\"></nz-spin>\n </nz-option>\n </nz-select>\n </app-rd-form-item>\n</div>\n\n<!-- \u81EA\u5B9A\u4E49\u4E0B\u62C9\u83DC\u5355\u5E95\u90E8 -->\n<ng-template #customDropdownFooter>\n <div class=\"select-footer-container\">\n <div\n class=\"select-footer-content d-flex justify-content-between align-items-center\"\n >\n <div>\n <!-- \u9009\u4E2D\u8BA1\u6570 -->\n <span *ngIf=\"showSelectedCount\" class=\"t14-400 c-text-primary\">\n {{ selectedLabel }}\n {{\n isMobile ? getDrawerSelectValueLen() : selectedCount\n }}/<ng-container *ngIf=\"isShowMaxCount\"\n >/{{ nzMaxMultipleCount }}\n </ng-container>\n </span>\n\n <!-- \u6E05\u7A7A\u6309\u94AE -->\n <a\n *ngIf=\"\n showClearAll &&\n (isMobile ? getDrawerSelectValueLen() : selectedCount) > 0\n \"\n class=\"b14 ml-16\"\n (click)=\"clearAll(); $event.stopPropagation()\"\n >\n {{ clearAllLabel }}\n </a>\n </div>\n\n <div>\n <app-rd-button\n type=\"primary\"\n *ngIf=\"isMobile\"\n [disabled]=\"getDisableNext()\"\n (click)=\"multSelectMobileNext()\"\n >\n {{ \"next\" | translate }}</app-rd-button\n >\n </div>\n </div>\n </div>\n</ng-template>\n\n<ng-template #customModalFooter>\n <div class=\"select-footer-container\">\n <div\n class=\"select-footer-content d-flex justify-content-between align-items-center\"\n >\n <div>\n <!-- \u9009\u4E2D\u8BA1\u6570 -->\n <span *ngIf=\"showSelectedCount\" class=\"t14-400 c-text-primary\">\n {{ selectedLabel }}\n {{ getDrawerSelectValueLen()\n }}<ng-container *ngIf=\"isShowMaxCount\"\n >/{{ nzMaxMultipleCount }}\n </ng-container>\n </span>\n\n <!-- \u6E05\u7A7A\u6309\u94AE -->\n <a\n *ngIf=\"showClearAll && getDrawerSelectValueLen() > 0\"\n class=\"b14 ml-16\"\n (click)=\"clearAll(); $event.stopPropagation()\"\n >\n {{ clearAllLabel }}\n </a>\n </div>\n\n <div>\n <app-rd-button\n type=\"primary\"\n [disabled]=\"isRquired ? getDrawerSelectValueLen() === 0 : false\"\n (click)=\"multSelectMobileNext()\"\n >\n {{ \"done\" | translate }}</app-rd-button\n >\n </div>\n </div>\n </div>\n</ng-template>\n\n<!-- \u5176\u4ED6\u6A21\u677F\u4FDD\u6301\u4E0D\u53D8 -->\n<ng-template #defaultSelectedTpl let-selected>\n {{ selected?.nzLabel }}\n</ng-template>\n\n<ng-template #currencyOptionTpl let-option>\n <div class=\"rd-form-item-option-content\">\n <img [src]=\"option.iconUrl\" class=\"rd-token-icon\" alt=\"icon\" />\n <span>{{ option.name }}</span>\n </div>\n</ng-template>\n\n<ng-template #currencySelectedTpl let-selected let-extra>\n <div class=\"rd-form-item-option-content\">\n <img\n [src]=\"currencyUrlMap?.[selected.nzValue]\"\n class=\"rd-token-icon\"\n alt=\"icon\"\n />\n <span>{{ selected.nzLabel }}</span>\n </div>\n</ng-template>\n\n<ng-template #removeIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.39645 2.39645C2.59171 2.20118 2.90829 2.20118 3.10355 2.39645L6 5.29289L8.89645 2.39645C9.09171 2.20118 9.40829 2.20118 9.60355 2.39645C9.79882 2.59171 9.79882 2.90829 9.60355 3.10355L6.70711 6L9.60355 8.89645C9.79882 9.09171 9.79882 9.40829 9.60355 9.60355C9.40829 9.79882 9.09171 9.79882 8.89645 9.60355L6 6.70711L3.10355 9.60355C2.90829 9.79882 2.59171 9.79882 2.39645 9.60355C2.20118 9.40829 2.20118 9.09171 2.39645 8.89645L5.29289 6L2.39645 3.10355C2.20118 2.90829 2.20118 2.59171 2.39645 2.39645Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #customIcon>\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<nz-drawer\n [nzVisible]=\"drawerOpen && isMobile && businessLocation\"\n [nzPlacement]=\"'bottom'\"\n [nzHeight]=\"'70vh'\"\n [nzTitle]=\"''\"\n [nzClosable]=\"false\"\n [nzFooter]=\"customDropdownFooter\"\n nzWrapClassName=\"select-drawer\"\n (nzOnClose)=\"closeDrawer()\"\n>\n <div *nzDrawerContent>\n <div class=\"select-drawer-header\">\n <div class=\"header-title\">\n <div>\n {{\n (businessLocation ? \"select_nature_of_business\" : \" \") | translate\n }}\n </div>\n <div class=\"close-btn\" (click)=\"closeDrawer()\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n class=\"w-full\"\n >\n <path\n d=\"M3.40039 3.3999L8.00039 7.9999M12.6004 12.5999L8.00039 7.9999M8.00039 7.9999L12.6004 3.3999L3.40039 12.5999\"\n stroke=\"var(--rd-copy-primary)\"\n stroke-width=\"1.36\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n </div>\n </div>\n\n <nz-input-group\n class=\"cascader-drawer-search\"\n [nzPrefix]=\"prefixIconSearch\"\n nzClearable\n >\n <input\n nz-input\n [placeholder]=\"'search' | translate\"\n [(ngModel)]=\"searchTerm\"\n (ngModelChange)=\"doMobileSearch($event)\"\n />\n </nz-input-group>\n </div>\n\n <div class=\"cascader-drawer-list\">\n <div *ngIf=\"isShowMaxCount\" class=\"my-16 ml-8\">\n <span class=\"t14-400 c-text-primary\">{{ topHintText }}</span>\n </div>\n <ng-container *ngIf=\"filteredOptions?.length\">\n <nz-checkbox-wrapper\n class=\"question-content\"\n class=\"t14-400 c-text-primary\"\n (nzOnChange)=\"onCheckboxChange($event)\"\n >\n <div *ngFor=\"let option of filteredOptions\" class=\"mb-8\">\n <label\n nz-checkbox\n [nzValue]=\"option?.value\"\n [nzDisabled]=\"getOptionDisabled(option)\"\n [nzChecked]=\"isValueSelected(option?.value)\"\n >\n <span class=\"t14-400 c-text-primary\">{{ option?.name }}</span>\n </label>\n </div>\n </nz-checkbox-wrapper>\n </ng-container>\n </div>\n </div>\n</nz-drawer>\n\n<!-- Modal for desktop business location multi-select -->\n<nz-modal\n [(nzVisible)]=\"modalOpen\"\n [nzTitle]=\"''\"\n [nzClosable]=\"false\"\n [nzFooter]=\"customModalFooter\"\n nzWrapClassName=\"select-modal\"\n (nzOnCancel)=\"closeModal()\"\n [nzWidth]=\"632\"\n [nzBodyStyle]=\"{ height: '600px' }\"\n nzCentered\n>\n <div *nzModalContent>\n <div class=\"select-modal-header\">\n <div\n class=\"header-title d-flex justify-content-between align-items-center\"\n >\n <div>\n {{\n (businessLocationTitle\n ? businessLocationTitle\n : businessLocation\n ? \"select_nature_of_business\"\n : \" \"\n ) | translate\n }}\n </div>\n <div class=\"close-btn\" (click)=\"closeModal()\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n d=\"M3.40039 3.3999L8.00039 7.9999M12.6004 12.5999L8.00039 7.9999M8.00039 7.9999L12.6004 3.3999L3.40039 12.5999\"\n stroke=\"var(--rd-copy-primary)\"\n stroke-width=\"1.36\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n </div>\n </div>\n\n <nz-input-group\n class=\"cascader-modal-search\"\n [nzPrefix]=\"prefixIconSearch\"\n nzClearable\n >\n <input\n nz-input\n [placeholder]=\"'search' | translate\"\n [(ngModel)]=\"searchTerm\"\n (ngModelChange)=\"doMobileSearch($event)\"\n />\n </nz-input-group>\n </div>\n\n <div class=\"cascader-modal-list\">\n <div class=\"mb-16\" *ngIf=\"showTopHint && isShowMaxCount\">\n <span class=\"t14-400 c-text-primary\">{{ topHintText }}</span>\n </div>\n <ng-container *ngIf=\"filteredOptions?.length\">\n <nz-checkbox-wrapper\n class=\"question-content\"\n class=\"t14-400 c-text-primary\"\n (nzOnChange)=\"onCheckboxChange($event)\"\n >\n <div *ngFor=\"let option of filteredOptions\" class=\"mb-8\">\n <label\n nz-checkbox\n [nzValue]=\"option?.value\"\n [nzDisabled]=\"getOptionDisabled(option)\"\n [nzChecked]=\"isValueSelected(option?.value)\"\n >\n <span class=\"t14-400 c-text-primary\">{{ option?.name }}</span>\n </label>\n </div>\n </nz-checkbox-wrapper>\n </ng-container>\n </div>\n </div>\n</nz-modal>\n\n<ng-template #prefixIconSearch>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n d=\"M14.4951 13.6948L11.3962 10.5959C12.3175 9.46902 12.7704 8.03122 12.6613 6.57983C12.5522 5.12844 11.8894 3.77451 10.81 2.79807C9.73066 1.82164 8.3173 1.29741 6.86227 1.33381C5.40723 1.37021 4.02185 1.96445 2.99266 2.99364C1.96348 4.02282 1.36923 5.4082 1.33283 6.86323C1.29643 8.31826 1.82066 9.73162 2.7971 10.811C3.77354 11.8903 5.12747 12.5531 6.57887 12.6622C8.03026 12.7713 9.46807 12.3184 10.5949 11.3972L13.6938 14.5032C13.8027 14.6073 13.9474 14.6656 14.098 14.6663C14.2105 14.6661 14.3204 14.6325 14.4138 14.5697C14.5071 14.5069 14.5796 14.4178 14.6222 14.3136C14.6648 14.2095 14.6754 14.0951 14.6528 13.9849C14.6302 13.8747 14.5753 13.7737 14.4951 13.6948ZM7.00667 11.5461C6.10905 11.5461 5.23158 11.2799 4.48523 10.7812C3.73889 10.2825 3.15718 9.57372 2.81367 8.74443C2.47017 7.91513 2.38029 7.0026 2.55541 6.12223C2.73053 5.24185 3.16277 4.43317 3.79749 3.79846C4.43221 3.16375 5.24088 2.7315 6.12126 2.55638C7.00164 2.38127 7.91417 2.47114 8.74347 2.81465C9.57277 3.15815 10.2816 3.73986 10.7803 4.4862C11.279 5.23255 11.5451 6.11001 11.5451 7.00763C11.5433 8.21073 11.0645 9.36402 10.2138 10.2147C9.36306 11.0655 8.20977 11.5442 7.00667 11.5461Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n", styles: ["@charset \"UTF-8\";:host .rd-select-container{visibility:hidden}:host .rd-select-container.rd-select-ready{visibility:visible}:host .rd-form-item-select{width:100%}:host .rd-form-item-select ::ng-deep .ant-select-selection-search-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500}:host .rd-form-item-select ::ng-deep .ant-select-selection-placeholder{color:var(--rd-copy-disable)!important}:host .rd-select-disabled-open{pointer-events:none}::ng-deep .rd-form-item-phone .ant-select-selection-search-input{padding:0 5px 12px}::ng-deep .rd-form-item-phone .ant-select-single .ant-select-selector .ant-select-selection-search{position:absolute;inset:-8px 11px 0}::ng-deep .rd-select-container:not(.rd-search-width-auto) .rd-form-item-select.ant-select-multiple .ant-select-selection-search{width:100%!important}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search .ant-select-selection-search-input{padding:0 0 12px!important;transform:translate(-2px,4px)!important}::ng-deep .has-top-hint .ant-select-item-option-content:has(.top-hint-option){background:transparent!important;padding-left:12px!important;cursor:default}::ng-deep .has-top-hint .ant-select-item-option-content:has(.top-hint-option):before{border:none!important}::ng-deep .rd-form-item-multiple-select-dropdown .select-footer-container{padding:16px 12px!important;border-top:1px solid var(--rd-grey-700)!important}::ng-deep .select-drawer{background-color:var(--rd-bg-website)}::ng-deep .select-drawer .select-drawer-header{padding:24px 8px 0;position:sticky;top:0;background-color:var(--rd-bg-website);z-index:1111}::ng-deep .select-drawer .select-drawer-header .header-title{display:flex;align-items:center;font-size:18px;font-weight:500;line-height:24px;justify-content:space-between}::ng-deep .select-drawer .close-btn{width:24px;height:24px;cursor:pointer}::ng-deep .select-drawer .close-btn svg{width:24px}::ng-deep .select-drawer .back-btn{width:16px;height:16px;cursor:pointer}::ng-deep .select-drawer .ant-drawer-body{padding:0 16px 24px}::ng-deep .select-drawer .ant-drawer-content{background-color:transparent;color:var(--rd-copy-primary)}::ng-deep .select-drawer .cascader-drawer-search{border-radius:4px;border:1px solid var(--rd-input-fg-default);background:var(--rd-input-bg-default);height:44px;padding:0 16px;margin-top:16px}::ng-deep .select-drawer .cascader-drawer-search::placeholder{color:var(--rd-copy-disable)}::ng-deep .select-drawer .cascader-drawer-search .ant-input{background:var(--rd-input-bg-default);color:var(--rd-copy-primary)}::ng-deep .select-drawer .cascader-drawer-search.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:var(--rd-input-fg-hover)}::ng-deep .select-drawer .cascader-drawer-list{margin-top:16px}::ng-deep .select-drawer .cascader-drawer-option{padding:8px;min-height:44px;display:flex;align-items:flex-start;gap:8px;cursor:pointer;font-size:14px;font-weight:400;line-height:28px;line-height:1.5}::ng-deep .select-drawer .cascader-drawer-option svg{margin-left:auto;flex-shrink:0}::ng-deep .select-drawer .cascader-drawer-option-active{border-radius:4px;background:rgba(42,123,255,.3)}::ng-deep .select-drawer .cascader-drawer-option.cascader-drawer-root-option{align-items:center}::ng-deep .select-drawer .ant-checkbox-inner{border-radius:4px;background-color:var(--rd-control-input-empty);border:1px solid var(--rd-control-border-empty)}::ng-deep .select-drawer .ant-checkbox-checked .ant-checkbox-inner{background-color:var(--rd-control-input-selected)!important;border:none!important}::ng-deep .select-drawer .ant-checkbox-checked .ant-checkbox-inner:after{border:2px solid var(--rd-copy-inverse);border-top:0;border-left:0}::ng-deep .select-drawer .ant-checkbox-checked:after{border-radius:4px}::ng-deep .select-drawer .ant-checkbox-disabled+span{color:var(--rd-copy-primary)!important}::ng-deep .select-drawer .ant-checkbox-disabled .ant-checkbox-inner{border:1px solid var(--rd-control-border-empty)!important}::ng-deep .select-drawer .ant-checkbox-wrapper{font-weight:400;font-size:14px;line-height:22px;color:var(--rd-copy-primary)!important}::ng-deep .select-drawer .ant-checkbox-wrapper>span{margin-left:8px}::ng-deep .select-drawer .ant-drawer-footer{padding:24px!important;border-top:1px solid var(--rd-grey-700)!important}::ng-deep .select-modal .ant-modal-content{background-color:var(--rd-bg-panel);border-radius:8px}::ng-deep .select-modal .ant-checkbox{margin-right:8px}::ng-deep .select-modal .ant-checkbox>span{border-radius:4px}::ng-deep .select-modal .select-modal-header{padding:24px 0 0;position:sticky;top:0;background-color:var(--rd-bg-panel);z-index:1111}::ng-deep .select-modal .select-modal-header .header-title{display:flex;align-items:center;font-size:18px;font-weight:500;line-height:24px;color:var(--rd-copy-primary);justify-content:space-between}::ng-deep .select-modal .close-btn{width:24px;height:24px;cursor:pointer}::ng-deep .select-modal .close-btn svg{width:24px}::ng-deep .select-modal .back-btn{width:16px;height:16px;cursor:pointer}::ng-deep .select-modal .cascader-modal-search{border-radius:4px;border:1px solid var(--rd-grey-200);background:var(--rd-bg-panel);height:44px;padding:0 16px;margin-top:16px}::ng-deep .select-modal .cascader-modal-search::placeholder{color:var(--rd-copy-disable)}::ng-deep .select-modal .cascader-modal-search .ant-input{background:var(--rd-bg-panel);color:var(--rd-copy-primary);box-shadow:none;outline:none}::ng-deep .select-modal .cascader-modal-search.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:var(--rd-input-fg-hover)}::ng-deep .select-modal .cascader-modal-list{margin-top:16px;overflow-y:auto;height:460px}::ng-deep .select-modal .ant-modal-body{padding:0 24px 24px}::ng-deep .select-modal .ant-modal-footer{padding:24px!important;border-top:1px solid var(--rd-grey-200)!important;background-color:var(--rd-bg-panel)}::ng-deep .select-modal .ant-modal-close{display:none}\n", "::ng-deep .rd-form-item-select{min-width:113px;min-height:52px;max-height:100%;position:relative}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search{margin-inline-start:0}::ng-deep .rd-form-item-select .ant-select-selection-search-input{padding:12px 4px 0}::ng-deep .rd-form-item-select .ant-select-selection-search-input::placeholder{color:var(--rd-copy-disable)}::ng-deep .rd-form-item-select .ant-select-selection-search .ant-select-selection-search-input{padding:12px 4px 0;transform:translate(-2px,12px)!important}::ng-deep .rd-form-item-select .ant-select-show-search{transform:translateY(10px)}::ng-deep .rd-form-item-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:14px 16px 10px;min-height:52px;height:-moz-fit-content;height:fit-content}.rd-form-item-phone ::ng-deep .rd-form-item-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:6px 16px 10px;min-height:52px;height:-moz-fit-content;height:fit-content}.rd-form-item-phone ::ng-deep .rd-form-item-select.ant-select-show-search.ant-select-multiple .ant-select-selector{padding:6px 16px}::ng-deep .rd-form-item-select.ant-select-single .ant-select-selector .ant-select-selection-item:after{display:none}::ng-deep .rd-form-item-select.ant-select .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selector{padding:12px 16px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item{border-radius:4px;background:transparent;font-size:14px;font-weight:500;color:var(--rd-copy-primary);display:flex;align-items:center;gap:4px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item .ant-select-selection-item-remove{line-height:1}::ng-deep .rd-form-item-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px}::ng-deep .rd-form-item-select.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px;border:1px solid var(--rd-input-fg-hover);background:var(--rd-input-bg-hover);box-shadow:0 0 0 2px #367af61a}::ng-deep .rd-form-item-select .ant-empty-description{font-weight:400;font-size:14px;line-height:22px;color:var(--rd-copy-primary)}::ng-deep .rd-form-item-select .ant-select-selection-placeholder{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selection-item-content{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-select .ant-select-arrow{transition:ease-in-out .2s all;cursor:pointer;pointer-events:initial}::ng-deep .rd-form-item-select:hover:has(.ant-select-clear) .ant-select-arrow{opacity:0}::ng-deep .rd-form-item-select.ant-select-focused .ant-select-arrow,::ng-deep .rd-form-item-select .ant-select-selector:focus-within .ant-select-arrow{transform:rotate(-180deg);transition:transform .2s ease}::ng-deep .rd-form-item-select-s{min-height:38px}::ng-deep .rd-form-item-select-s.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{height:100%;min-height:38px;padding:0 12px}::ng-deep .rd-form-item-select-dropdown .ant-select-dropdown,::ng-deep .rd-form-item-select-dropdown-s .ant-select-dropdown,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-dropdown{border-radius:4px;background:var(--rd-bg-panel);min-width:113px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option{background-color:transparent;padding:0 6px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;padding:0 6px;display:flex;align-items:center;color:var(--rd-copy-primary);font-size:14px;min-height:40px;font-weight:600}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-active .ant-select-item-option-content{background:rgba(54,122,246,.1)}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content{color:var(--rd-copy-secondary);background:var(--rd-grey-200)}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty img,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty img,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty img{width:61px;height:68px}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty p,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty p,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty p{font-size:13px;color:var(--rd-copy-disable);font-weight:500;margin:0}::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content{padding:0 4px;min-height:32px}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;color:var(--rd-copy-primary);font-size:14px;padding:0 6px 0 32px;position:relative}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content:before{content:\"\";position:absolute;top:50%;left:6px;width:16px;height:16px;transform:translateY(-50%);border-radius:4px;border:1px solid var(--rd-grey-400)}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-selected .ant-select-item-option-content:before{background-image:url(/assets/img/icon/checkbox.svg);background-size:contain;background-position:center;background-repeat:no-repeat;border:none}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-state{display:none}::ng-deep .rd-form-item-option-content{display:flex;align-items:center;gap:8px;height:100%}::ng-deep .rd-form-item-option-content span{font-size:14px;font-weight:500}::ng-deep .rd-form-item-option-content .rd-token-icon{width:20px;height:20px;transition:opacity .3s ease-in-out}\n"] }]
1875
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1$1.TranslateService }]; }, propDecorators: { label: [{
1254
1876
  type: Input
1255
1877
  }], customTpl: [{
1256
1878
  type: Input
@@ -1268,12 +1890,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1268
1890
  type: Input
1269
1891
  }], optionHeightPx: [{
1270
1892
  type: Input
1893
+ }], nzMaxMultipleCount: [{
1894
+ type: Input
1271
1895
  }], isLoading: [{
1272
1896
  type: Input
1273
1897
  }], isShowSearch: [{
1274
1898
  type: Input
1275
1899
  }], isRemoteSearch: [{
1276
1900
  type: Input
1901
+ }], placeholder: [{
1902
+ type: Input
1903
+ }], isRquired: [{
1904
+ type: Input
1905
+ }], isShowErrorTip: [{
1906
+ type: Input
1907
+ }], isSearchWidthAuto: [{
1908
+ type: Input
1277
1909
  }], options: [{
1278
1910
  type: Input
1279
1911
  }], errorMessages: [{
@@ -1284,41 +1916,74 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1284
1916
  type: Output
1285
1917
  }], scrollToBottomEmit: [{
1286
1918
  type: Output
1919
+ }], businessLocation: [{
1920
+ type: Input
1921
+ }], businessLocationTitle: [{
1922
+ type: Input
1923
+ }], showSelectedCount: [{
1924
+ type: Input
1925
+ }], showClearAll: [{
1926
+ type: Input
1927
+ }], selectedLabel: [{
1928
+ type: Input
1929
+ }], clearAllLabel: [{
1930
+ type: Input
1931
+ }], showTopHint: [{
1932
+ type: Input
1933
+ }], topHintText: [{
1934
+ type: Input
1935
+ }], onResize: [{
1936
+ type: HostListener,
1937
+ args: ['window:resize']
1287
1938
  }] } });
1288
1939
 
1289
- class FormItemModule {
1940
+ class RdButtonModule {
1290
1941
  }
1291
- FormItemModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormItemModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1292
- FormItemModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: FormItemModule, declarations: [FormItemComponent], imports: [CommonModule], exports: [FormItemComponent] });
1293
- FormItemModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormItemModule, imports: [CommonModule] });
1294
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormItemModule, decorators: [{
1942
+ RdButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1943
+ RdButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: RdButtonModule, declarations: [RdButtonComponent], imports: [CommonModule, NzButtonModule, NzIconModule], exports: [RdButtonComponent] });
1944
+ RdButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdButtonModule, imports: [CommonModule, NzButtonModule, NzIconModule] });
1945
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdButtonModule, decorators: [{
1295
1946
  type: NgModule,
1296
1947
  args: [{
1297
- declarations: [FormItemComponent],
1298
- exports: [FormItemComponent],
1299
- imports: [CommonModule],
1948
+ declarations: [RdButtonComponent],
1949
+ imports: [CommonModule, NzButtonModule, NzIconModule],
1950
+ exports: [RdButtonComponent],
1300
1951
  }]
1301
1952
  }] });
1302
1953
 
1303
1954
  class RdSelectModule {
1304
1955
  }
1305
1956
  RdSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1306
- RdSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: RdSelectModule, declarations: [CustomSelectComponent], imports: [CommonModule,
1957
+ RdSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: RdSelectModule, declarations: [RdSelectComponent], imports: [CommonModule,
1307
1958
  FormsModule,
1308
1959
  ReactiveFormsModule,
1309
1960
  NzSpinModule,
1310
1961
  NzSelectModule,
1311
- FormItemModule], exports: [CustomSelectComponent] });
1962
+ FormItemModule,
1963
+ NzDrawerModule,
1964
+ NzInputModule,
1965
+ TranslateModule,
1966
+ NzCheckboxModule,
1967
+ NzButtonModule,
1968
+ NzModalModule,
1969
+ RdButtonModule], exports: [RdSelectComponent] });
1312
1970
  RdSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdSelectModule, imports: [CommonModule,
1313
1971
  FormsModule,
1314
1972
  ReactiveFormsModule,
1315
1973
  NzSpinModule,
1316
1974
  NzSelectModule,
1317
- FormItemModule] });
1975
+ FormItemModule,
1976
+ NzDrawerModule,
1977
+ NzInputModule,
1978
+ TranslateModule,
1979
+ NzCheckboxModule,
1980
+ NzButtonModule,
1981
+ NzModalModule,
1982
+ RdButtonModule] });
1318
1983
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdSelectModule, decorators: [{
1319
1984
  type: NgModule,
1320
1985
  args: [{
1321
- declarations: [CustomSelectComponent],
1986
+ declarations: [RdSelectComponent],
1322
1987
  imports: [
1323
1988
  CommonModule,
1324
1989
  FormsModule,
@@ -1326,8 +1991,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1326
1991
  NzSpinModule,
1327
1992
  NzSelectModule,
1328
1993
  FormItemModule,
1994
+ NzDrawerModule,
1995
+ NzInputModule,
1996
+ TranslateModule,
1997
+ NzCheckboxModule,
1998
+ NzButtonModule,
1999
+ NzModalModule,
2000
+ RdButtonModule,
1329
2001
  ],
1330
- exports: [CustomSelectComponent],
2002
+ exports: [RdSelectComponent],
1331
2003
  }]
1332
2004
  }] });
1333
2005
 
@@ -1376,7 +2048,7 @@ PureSelectTokenComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0
1376
2048
  useExisting: forwardRef(() => PureSelectTokenComponent),
1377
2049
  multi: true,
1378
2050
  },
1379
- ], ngImport: i0, template: "<app-rd-form-item\n type=\"select\"\n size=\"small\"\n [disabled]=\"disabled\"\n [focus]=\"isFocus || isOpen\"\n>\n <nz-select\n class=\"rd-form-item-select rd-form-item-select-s\"\n nzBorderless\n [nzShowArrow]=\"false\"\n [(ngModel)]=\"value\"\n [nzCustomTemplate]=\"currencySelectedTpl\"\n (ngModelChange)=\"handleValueChange($event)\"\n (nzOpenChange)=\"handleOpenChange($event)\"\n (nzFocus)=\"isFocus = true\"\n (nzBlur)=\"isFocus = false\"\n [disabled]=\"disabled\"\n [nzDropdownClassName]=\"'rd-form-item-select-dropdown-s'\"\n [nzOptionOverflowSize]=\"5\"\n [nzOptionHeightPx]=\"32\"\n [nzSuffixIcon]=\"customIcon\"\n [nzRemoveIcon]=\"removeIcon\"\n [nzDropdownMatchSelectWidth]=\"true\"\n [nzNotFoundContent]=\"nzNotFoundContent\"\n [nzPlaceHolder]=\"label\"\n >\n <nz-option\n *ngFor=\"let option of tokens\"\n [nzValue]=\"option.value\"\n [nzLabel]=\"option.name || ''\"\n [nzDisabled]=\"option.disabled || false\"\n [nzCustomContent]=\"true\"\n >\n <ng-container\n *ngTemplateOutlet=\"currencyOptionTpl; context: { $implicit: option }\"\n ></ng-container>\n </nz-option>\n <nz-option *ngIf=\"isLoading\" nzDisabled nzCustomContent>\n <nz-spin style=\"padding: 16px 0\"></nz-spin>\n </nz-option>\n </nz-select>\n</app-rd-form-item>\n\n<ng-template #currencyOptionTpl let-option>\n <div class=\"rd-form-item-option-content\">\n <nz-avatar\n [nzSize]=\"20\"\n [nzIcon]=\"'user'\"\n [nzSrc]=\"option.iconUrl\"\n ></nz-avatar>\n <span>{{ option.name }}</span>\n </div>\n</ng-template>\n\n<ng-template #currencySelectedTpl let-selected let-extra>\n <div class=\"rd-form-item-option-content\">\n <img [src]=\"getIconUrl(selected?.nzValue)\" class=\"rd-token-icon\" alt=\"\" />\n <span>{{ selected?.nzLabel }}</span>\n </div>\n</ng-template>\n\n<ng-template #removeIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.39645 2.39645C2.59171 2.20118 2.90829 2.20118 3.10355 2.39645L6 5.29289L8.89645 2.39645C9.09171 2.20118 9.40829 2.20118 9.60355 2.39645C9.79882 2.59171 9.79882 2.90829 9.60355 3.10355L6.70711 6L9.60355 8.89645C9.79882 9.09171 9.79882 9.40829 9.60355 9.60355C9.40829 9.79882 9.09171 9.79882 8.89645 9.60355L6 6.70711L3.10355 9.60355C2.90829 9.79882 2.59171 9.79882 2.39645 9.60355C2.20118 9.40829 2.20118 9.09171 2.39645 8.89645L5.29289 6L2.39645 3.10355C2.20118 2.90829 2.20118 2.59171 2.39645 2.39645Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #customIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #nzNotFoundContent>\n <div class=\"rd-form-item-empty\">\n <img src=\"/assets/img/no-data.svg\" />\n <p>No data</p>\n </div>\n</ng-template>\n", styles: [":host ::ng-deep .rd-form-item-select{width:100%}:host ::ng-deep .rd-form-item-select .ant-select-selection-placeholder{color:var(--rd-copy-disable)}:host ::ng-deep .rd-form-item-select .ant-select-selector .ant-select-selection-placeholder{line-height:34px}\n", "::ng-deep .rd-form-item-select{min-width:113px;min-height:52px;max-height:100%;position:relative}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search{margin-inline-start:0}::ng-deep .rd-form-item-select .ant-select-selection-search-input{padding:12px 4px 0}::ng-deep .rd-form-item-select .ant-select-selection-search-input::placeholder{color:var(--rd-copy-disable)}::ng-deep .rd-form-item-select .ant-select-selection-search .ant-select-selection-search-input{padding:12px 4px 0;transform:translate(-2px,12px)!important}::ng-deep .rd-form-item-select .ant-select-show-search{transform:translateY(10px)}::ng-deep .rd-form-item-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:14px 16px 10px;min-height:52px;height:-moz-fit-content;height:fit-content}::ng-deep .rd-form-item-select.ant-select-single .ant-select-selector .ant-select-selection-item:after{display:none}::ng-deep .rd-form-item-select.ant-select .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selector{padding:12px 16px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item{border-radius:4px;background:var(--rd-grey-100);font-size:14px;font-weight:500;color:var(--rd-copy-primary);display:flex;align-items:center;gap:4px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item .ant-select-selection-item-remove{line-height:1}::ng-deep .rd-form-item-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px}::ng-deep .rd-form-item-select.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px;border:1px solid var(--rd-input-fg-hover);background:var(--rd-input-bg-hover);box-shadow:0 0 0 2px #367af61a}::ng-deep .rd-form-item-select .ant-select-selection-placeholder{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selection-item-content{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-select .ant-select-arrow{transition:ease-in-out .2s all;cursor:pointer;pointer-events:initial}::ng-deep .rd-form-item-select:hover:has(.ant-select-clear) .ant-select-arrow{opacity:0}::ng-deep .rd-form-item-select.ant-select-focused .ant-select-arrow,::ng-deep .rd-form-item-select .ant-select-selector:focus-within .ant-select-arrow{transform:rotate(-180deg);transition:transform .2s ease}.rd-form-item-phone ::ng-deep .ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:6px 16px 10px!important;min-height:52px!important;height:-moz-fit-content;height:fit-content}.rd-form-item-phone ::ng-deep .ant-select-show-search.ant-select-multiple .ant-select-selector{padding:6px 16px!important}::ng-deep .rd-form-item-select-s{min-height:38px}::ng-deep .rd-form-item-select-s.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{height:100%;min-height:38px;padding:0 12px}::ng-deep .rd-form-item-select-dropdown .ant-select-dropdown,::ng-deep .rd-form-item-select-dropdown-s .ant-select-dropdown,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-dropdown{border-radius:4px;background:var(--rd-bg-panel);min-width:113px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option{background-color:transparent;padding:0 6px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;padding:0 6px;display:flex;align-items:center;color:var(--rd-copy-primary);font-size:14px;min-height:40px;font-weight:600}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-active .ant-select-item-option-content{background:rgba(54,122,246,.1)}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content{color:var(--rd-copy-secondary);background:var(--rd-grey-200)}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty img,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty img,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty img{width:61px;height:68px}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty p,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty p,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty p{font-size:13px;color:var(--rd-copy-disable);font-weight:500;margin:0}::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content{padding:0 4px;min-height:32px}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;color:var(--rd-copy-primary);font-size:14px;padding:0 6px 0 32px;position:relative}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content:before{content:\"\";position:absolute;top:50%;left:6px;width:16px;height:16px;transform:translateY(-50%);border-radius:4px;border:1px solid var(--rd-grey-400)}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-selected .ant-select-item-option-content:before{background-image:url(/assets/img/icon/checkbox.svg);background-size:contain;background-position:center;background-repeat:no-repeat;border:none}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-state{display:none}::ng-deep .rd-form-item-option-content{display:flex;align-items:center;gap:8px;height:100%}::ng-deep .rd-form-item-option-content span{font-size:14px;font-weight:500}::ng-deep .rd-form-item-option-content .rd-token-icon{width:20px;height:20px;transition:opacity .3s ease-in-out}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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"] }, { kind: "component", type: i3$4.NzSpinComponent, selector: "nz-spin", inputs: ["nzIndicator", "nzSize", "nzTip", "nzDelay", "nzSimple", "nzSpinning"], exportAs: ["nzSpin"] }, { kind: "component", type: i4$1.NzOptionComponent, selector: "nz-option", inputs: ["nzLabel", "nzValue", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i4$1.NzSelectComponent, selector: "nz-select", inputs: ["nzId", "nzSize", "nzStatus", "nzOptionHeightPx", "nzOptionOverflowSize", "nzDropdownClassName", "nzDropdownMatchSelectWidth", "nzDropdownStyle", "nzNotFoundContent", "nzPlaceHolder", "nzPlacement", "nzMaxTagCount", "nzDropdownRender", "nzCustomTemplate", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "nzBorderless", "nzShowSearch", "nzLoading", "nzAutoFocus", "nzAutoClearSearchValue", "nzServerSearch", "nzDisabled", "nzOpen", "nzSelectOnTab", "nzBackdrop", "nzOptions", "nzShowArrow"], outputs: ["nzOnSearch", "nzScrollToBottom", "nzOpenChange", "nzBlur", "nzFocus"], exportAs: ["nzSelect"] }, { kind: "component", type: FormItemComponent, selector: "app-rd-form-item", inputs: ["errorMessage", "disabled", "label", "type", "focus", "value", "size"] }, { kind: "component", type: i6.NzAvatarComponent, selector: "nz-avatar", inputs: ["nzShape", "nzSize", "nzGap", "nzText", "nzSrc", "nzSrcSet", "nzAlt", "nzIcon"], outputs: ["nzError"], exportAs: ["nzAvatar"] }] });
2051
+ ], ngImport: i0, template: "<app-rd-form-item\n type=\"select\"\n size=\"small\"\n [disabled]=\"disabled\"\n [focus]=\"isFocus || isOpen\"\n>\n <nz-select\n class=\"rd-form-item-select rd-form-item-select-s\"\n nzBorderless\n [nzShowArrow]=\"false\"\n [(ngModel)]=\"value\"\n [nzCustomTemplate]=\"currencySelectedTpl\"\n (ngModelChange)=\"handleValueChange($event)\"\n (nzOpenChange)=\"handleOpenChange($event)\"\n (nzFocus)=\"isFocus = true\"\n (nzBlur)=\"isFocus = false\"\n [disabled]=\"disabled\"\n [nzDropdownClassName]=\"'rd-form-item-select-dropdown-s'\"\n [nzOptionOverflowSize]=\"5\"\n [nzOptionHeightPx]=\"32\"\n [nzSuffixIcon]=\"customIcon\"\n [nzRemoveIcon]=\"removeIcon\"\n [nzDropdownMatchSelectWidth]=\"true\"\n [nzNotFoundContent]=\"nzNotFoundContent\"\n [nzPlaceHolder]=\"label\"\n >\n <nz-option\n *ngFor=\"let option of tokens\"\n [nzValue]=\"option.value\"\n [nzLabel]=\"option.name || ''\"\n [nzDisabled]=\"option.disabled || false\"\n [nzCustomContent]=\"true\"\n >\n <ng-container\n *ngTemplateOutlet=\"currencyOptionTpl; context: { $implicit: option }\"\n ></ng-container>\n </nz-option>\n <nz-option *ngIf=\"isLoading\" nzDisabled nzCustomContent>\n <nz-spin style=\"padding: 16px 0\"></nz-spin>\n </nz-option>\n </nz-select>\n</app-rd-form-item>\n\n<ng-template #currencyOptionTpl let-option>\n <div class=\"rd-form-item-option-content\">\n <nz-avatar\n [nzSize]=\"20\"\n [nzIcon]=\"'user'\"\n [nzSrc]=\"option.iconUrl\"\n ></nz-avatar>\n <span>{{ option.name }}</span>\n </div>\n</ng-template>\n\n<ng-template #currencySelectedTpl let-selected let-extra>\n <div class=\"rd-form-item-option-content\">\n <img [src]=\"getIconUrl(selected?.nzValue)\" class=\"rd-token-icon\" alt=\"\" />\n <span>{{ selected?.nzLabel }}</span>\n </div>\n</ng-template>\n\n<ng-template #removeIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.39645 2.39645C2.59171 2.20118 2.90829 2.20118 3.10355 2.39645L6 5.29289L8.89645 2.39645C9.09171 2.20118 9.40829 2.20118 9.60355 2.39645C9.79882 2.59171 9.79882 2.90829 9.60355 3.10355L6.70711 6L9.60355 8.89645C9.79882 9.09171 9.79882 9.40829 9.60355 9.60355C9.40829 9.79882 9.09171 9.79882 8.89645 9.60355L6 6.70711L3.10355 9.60355C2.90829 9.79882 2.59171 9.79882 2.39645 9.60355C2.20118 9.40829 2.20118 9.09171 2.39645 8.89645L5.29289 6L2.39645 3.10355C2.20118 2.90829 2.20118 2.59171 2.39645 2.39645Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #customIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #nzNotFoundContent>\n <div class=\"rd-form-item-empty\">\n <img src=\"/assets/img/no-data.svg\" />\n <p>No data</p>\n </div>\n</ng-template>\n", styles: [":host ::ng-deep .rd-form-item-select{width:100%}:host ::ng-deep .rd-form-item-select .ant-select-selection-placeholder{color:var(--rd-copy-disable)}:host ::ng-deep .rd-form-item-select .ant-select-selector .ant-select-selection-placeholder{line-height:34px}\n", "::ng-deep .rd-form-item-select{min-width:113px;min-height:52px;max-height:100%;position:relative}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search{margin-inline-start:0}::ng-deep .rd-form-item-select .ant-select-selection-search-input{padding:12px 4px 0}::ng-deep .rd-form-item-select .ant-select-selection-search-input::placeholder{color:var(--rd-copy-disable)}::ng-deep .rd-form-item-select .ant-select-selection-search .ant-select-selection-search-input{padding:12px 4px 0;transform:translate(-2px,12px)!important}::ng-deep .rd-form-item-select .ant-select-show-search{transform:translateY(10px)}::ng-deep .rd-form-item-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:14px 16px 10px;min-height:52px;height:-moz-fit-content;height:fit-content}.rd-form-item-phone ::ng-deep .rd-form-item-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:6px 16px 10px;min-height:52px;height:-moz-fit-content;height:fit-content}.rd-form-item-phone ::ng-deep .rd-form-item-select.ant-select-show-search.ant-select-multiple .ant-select-selector{padding:6px 16px}::ng-deep .rd-form-item-select.ant-select-single .ant-select-selector .ant-select-selection-item:after{display:none}::ng-deep .rd-form-item-select.ant-select .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selector{padding:12px 16px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item{border-radius:4px;background:transparent;font-size:14px;font-weight:500;color:var(--rd-copy-primary);display:flex;align-items:center;gap:4px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item .ant-select-selection-item-remove{line-height:1}::ng-deep .rd-form-item-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px}::ng-deep .rd-form-item-select.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px;border:1px solid var(--rd-input-fg-hover);background:var(--rd-input-bg-hover);box-shadow:0 0 0 2px #367af61a}::ng-deep .rd-form-item-select .ant-empty-description{font-weight:400;font-size:14px;line-height:22px;color:var(--rd-copy-primary)}::ng-deep .rd-form-item-select .ant-select-selection-placeholder{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selection-item-content{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-select .ant-select-arrow{transition:ease-in-out .2s all;cursor:pointer;pointer-events:initial}::ng-deep .rd-form-item-select:hover:has(.ant-select-clear) .ant-select-arrow{opacity:0}::ng-deep .rd-form-item-select.ant-select-focused .ant-select-arrow,::ng-deep .rd-form-item-select .ant-select-selector:focus-within .ant-select-arrow{transform:rotate(-180deg);transition:transform .2s ease}::ng-deep .rd-form-item-select-s{min-height:38px}::ng-deep .rd-form-item-select-s.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{height:100%;min-height:38px;padding:0 12px}::ng-deep .rd-form-item-select-dropdown .ant-select-dropdown,::ng-deep .rd-form-item-select-dropdown-s .ant-select-dropdown,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-dropdown{border-radius:4px;background:var(--rd-bg-panel);min-width:113px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option{background-color:transparent;padding:0 6px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;padding:0 6px;display:flex;align-items:center;color:var(--rd-copy-primary);font-size:14px;min-height:40px;font-weight:600}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-active .ant-select-item-option-content{background:rgba(54,122,246,.1)}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content{color:var(--rd-copy-secondary);background:var(--rd-grey-200)}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty img,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty img,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty img{width:61px;height:68px}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty p,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty p,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty p{font-size:13px;color:var(--rd-copy-disable);font-weight:500;margin:0}::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content{padding:0 4px;min-height:32px}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;color:var(--rd-copy-primary);font-size:14px;padding:0 6px 0 32px;position:relative}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content:before{content:\"\";position:absolute;top:50%;left:6px;width:16px;height:16px;transform:translateY(-50%);border-radius:4px;border:1px solid var(--rd-grey-400)}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-selected .ant-select-item-option-content:before{background-image:url(/assets/img/icon/checkbox.svg);background-size:contain;background-position:center;background-repeat:no-repeat;border:none}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-state{display:none}::ng-deep .rd-form-item-option-content{display:flex;align-items:center;gap:8px;height:100%}::ng-deep .rd-form-item-option-content span{font-size:14px;font-weight:500}::ng-deep .rd-form-item-option-content .rd-token-icon{width:20px;height:20px;transition:opacity .3s ease-in-out}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$2.NzSpinComponent, selector: "nz-spin", inputs: ["nzIndicator", "nzSize", "nzTip", "nzDelay", "nzSimple", "nzSpinning"], exportAs: ["nzSpin"] }, { kind: "component", type: i2$1.NzOptionComponent, selector: "nz-option", inputs: ["nzLabel", "nzValue", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i2$1.NzSelectComponent, selector: "nz-select", inputs: ["nzId", "nzSize", "nzStatus", "nzOptionHeightPx", "nzOptionOverflowSize", "nzDropdownClassName", "nzDropdownMatchSelectWidth", "nzDropdownStyle", "nzNotFoundContent", "nzPlaceHolder", "nzPlacement", "nzMaxTagCount", "nzDropdownRender", "nzCustomTemplate", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "nzBorderless", "nzShowSearch", "nzLoading", "nzAutoFocus", "nzAutoClearSearchValue", "nzServerSearch", "nzDisabled", "nzOpen", "nzSelectOnTab", "nzBackdrop", "nzOptions", "nzShowArrow"], outputs: ["nzOnSearch", "nzScrollToBottom", "nzOpenChange", "nzBlur", "nzFocus"], exportAs: ["nzSelect"] }, { kind: "component", type: FormItemComponent, selector: "app-rd-form-item", inputs: ["errorMessage", "disabled", "label", "type", "focus", "value", "size", "theme"] }, { kind: "component", type: i6.NzAvatarComponent, selector: "nz-avatar", inputs: ["nzShape", "nzSize", "nzGap", "nzText", "nzSrc", "nzSrcSet", "nzAlt", "nzIcon"], outputs: ["nzError"], exportAs: ["nzAvatar"] }] });
1380
2052
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PureSelectTokenComponent, decorators: [{
1381
2053
  type: Component,
1382
2054
  args: [{ selector: 'app-rd-pure-select-token', providers: [
@@ -1385,7 +2057,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1385
2057
  useExisting: forwardRef(() => PureSelectTokenComponent),
1386
2058
  multi: true,
1387
2059
  },
1388
- ], template: "<app-rd-form-item\n type=\"select\"\n size=\"small\"\n [disabled]=\"disabled\"\n [focus]=\"isFocus || isOpen\"\n>\n <nz-select\n class=\"rd-form-item-select rd-form-item-select-s\"\n nzBorderless\n [nzShowArrow]=\"false\"\n [(ngModel)]=\"value\"\n [nzCustomTemplate]=\"currencySelectedTpl\"\n (ngModelChange)=\"handleValueChange($event)\"\n (nzOpenChange)=\"handleOpenChange($event)\"\n (nzFocus)=\"isFocus = true\"\n (nzBlur)=\"isFocus = false\"\n [disabled]=\"disabled\"\n [nzDropdownClassName]=\"'rd-form-item-select-dropdown-s'\"\n [nzOptionOverflowSize]=\"5\"\n [nzOptionHeightPx]=\"32\"\n [nzSuffixIcon]=\"customIcon\"\n [nzRemoveIcon]=\"removeIcon\"\n [nzDropdownMatchSelectWidth]=\"true\"\n [nzNotFoundContent]=\"nzNotFoundContent\"\n [nzPlaceHolder]=\"label\"\n >\n <nz-option\n *ngFor=\"let option of tokens\"\n [nzValue]=\"option.value\"\n [nzLabel]=\"option.name || ''\"\n [nzDisabled]=\"option.disabled || false\"\n [nzCustomContent]=\"true\"\n >\n <ng-container\n *ngTemplateOutlet=\"currencyOptionTpl; context: { $implicit: option }\"\n ></ng-container>\n </nz-option>\n <nz-option *ngIf=\"isLoading\" nzDisabled nzCustomContent>\n <nz-spin style=\"padding: 16px 0\"></nz-spin>\n </nz-option>\n </nz-select>\n</app-rd-form-item>\n\n<ng-template #currencyOptionTpl let-option>\n <div class=\"rd-form-item-option-content\">\n <nz-avatar\n [nzSize]=\"20\"\n [nzIcon]=\"'user'\"\n [nzSrc]=\"option.iconUrl\"\n ></nz-avatar>\n <span>{{ option.name }}</span>\n </div>\n</ng-template>\n\n<ng-template #currencySelectedTpl let-selected let-extra>\n <div class=\"rd-form-item-option-content\">\n <img [src]=\"getIconUrl(selected?.nzValue)\" class=\"rd-token-icon\" alt=\"\" />\n <span>{{ selected?.nzLabel }}</span>\n </div>\n</ng-template>\n\n<ng-template #removeIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.39645 2.39645C2.59171 2.20118 2.90829 2.20118 3.10355 2.39645L6 5.29289L8.89645 2.39645C9.09171 2.20118 9.40829 2.20118 9.60355 2.39645C9.79882 2.59171 9.79882 2.90829 9.60355 3.10355L6.70711 6L9.60355 8.89645C9.79882 9.09171 9.79882 9.40829 9.60355 9.60355C9.40829 9.79882 9.09171 9.79882 8.89645 9.60355L6 6.70711L3.10355 9.60355C2.90829 9.79882 2.59171 9.79882 2.39645 9.60355C2.20118 9.40829 2.20118 9.09171 2.39645 8.89645L5.29289 6L2.39645 3.10355C2.20118 2.90829 2.20118 2.59171 2.39645 2.39645Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #customIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #nzNotFoundContent>\n <div class=\"rd-form-item-empty\">\n <img src=\"/assets/img/no-data.svg\" />\n <p>No data</p>\n </div>\n</ng-template>\n", styles: [":host ::ng-deep .rd-form-item-select{width:100%}:host ::ng-deep .rd-form-item-select .ant-select-selection-placeholder{color:var(--rd-copy-disable)}:host ::ng-deep .rd-form-item-select .ant-select-selector .ant-select-selection-placeholder{line-height:34px}\n", "::ng-deep .rd-form-item-select{min-width:113px;min-height:52px;max-height:100%;position:relative}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search{margin-inline-start:0}::ng-deep .rd-form-item-select .ant-select-selection-search-input{padding:12px 4px 0}::ng-deep .rd-form-item-select .ant-select-selection-search-input::placeholder{color:var(--rd-copy-disable)}::ng-deep .rd-form-item-select .ant-select-selection-search .ant-select-selection-search-input{padding:12px 4px 0;transform:translate(-2px,12px)!important}::ng-deep .rd-form-item-select .ant-select-show-search{transform:translateY(10px)}::ng-deep .rd-form-item-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:14px 16px 10px;min-height:52px;height:-moz-fit-content;height:fit-content}::ng-deep .rd-form-item-select.ant-select-single .ant-select-selector .ant-select-selection-item:after{display:none}::ng-deep .rd-form-item-select.ant-select .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selector{padding:12px 16px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item{border-radius:4px;background:var(--rd-grey-100);font-size:14px;font-weight:500;color:var(--rd-copy-primary);display:flex;align-items:center;gap:4px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item .ant-select-selection-item-remove{line-height:1}::ng-deep .rd-form-item-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px}::ng-deep .rd-form-item-select.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px;border:1px solid var(--rd-input-fg-hover);background:var(--rd-input-bg-hover);box-shadow:0 0 0 2px #367af61a}::ng-deep .rd-form-item-select .ant-select-selection-placeholder{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selection-item-content{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-select .ant-select-arrow{transition:ease-in-out .2s all;cursor:pointer;pointer-events:initial}::ng-deep .rd-form-item-select:hover:has(.ant-select-clear) .ant-select-arrow{opacity:0}::ng-deep .rd-form-item-select.ant-select-focused .ant-select-arrow,::ng-deep .rd-form-item-select .ant-select-selector:focus-within .ant-select-arrow{transform:rotate(-180deg);transition:transform .2s ease}.rd-form-item-phone ::ng-deep .ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:6px 16px 10px!important;min-height:52px!important;height:-moz-fit-content;height:fit-content}.rd-form-item-phone ::ng-deep .ant-select-show-search.ant-select-multiple .ant-select-selector{padding:6px 16px!important}::ng-deep .rd-form-item-select-s{min-height:38px}::ng-deep .rd-form-item-select-s.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{height:100%;min-height:38px;padding:0 12px}::ng-deep .rd-form-item-select-dropdown .ant-select-dropdown,::ng-deep .rd-form-item-select-dropdown-s .ant-select-dropdown,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-dropdown{border-radius:4px;background:var(--rd-bg-panel);min-width:113px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option{background-color:transparent;padding:0 6px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;padding:0 6px;display:flex;align-items:center;color:var(--rd-copy-primary);font-size:14px;min-height:40px;font-weight:600}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-active .ant-select-item-option-content{background:rgba(54,122,246,.1)}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content{color:var(--rd-copy-secondary);background:var(--rd-grey-200)}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty img,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty img,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty img{width:61px;height:68px}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty p,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty p,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty p{font-size:13px;color:var(--rd-copy-disable);font-weight:500;margin:0}::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content{padding:0 4px;min-height:32px}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;color:var(--rd-copy-primary);font-size:14px;padding:0 6px 0 32px;position:relative}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content:before{content:\"\";position:absolute;top:50%;left:6px;width:16px;height:16px;transform:translateY(-50%);border-radius:4px;border:1px solid var(--rd-grey-400)}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-selected .ant-select-item-option-content:before{background-image:url(/assets/img/icon/checkbox.svg);background-size:contain;background-position:center;background-repeat:no-repeat;border:none}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-state{display:none}::ng-deep .rd-form-item-option-content{display:flex;align-items:center;gap:8px;height:100%}::ng-deep .rd-form-item-option-content span{font-size:14px;font-weight:500}::ng-deep .rd-form-item-option-content .rd-token-icon{width:20px;height:20px;transition:opacity .3s ease-in-out}\n"] }]
2060
+ ], template: "<app-rd-form-item\n type=\"select\"\n size=\"small\"\n [disabled]=\"disabled\"\n [focus]=\"isFocus || isOpen\"\n>\n <nz-select\n class=\"rd-form-item-select rd-form-item-select-s\"\n nzBorderless\n [nzShowArrow]=\"false\"\n [(ngModel)]=\"value\"\n [nzCustomTemplate]=\"currencySelectedTpl\"\n (ngModelChange)=\"handleValueChange($event)\"\n (nzOpenChange)=\"handleOpenChange($event)\"\n (nzFocus)=\"isFocus = true\"\n (nzBlur)=\"isFocus = false\"\n [disabled]=\"disabled\"\n [nzDropdownClassName]=\"'rd-form-item-select-dropdown-s'\"\n [nzOptionOverflowSize]=\"5\"\n [nzOptionHeightPx]=\"32\"\n [nzSuffixIcon]=\"customIcon\"\n [nzRemoveIcon]=\"removeIcon\"\n [nzDropdownMatchSelectWidth]=\"true\"\n [nzNotFoundContent]=\"nzNotFoundContent\"\n [nzPlaceHolder]=\"label\"\n >\n <nz-option\n *ngFor=\"let option of tokens\"\n [nzValue]=\"option.value\"\n [nzLabel]=\"option.name || ''\"\n [nzDisabled]=\"option.disabled || false\"\n [nzCustomContent]=\"true\"\n >\n <ng-container\n *ngTemplateOutlet=\"currencyOptionTpl; context: { $implicit: option }\"\n ></ng-container>\n </nz-option>\n <nz-option *ngIf=\"isLoading\" nzDisabled nzCustomContent>\n <nz-spin style=\"padding: 16px 0\"></nz-spin>\n </nz-option>\n </nz-select>\n</app-rd-form-item>\n\n<ng-template #currencyOptionTpl let-option>\n <div class=\"rd-form-item-option-content\">\n <nz-avatar\n [nzSize]=\"20\"\n [nzIcon]=\"'user'\"\n [nzSrc]=\"option.iconUrl\"\n ></nz-avatar>\n <span>{{ option.name }}</span>\n </div>\n</ng-template>\n\n<ng-template #currencySelectedTpl let-selected let-extra>\n <div class=\"rd-form-item-option-content\">\n <img [src]=\"getIconUrl(selected?.nzValue)\" class=\"rd-token-icon\" alt=\"\" />\n <span>{{ selected?.nzLabel }}</span>\n </div>\n</ng-template>\n\n<ng-template #removeIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.39645 2.39645C2.59171 2.20118 2.90829 2.20118 3.10355 2.39645L6 5.29289L8.89645 2.39645C9.09171 2.20118 9.40829 2.20118 9.60355 2.39645C9.79882 2.59171 9.79882 2.90829 9.60355 3.10355L6.70711 6L9.60355 8.89645C9.79882 9.09171 9.79882 9.40829 9.60355 9.60355C9.40829 9.79882 9.09171 9.79882 8.89645 9.60355L6 6.70711L3.10355 9.60355C2.90829 9.79882 2.59171 9.79882 2.39645 9.60355C2.20118 9.40829 2.20118 9.09171 2.39645 8.89645L5.29289 6L2.39645 3.10355C2.20118 2.90829 2.20118 2.59171 2.39645 2.39645Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #customIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #nzNotFoundContent>\n <div class=\"rd-form-item-empty\">\n <img src=\"/assets/img/no-data.svg\" />\n <p>No data</p>\n </div>\n</ng-template>\n", styles: [":host ::ng-deep .rd-form-item-select{width:100%}:host ::ng-deep .rd-form-item-select .ant-select-selection-placeholder{color:var(--rd-copy-disable)}:host ::ng-deep .rd-form-item-select .ant-select-selector .ant-select-selection-placeholder{line-height:34px}\n", "::ng-deep .rd-form-item-select{min-width:113px;min-height:52px;max-height:100%;position:relative}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-search{margin-inline-start:0}::ng-deep .rd-form-item-select .ant-select-selection-search-input{padding:12px 4px 0}::ng-deep .rd-form-item-select .ant-select-selection-search-input::placeholder{color:var(--rd-copy-disable)}::ng-deep .rd-form-item-select .ant-select-selection-search .ant-select-selection-search-input{padding:12px 4px 0;transform:translate(-2px,12px)!important}::ng-deep .rd-form-item-select .ant-select-show-search{transform:translateY(10px)}::ng-deep .rd-form-item-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:14px 16px 10px;min-height:52px;height:-moz-fit-content;height:fit-content}.rd-form-item-phone ::ng-deep .rd-form-item-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:6px 16px 10px;min-height:52px;height:-moz-fit-content;height:fit-content}.rd-form-item-phone ::ng-deep .rd-form-item-select.ant-select-show-search.ant-select-multiple .ant-select-selector{padding:6px 16px}::ng-deep .rd-form-item-select.ant-select-single .ant-select-selector .ant-select-selection-item:after{display:none}::ng-deep .rd-form-item-select.ant-select .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selector{padding:12px 16px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item{border-radius:4px;background:transparent;font-size:14px;font-weight:500;color:var(--rd-copy-primary);display:flex;align-items:center;gap:4px}::ng-deep .rd-form-item-select.ant-select-multiple .ant-select-selection-item .ant-select-selection-item-remove{line-height:1}::ng-deep .rd-form-item-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px}::ng-deep .rd-form-item-select.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px;border:1px solid var(--rd-input-fg-hover);background:var(--rd-input-bg-hover);box-shadow:0 0 0 2px #367af61a}::ng-deep .rd-form-item-select .ant-empty-description{font-weight:400;font-size:14px;line-height:22px;color:var(--rd-copy-primary)}::ng-deep .rd-form-item-select .ant-select-selection-placeholder{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-form-item-select .ant-select-selection-item-content{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-form-item-select .ant-select-arrow{transition:ease-in-out .2s all;cursor:pointer;pointer-events:initial}::ng-deep .rd-form-item-select:hover:has(.ant-select-clear) .ant-select-arrow{opacity:0}::ng-deep .rd-form-item-select.ant-select-focused .ant-select-arrow,::ng-deep .rd-form-item-select .ant-select-selector:focus-within .ant-select-arrow{transform:rotate(-180deg);transition:transform .2s ease}::ng-deep .rd-form-item-select-s{min-height:38px}::ng-deep .rd-form-item-select-s.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{height:100%;min-height:38px;padding:0 12px}::ng-deep .rd-form-item-select-dropdown .ant-select-dropdown,::ng-deep .rd-form-item-select-dropdown-s .ant-select-dropdown,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-dropdown{border-radius:4px;background:var(--rd-bg-panel);min-width:113px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option{background-color:transparent;padding:0 6px}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;padding:0 6px;display:flex;align-items:center;color:var(--rd-copy-primary);font-size:14px;min-height:40px;font-weight:600}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-active .ant-select-item-option-content{background:rgba(54,122,246,.1)}::ng-deep .rd-form-item-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-disabled .ant-select-item-option-content,::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-disabled .ant-select-item-option-content{color:var(--rd-copy-secondary);background:var(--rd-grey-200)}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty img,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty img,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty img{width:61px;height:68px}::ng-deep .rd-form-item-select-dropdown .rd-form-item-empty p,::ng-deep .rd-form-item-select-dropdown-s .rd-form-item-empty p,::ng-deep .rd-form-item-multiple-select-dropdown .rd-form-item-empty p{font-size:13px;color:var(--rd-copy-disable);font-weight:500;margin:0}::ng-deep .rd-form-item-select-dropdown-s .ant-select-item-option-content{padding:0 4px;min-height:32px}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content{border-radius:4px;color:var(--rd-copy-primary);font-size:14px;padding:0 6px 0 32px;position:relative}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-content:before{content:\"\";position:absolute;top:50%;left:6px;width:16px;height:16px;transform:translateY(-50%);border-radius:4px;border:1px solid var(--rd-grey-400)}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-selected .ant-select-item-option-content:before{background-image:url(/assets/img/icon/checkbox.svg);background-size:contain;background-position:center;background-repeat:no-repeat;border:none}::ng-deep .rd-form-item-multiple-select-dropdown .ant-select-item-option-state{display:none}::ng-deep .rd-form-item-option-content{display:flex;align-items:center;gap:8px;height:100%}::ng-deep .rd-form-item-option-content span{font-size:14px;font-weight:500}::ng-deep .rd-form-item-option-content .rd-token-icon{width:20px;height:20px;transition:opacity .3s ease-in-out}\n"] }]
1389
2061
  }], propDecorators: { disabled: [{
1390
2062
  type: Input
1391
2063
  }], tokens: [{
@@ -1428,6 +2100,396 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1428
2100
  }]
1429
2101
  }] });
1430
2102
 
2103
+ class IndustryCascaderComponent {
2104
+ constructor(translate, cdr) {
2105
+ this.translate = translate;
2106
+ this.cdr = cdr;
2107
+ this.disabled = false;
2108
+ this.errorMessages = {
2109
+ pattern: 'invalid_format',
2110
+ custom: 'validation_failed',
2111
+ };
2112
+ this.valueChange = new EventEmitter();
2113
+ this.label = '1st industry nature of business';
2114
+ this.name = '';
2115
+ this.options = [];
2116
+ this.searchInput = '';
2117
+ this.value = [];
2118
+ this.drawerOpen = false;
2119
+ this.view = 'root';
2120
+ this.activeParent = null;
2121
+ this.isFocus = false;
2122
+ this.isOpen = false;
2123
+ this.searchTerm = '';
2124
+ this.searchChildrenTerm = '';
2125
+ this.filteredOptions = [];
2126
+ this.filteredChildren = [];
2127
+ this.searchTimer = null;
2128
+ this.control = null;
2129
+ // 添加新属性
2130
+ this.isTextOverflow = false;
2131
+ // 修改isTextOverflow为对象,记录更详细的信息
2132
+ this.textOverflowInfo = {
2133
+ isOverflow: false,
2134
+ lineCount: 0,
2135
+ maxLines: 2,
2136
+ exceededLines: 0, // 超过的行数
2137
+ };
2138
+ this.overflowLineCount = 0; // 实际占用的行数
2139
+ this.maxAllowedLines = 2; // 最大允许行数
2140
+ this.resizeObserver = null;
2141
+ this.onChange = () => { };
2142
+ this.onTouched = () => { };
2143
+ // 响应式:是否是移动端
2144
+ this.isMobile = false;
2145
+ this.cascaderSearchFn = (input, path) => {
2146
+ const i = input.toLowerCase();
2147
+ return path.some((p) => p.labelLower.includes(i));
2148
+ };
2149
+ }
2150
+ get hostThemeLight() {
2151
+ return this.theme === 'light';
2152
+ }
2153
+ get hostThemeDark() {
2154
+ return this.theme === 'dark';
2155
+ }
2156
+ get drawerWrapClassName() {
2157
+ const themeClass = this.theme === 'light'
2158
+ ? 'theme-light'
2159
+ : this.theme === 'dark'
2160
+ ? 'theme-dark'
2161
+ : '';
2162
+ return ['cascader-drawer', themeClass].filter(Boolean).join(' ');
2163
+ }
2164
+ get showError() {
2165
+ var _a, _b, _c;
2166
+ return (!!((_a = this.control) === null || _a === void 0 ? void 0 : _a.invalid) && (((_b = this.control) === null || _b === void 0 ? void 0 : _b.touched) || ((_c = this.control) === null || _c === void 0 ? void 0 : _c.dirty)));
2167
+ }
2168
+ get currentErrorMessage() {
2169
+ var _a, _b, _c;
2170
+ if (!((_a = this.control) === null || _a === void 0 ? void 0 : _a.errors))
2171
+ return '';
2172
+ const firstError = Object.keys(((_b = this.control) === null || _b === void 0 ? void 0 : _b.errors) || {})[0];
2173
+ const msg = this.errorMessages[firstError];
2174
+ switch (firstError) {
2175
+ case 'required':
2176
+ return (msg ||
2177
+ `${this.translate.instant('please_select')}${this.label.toLowerCase()}`);
2178
+ case 'custom':
2179
+ return (((_c = this.control) === null || _c === void 0 ? void 0 : _c.errors['custom']) ||
2180
+ this.translate.instant('validation_failed'));
2181
+ default:
2182
+ return (this.translate.instant(this.errorMessages[firstError]) ||
2183
+ this.translate.instant('validation_failed'));
2184
+ }
2185
+ }
2186
+ onResize() {
2187
+ this.updateIsMobile();
2188
+ }
2189
+ ngOnInit() {
2190
+ this.handleInitOptions();
2191
+ this.updateIsMobile();
2192
+ const mq = window.matchMedia('(max-width: 997px)');
2193
+ if (mq.addEventListener) {
2194
+ mq.addEventListener('change', () => this.updateIsMobile());
2195
+ }
2196
+ else {
2197
+ mq.addListener(() => this.updateIsMobile());
2198
+ }
2199
+ }
2200
+ ngOnChanges(changes) {
2201
+ if (changes['industryCodes']) {
2202
+ this.handleInitOptions();
2203
+ }
2204
+ }
2205
+ ngAfterViewInit() {
2206
+ this.setupResizeObserver();
2207
+ // 初始检测
2208
+ setTimeout(() => this.checkTextOverflow(), 0);
2209
+ }
2210
+ ngOnDestroy() {
2211
+ if (this.resizeObserver) {
2212
+ this.resizeObserver.disconnect();
2213
+ }
2214
+ }
2215
+ setupResizeObserver() {
2216
+ var _a, _b;
2217
+ if (typeof ResizeObserver !== 'undefined') {
2218
+ this.resizeObserver = new ResizeObserver(() => {
2219
+ this.checkTextOverflow();
2220
+ });
2221
+ if ((_a = this.valueText) === null || _a === void 0 ? void 0 : _a.nativeElement) {
2222
+ this.resizeObserver.observe(this.valueText.nativeElement);
2223
+ }
2224
+ if ((_b = this.cascaderContainer) === null || _b === void 0 ? void 0 : _b.nativeElement) {
2225
+ this.resizeObserver.observe(this.cascaderContainer.nativeElement);
2226
+ }
2227
+ }
2228
+ }
2229
+ checkTextOverflow() {
2230
+ var _a;
2231
+ if (!((_a = this.valueText) === null || _a === void 0 ? void 0 : _a.nativeElement))
2232
+ return;
2233
+ const textElement = this.valueText.nativeElement;
2234
+ // 方法1:计算实际行数
2235
+ this.calculateLineCount(textElement);
2236
+ // 方法2:备用宽度检测
2237
+ this.checkWidthOverflow(textElement);
2238
+ }
2239
+ calculateLineCount(element) {
2240
+ // 获取元素的样式
2241
+ const computedStyle = window.getComputedStyle(element);
2242
+ const lineHeight = parseFloat(computedStyle.lineHeight);
2243
+ const scrollHeight = element.scrollHeight;
2244
+ const clientHeight = element.clientHeight;
2245
+ // 如果lineHeight为0或NaN,使用默认值
2246
+ const actualLineHeight = lineHeight && !isNaN(lineHeight) ? lineHeight : 20; // 默认20px
2247
+ // 计算实际行数
2248
+ const lineCount = Math.round(scrollHeight / actualLineHeight);
2249
+ this.overflowLineCount = lineCount;
2250
+ // 检查是否超过最大允许行数
2251
+ this.isTextOverflow = lineCount > this.maxAllowedLines;
2252
+ // 你也可以记录更多信息
2253
+ this.textOverflowInfo = {
2254
+ isOverflow: lineCount > this.maxAllowedLines,
2255
+ lineCount: lineCount,
2256
+ maxLines: this.maxAllowedLines,
2257
+ exceededLines: Math.max(0, lineCount - this.maxAllowedLines),
2258
+ };
2259
+ console.log(`文本行数: ${lineCount}, 是否溢出: ${this.isTextOverflow}`);
2260
+ this.cdr.markForCheck();
2261
+ }
2262
+ checkWidthOverflow(element) {
2263
+ var _a;
2264
+ // 原有的宽度检测逻辑(作为备用)
2265
+ const container = (_a = this.cascaderContainer) === null || _a === void 0 ? void 0 : _a.nativeElement;
2266
+ if (container) {
2267
+ const containerStyle = window.getComputedStyle(container);
2268
+ const containerWidth = parseFloat(containerStyle.width);
2269
+ const textWidth = element.scrollWidth;
2270
+ const containerPadding = parseFloat(containerStyle.paddingLeft) +
2271
+ parseFloat(containerStyle.paddingRight);
2272
+ const availableWidth = containerWidth - containerPadding - 56;
2273
+ const isWidthOverflow = textWidth > availableWidth;
2274
+ // 结合两种检测结果
2275
+ if (isWidthOverflow && !this.isTextOverflow) {
2276
+ this.isTextOverflow = true;
2277
+ }
2278
+ }
2279
+ }
2280
+ // 修改handleValueChange方法,添加延迟检测
2281
+ handleValueChange(value) {
2282
+ this.value = value;
2283
+ this.onChange(this.value);
2284
+ this.valueChange.emit(this.value);
2285
+ // 增加延迟,确保DOM完全更新
2286
+ setTimeout(() => {
2287
+ this.checkTextOverflow();
2288
+ // 可能需要多次检测以确保准确
2289
+ setTimeout(() => this.checkTextOverflow(), 100);
2290
+ }, 50);
2291
+ }
2292
+ updateIsMobile() {
2293
+ this.isMobile = window.matchMedia('(max-width: 997px)').matches;
2294
+ }
2295
+ validate(control) {
2296
+ if (control) {
2297
+ this.control = control;
2298
+ }
2299
+ return null;
2300
+ }
2301
+ setDisabledState(isDisabled) {
2302
+ this.disabled = isDisabled;
2303
+ this.cdr.markForCheck();
2304
+ }
2305
+ writeValue(value) {
2306
+ this.value = value;
2307
+ }
2308
+ registerOnChange(fn) {
2309
+ this.onChange = fn;
2310
+ }
2311
+ registerOnTouched(fn) {
2312
+ this.onTouched = fn;
2313
+ }
2314
+ onVisibleChange(value) {
2315
+ this.isOpen = value;
2316
+ }
2317
+ handleInitOptions() {
2318
+ var _a;
2319
+ if (((_a = this.industryCodes) === null || _a === void 0 ? void 0 : _a.length) > 0) {
2320
+ this.options = this.industryCodes.map((item) => {
2321
+ return Object.assign(Object.assign({}, item), { value: item.objId, label: item.annexa, isLeaf: false, labelLower: item.annexa.toLowerCase(), children: item.subList.map((subItem) => {
2322
+ return Object.assign(Object.assign({}, subItem), { value: subItem.objId, label: subItem.annexa, labelLower: subItem.annexa.toLowerCase(), isLeaf: true });
2323
+ }) });
2324
+ });
2325
+ this.filteredOptions = this.options;
2326
+ }
2327
+ else {
2328
+ this.options = [];
2329
+ this.filteredOptions = [];
2330
+ }
2331
+ }
2332
+ // ---------- 移动端操作 ----------
2333
+ openDrawer() {
2334
+ if (this.disabled)
2335
+ return;
2336
+ this.searchTerm = '';
2337
+ this.searchChildrenTerm = '';
2338
+ this.drawerOpen = true;
2339
+ this.view = 'root';
2340
+ this.activeParent = null;
2341
+ this.filteredOptions = this.options;
2342
+ this.filteredChildren = [];
2343
+ }
2344
+ closeDrawer() {
2345
+ this.drawerOpen = false;
2346
+ }
2347
+ goBackMobile() {
2348
+ this.view = 'root';
2349
+ this.activeParent = null;
2350
+ this.searchChildrenTerm = '';
2351
+ }
2352
+ selectLeafMobile(option, parent) {
2353
+ var _a, _b, _c;
2354
+ const parentVal = (_c = (_a = parent === null || parent === void 0 ? void 0 : parent.value) !== null && _a !== void 0 ? _a : (_b = this.activeParent) === null || _b === void 0 ? void 0 : _b.value) !== null && _c !== void 0 ? _c : null;
2355
+ const value = [String(parentVal), String(option.value)];
2356
+ this.handleValueChange(value);
2357
+ this.drawerOpen = false;
2358
+ this.view = 'root';
2359
+ this.activeParent = null;
2360
+ }
2361
+ openChildrenMobile(opt) {
2362
+ var _a;
2363
+ if (!(opt === null || opt === void 0 ? void 0 : opt.value))
2364
+ return;
2365
+ this.view = 'children';
2366
+ this.activeParent = opt;
2367
+ this.filteredChildren = ((_a = this.activeParent) === null || _a === void 0 ? void 0 : _a.children) || [];
2368
+ this.value = [opt.value];
2369
+ }
2370
+ doMobileSearch(value) {
2371
+ const term = value === null || value === void 0 ? void 0 : value.trim().toLowerCase();
2372
+ clearTimeout(this.searchTimer);
2373
+ this.searchTimer = setTimeout(() => {
2374
+ var _a, _b;
2375
+ if (!term) {
2376
+ // 恢复原数据
2377
+ this.filteredOptions = this.options;
2378
+ this.filteredChildren = ((_a = this.activeParent) === null || _a === void 0 ? void 0 : _a.children) || [];
2379
+ return;
2380
+ }
2381
+ if (this.view === 'root') {
2382
+ this.filteredOptions = this.options.filter((opt) => opt.label.toLowerCase().includes(term));
2383
+ }
2384
+ else {
2385
+ this.filteredChildren = (_b = this.activeParent) === null || _b === void 0 ? void 0 : _b.children.filter((child) => child.label.toLowerCase().includes(term));
2386
+ }
2387
+ }, 150);
2388
+ }
2389
+ }
2390
+ IndustryCascaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: IndustryCascaderComponent, deps: [{ token: i1$1.TranslateService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2391
+ IndustryCascaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: IndustryCascaderComponent, selector: "app-industry-cascader", inputs: { disabled: "disabled", errorMessages: "errorMessages", industryCodes: "industryCodes", label: "label", name: "name", theme: "theme" }, outputs: { valueChange: "valueChange" }, host: { listeners: { "window:resize": "onResize()" }, properties: { "class.theme-light": "this.hostThemeLight", "class.theme-dark": "this.hostThemeDark" } }, providers: [
2392
+ {
2393
+ provide: NG_VALUE_ACCESSOR,
2394
+ useExisting: forwardRef(() => IndustryCascaderComponent),
2395
+ multi: true,
2396
+ },
2397
+ {
2398
+ provide: NG_VALIDATORS,
2399
+ useExisting: forwardRef(() => IndustryCascaderComponent),
2400
+ multi: true,
2401
+ },
2402
+ ], viewQueries: [{ propertyName: "cascaderContainer", first: true, predicate: ["cascaderContainer"], descendants: true }, { propertyName: "valueText", first: true, predicate: ["valueText"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<app-rd-form-item\n [type]=\"'select'\"\n [label]=\"label\"\n [disabled]=\"disabled\"\n [focus]=\"!!searchInput || isFocus || isOpen\"\n [value]=\"value && value?.length\"\n [errorMessage]=\"showError ? currentErrorMessage : ''\"\n [theme]=\"theme\"\n (click)=\"openDrawer()\"\n [ngClass]=\"{\n 'rd-cascader-overflow-container': isTextOverflow,\n 'rd-cascader-overflow-container-th': overflowLineCount >= 3,\n }\"\n>\n <div #cascaderContainer class=\"cascader-container\">\n <nz-cascader\n [nzOptions]=\"options\"\n [(ngModel)]=\"value\"\n [nzDisabled]=\"disabled\"\n [nzShowSearch]=\"{ filter: cascaderSearchFn }\"\n [nzAllowClear]=\"false\"\n nzExpandTrigger=\"click\"\n (ngModelChange)=\"handleValueChange($event)\"\n [nzLabelRender]=\"renderTpl\"\n [nzOptionRender]=\"optionTpl\"\n [nzExpandIcon]=\"customExpandIcon\"\n (nzVisibleChange)=\"onVisibleChange($event)\"\n nzColumnClassName=\"rd-cascader-colum\"\n class=\"rd-cascader\"\n [ngClass]=\"{\n 'rd-cascader-disabled-open': isMobile,\n 'rd-cascader-is-text-overflow': isTextOverflow,\n }\"\n >\n </nz-cascader>\n </div>\n</app-rd-form-item>\n\n<nz-drawer\n [nzVisible]=\"drawerOpen && isMobile\"\n [nzPlacement]=\"'bottom'\"\n [nzHeight]=\"'70vh'\"\n [nzTitle]=\"''\"\n [nzClosable]=\"false\"\n [nzWrapClassName]=\"drawerWrapClassName\"\n (nzOnClose)=\"closeDrawer()\"\n>\n <div *nzDrawerContent>\n <div class=\"cascader-drawer-header\">\n <div class=\"header-title\">\n {{ \"select_nature_of_business\" | translate }}\n <div class=\"close-btn\" *ngIf=\"view === 'root'\" (click)=\"closeDrawer()\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.46967 4.46967C4.76256 4.17678 5.23744 4.17678 5.53033 4.46967L12 10.9393L18.4697 4.46967C18.7626 4.17678 19.2374 4.17678 19.5303 4.46967C19.8232 4.76256 19.8232 5.23744 19.5303 5.53033L13.0607 12L19.5303 18.4697C19.8232 18.7626 19.8232 19.2374 19.5303 19.5303C19.2374 19.8232 18.7626 19.8232 18.4697 19.5303L12 13.0607L5.53033 19.5303C5.23744 19.8232 4.76256 19.8232 4.46967 19.5303C4.17678 19.2374 4.17678 18.7626 4.46967 18.4697L10.9393 12L4.46967 5.53033C4.17678 5.23744 4.17678 4.76256 4.46967 4.46967Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n </div>\n </div>\n\n <nz-input-group\n class=\"cascader-drawer-search\"\n [nzPrefix]=\"prefixIconSearch\"\n nzClearable\n *ngIf=\"view === 'root'\"\n >\n <input\n nz-input\n [placeholder]=\"'search' | translate\"\n [(ngModel)]=\"searchTerm\"\n (ngModelChange)=\"doMobileSearch($event)\"\n />\n </nz-input-group>\n\n <nz-input-group\n *ngIf=\"view === 'children'\"\n class=\"cascader-drawer-search\"\n [nzPrefix]=\"prefixIconSearch\"\n nzClearable\n >\n <input\n nz-input\n [placeholder]=\"'search' | translate\"\n [(ngModel)]=\"searchChildrenTerm\"\n (ngModelChange)=\"doMobileSearch($event)\"\n />\n </nz-input-group>\n\n <div class=\"cascader-drawer-sub-header\" *ngIf=\"view === 'children'\">\n <div class=\"back-btn\" (click)=\"goBackMobile()\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11.3422 2.18437C11.5626 2.4194 11.5507 2.78856 11.3156 3.0089L6.43623 7.58334L11.3156 12.1578C11.5507 12.3781 11.5626 12.7473 11.3422 12.9823C11.1219 13.2173 10.7527 13.2292 10.5177 13.0089L5.18437 8.0089C5.06674 7.89862 5 7.74457 5 7.58334C5 7.4221 5.06674 7.26805 5.18437 7.15777L10.5177 2.15777C10.7527 1.93743 11.1219 1.94934 11.3422 2.18437Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n </div>\n <div class=\"children-title\">{{ activeParent?.label }}</div>\n </div>\n </div>\n\n <div *ngIf=\"view === 'root'\" class=\"cascader-drawer-list\">\n <ng-container *ngIf=\"filteredOptions?.length\">\n <div\n *ngFor=\"let opt of filteredOptions\"\n (click)=\"openChildrenMobile(opt)\"\n class=\"cascader-drawer-option cascader-drawer-root-option\"\n [ngClass]=\"{\n 'cascader-drawer-option-active': opt.value === value?.[0],\n }\"\n >\n {{ opt.label }}\n <ng-container *ngTemplateOutlet=\"customExpandIcon\"></ng-container>\n </div>\n </ng-container>\n </div>\n\n <div *ngIf=\"view === 'children'\" class=\"cascader-drawer-list\">\n <ng-container *ngIf=\"filteredChildren?.length\">\n <div\n *ngFor=\"let child of filteredChildren\"\n (click)=\"selectLeafMobile(child)\"\n class=\"cascader-drawer-option cascader-drawer-children-option\"\n >\n <label\n class=\"cascader-option-radio\"\n nz-radio\n [ngModel]=\"child.value === value?.[1]\"\n ></label>\n {{ child.label }}\n </div>\n </ng-container>\n </div>\n </div>\n</nz-drawer>\n\n<ng-template\n #renderTpl\n let-labels=\"labels\"\n let-selectedOptions=\"selectedOptions\"\n>\n <ng-container *ngFor=\"let label of labels; let last = last\">\n <ng-container *ngIf=\"last\">\n <span #valueText class=\"cascader-value-text\" [title]=\"label\">\n {{ label }}\n </span></ng-container\n >\n </ng-container>\n</ng-template>\n\n<ng-template #optionTpl let-option>\n <div class=\"rd-cascader-menu-option\">\n <label\n *ngIf=\"option.isLeaf\"\n class=\"cascader-option-radio\"\n nz-radio\n [ngModel]=\"option.value === value?.[1]\"\n ></label\n >{{ option.label }}\n </div>\n</ng-template>\n\n<ng-template #customExpandIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.90777 2.60234C5.12811 2.36731 5.49727 2.3554 5.7323 2.57574L11.0656 7.57574C11.1833 7.68602 11.25 7.84007 11.25 8.0013C11.25 8.16254 11.1833 8.31659 11.0656 8.42687L5.7323 13.4269C5.49727 13.6472 5.12811 13.6353 4.90777 13.4003C4.68743 13.1652 4.69934 12.7961 4.93437 12.5757L9.81377 8.0013L4.93437 3.42687C4.69934 3.20652 4.68743 2.83737 4.90777 2.60234Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #prefixIconSearch>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n d=\"M14.4951 13.6948L11.3962 10.5959C12.3175 9.46902 12.7704 8.03122 12.6613 6.57983C12.5522 5.12844 11.8894 3.77451 10.81 2.79807C9.73066 1.82164 8.3173 1.29741 6.86227 1.33381C5.40723 1.37021 4.02185 1.96445 2.99266 2.99364C1.96348 4.02282 1.36923 5.4082 1.33283 6.86323C1.29643 8.31826 1.82066 9.73162 2.7971 10.811C3.77354 11.8903 5.12747 12.5531 6.57887 12.6622C8.03026 12.7713 9.46807 12.3184 10.5949 11.3972L13.6938 14.5032C13.8027 14.6073 13.9474 14.6656 14.098 14.6663C14.2105 14.6661 14.3204 14.6325 14.4138 14.5697C14.5071 14.5069 14.5796 14.4178 14.6222 14.3136C14.6648 14.2095 14.6754 14.0951 14.6528 13.9849C14.6302 13.8747 14.5753 13.7737 14.4951 13.6948ZM7.00667 11.5461C6.10905 11.5461 5.23158 11.2799 4.48523 10.7812C3.73889 10.2825 3.15718 9.57372 2.81367 8.74443C2.47017 7.91513 2.38029 7.0026 2.55541 6.12223C2.73053 5.24185 3.16277 4.43317 3.79749 3.79846C4.43221 3.16375 5.24088 2.7315 6.12126 2.55638C7.00164 2.38127 7.91417 2.47114 8.74347 2.81465C9.57277 3.15815 10.2816 3.73986 10.7803 4.4862C11.279 5.23255 11.5451 6.11001 11.5451 7.00763C11.5433 8.21073 11.0645 9.36402 10.2138 10.2147C9.36306 11.0655 8.20977 11.5442 7.00667 11.5461Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n", styles: [":host{display:block;width:100%}:host ::ng-deep .ant-select:not(.ant-select-customize-input) .ant-select-selector{transition:none!important}:host ::ng-deep .rd-cascader{width:100%;height:62px}:host ::ng-deep .rd-cascader .ant-select-selector{background-color:var(--rd-input-bg-default);max-width:100%!important;overflow:hidden!important}:host ::ng-deep .rd-cascader.rd-cascader-disabled-open{pointer-events:none}:host ::ng-deep .rd-cascader.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:14px 16px;height:52px;border:none;border-radius:initial}:host ::ng-deep .rd-cascader.ant-select-single:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{padding:10px 5px 2px;color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;height:100%}:host ::ng-deep .rd-cascader.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{box-shadow:none}:host ::ng-deep .rd-cascader .ant-select-selection-placeholder{display:none}:host ::ng-deep .rd-cascader .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500}:host ::ng-deep .rd-cascader.ant-select-single .ant-select-selector .ant-select-selection-item:after{display:none}:host ::ng-deep .rd-cascader.ant-select-single .ant-select-selector .ant-select-selection-item{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;display:block!important;width:calc(100% - 20px)!important}:host ::ng-deep .rd-cascader.ant-select .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500;font-size:14px;line-height:normal}:host ::ng-deep .rd-cascader .cascader-value-text{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:pre-line;vertical-align:middle}:host ::ng-deep .rd-cascader.ant-select:not(.ant-select-disabled):hover .ant-select-selector,:host ::ng-deep .rd-cascader.ant-select:not(.ant-select-disabled):focus .ant-select-selector{box-shadow:none;outline:none;border:none}:host ::ng-deep .rd-cascader-is-text-overflow .ant-select-selector{height:auto!important}:host ::ng-deep .rd-cascader-overflow-container .rd-form-item{min-height:85px!important}:host ::ng-deep .rd-cascader-overflow-container-th .rd-form-item{min-height:110px!important}:host(.theme-light) ::ng-deep .rd-cascader{height:auto;min-height:62px}:host(.theme-light) ::ng-deep .rd-cascader .ant-select-arrow{display:none}:host(.theme-light) ::ng-deep .rd-cascader.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{height:auto;min-height:52px;padding-right:40px}:host(.theme-light) ::ng-deep .rd-cascader.ant-select-single .ant-select-selector .ant-select-selection-item{width:100%!important;white-space:normal!important}::ng-deep .ant-cascader-dropdown{background-color:var(--rd-bg-website);border-radius:4px;border:1px solid var(--rd-input-fg-default)}::ng-deep .rd-cascader-colum{border-right:none;height:268px!important}::ng-deep .rd-cascader-colum .ant-cascader-menu-item{padding:4px 16px;color:var(--rd-copy-primary)}::ng-deep .rd-cascader-colum .ant-cascader-menu-item.ant-cascader-menu-item-active,::ng-deep .rd-cascader-colum .ant-cascader-menu-item.ant-cascader-menu-item:hover{background-color:transparent;font-weight:400}::ng-deep .rd-cascader-colum .ant-cascader-menu-item.ant-cascader-menu-item-active .rd-cascader-menu-option,::ng-deep .rd-cascader-colum .ant-cascader-menu-item.ant-cascader-menu-item:hover .rd-cascader-menu-option{background-color:#2a7bff4d}::ng-deep .rd-cascader-colum .ant-cascader-menu-item.ant-cascader-menu-item-active .rd-cascader-menu-option .ant-radio-inner,::ng-deep .rd-cascader-colum .ant-cascader-menu-item.ant-cascader-menu-item:hover .rd-cascader-menu-option .ant-radio-inner{border-color:var(--rd-copy-brand)}::ng-deep .rd-cascader-colum .ant-cascader-menu-item .ant-cascader-menu-item-expand-icon{width:16px;height:16px}::ng-deep .rd-cascader-colum .rd-cascader-menu-option{min-height:44px;padding:8px;border-radius:4px;width:100%;line-height:28px;max-width:400px;word-break:normal;white-space:break-spaces;display:flex;align-items:flex-start}::ng-deep .rd-cascader-colum .rd-cascader-menu-option .cascader-option-radio{padding-top:3px}::ng-deep .rd-cascader-colum+.rd-cascader-colum{border-left:1px solid var(--rd-input-fg-default)}::ng-deep .cascader-drawer{background-color:var(--rd-bg-website)}::ng-deep .cascader-drawer .cascader-drawer-header{padding:24px 8px 0;position:sticky;top:0;background-color:var(--rd-bg-website);z-index:1111}::ng-deep .cascader-drawer .cascader-drawer-header .header-title{display:flex;align-items:center;font-size:18px;font-weight:500;line-height:24px;justify-content:space-between}::ng-deep .cascader-drawer .cascader-drawer-sub-header{display:flex;align-items:center;margin-top:16px;gap:16px;font-size:14px;font-weight:500}::ng-deep .cascader-drawer .close-btn{width:24px;height:24px;cursor:pointer}::ng-deep .cascader-drawer .close-btn svg{width:24px}::ng-deep .cascader-drawer .back-btn{width:16px;height:16px;cursor:pointer}::ng-deep .cascader-drawer .ant-drawer-body{padding:0 16px 24px}::ng-deep .cascader-drawer .ant-drawer-content{background-color:transparent;color:var(--rd-copy-primary)}::ng-deep .cascader-drawer .cascader-drawer-search{border-radius:4px;border:1px solid var(--rd-input-fg-default);background:var(--rd-input-bg-default);height:44px;padding:0 16px;margin-top:16px}::ng-deep .cascader-drawer .cascader-drawer-search::placeholder{color:var(--rd-copy-disable)}::ng-deep .cascader-drawer .cascader-drawer-search .ant-input{background:var(--rd-input-bg-default);color:var(--rd-copy-primary)}::ng-deep .cascader-drawer .cascader-drawer-search.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:var(--rd-input-fg-hover)}::ng-deep .cascader-drawer .cascader-drawer-list{margin-top:16px}::ng-deep .cascader-drawer .cascader-drawer-option{padding:8px;min-height:44px;display:flex;align-items:flex-start;gap:8px;cursor:pointer;font-size:14px;font-weight:400;line-height:28px;line-height:1.5}::ng-deep .cascader-drawer .cascader-drawer-option svg{margin-left:auto;flex-shrink:0}::ng-deep .cascader-drawer .cascader-drawer-option-active{border-radius:4px;background:rgba(42,123,255,.3)}::ng-deep .cascader-drawer .cascader-drawer-option.cascader-drawer-root-option{align-items:center}::ng-deep .cascader-drawer.theme-light{background-color:#fff}::ng-deep .cascader-drawer.theme-light .cascader-drawer-header{background-color:#fff}::ng-deep .cascader-drawer.theme-light .ant-drawer-content{color:var(--rd-copy-primary)}::ng-deep .cascader-drawer.theme-light .cascader-drawer-search{border-color:#dfe3ea;background:#fff}::ng-deep .cascader-drawer.theme-light .cascader-drawer-search .ant-input{background:#fff;color:var(--rd-copy-primary)}::ng-deep .cascader-drawer.theme-light .cascader-drawer-option-active{background:var(--rd-blue-100)}::ng-deep .cascader-drawer.theme-light .cascader-option-radio .ant-radio-inner{border-color:#cfd5df;background:#fff}::ng-deep .cascader-drawer.theme-light svg path{fill:var(--rd-copy-primary)}::ng-deep .cascader-option-radio{pointer-events:none}::ng-deep .cascader-option-radio .ant-radio-inner{border-radius:16px;border:1px solid var(--rd-control-border-empty);background:var(--rd-control-input-empty)}::ng-deep .cascader-option-radio .ant-radio-input:focus+.ant-radio-inner{box-shadow:none}::ng-deep .cascader-option-radio .ant-radio-wrapper:hover .ant-radio,::ng-deep .cascader-option-radio .ant-radio:hover .ant-radio-inner,::ng-deep .cascader-option-radio .ant-radio-input:focus+.ant-radio-inner{border-color:var(--rd-copy-brand)}::ng-deep .cascader-data-empty{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--rd-copy-primary)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$3.NzCascaderComponent, selector: "nz-cascader, [nz-cascader]", inputs: ["nzOptionRender", "nzShowInput", "nzShowArrow", "nzAllowClear", "nzAutoFocus", "nzChangeOnSelect", "nzDisabled", "nzColumnClassName", "nzExpandTrigger", "nzValueProperty", "nzLabelRender", "nzLabelProperty", "nzNotFoundContent", "nzSize", "nzBackdrop", "nzShowSearch", "nzPlaceHolder", "nzMenuClassName", "nzMenuStyle", "nzMouseEnterDelay", "nzMouseLeaveDelay", "nzStatus", "nzTriggerAction", "nzChangeOn", "nzLoadData", "nzSuffixIcon", "nzExpandIcon", "nzOptions"], outputs: ["nzVisibleChange", "nzSelectionChange", "nzSelect", "nzClear"], exportAs: ["nzCascader"] }, { kind: "component", type: i7.NzDrawerComponent, selector: "nz-drawer", inputs: ["nzContent", "nzCloseIcon", "nzClosable", "nzMaskClosable", "nzMask", "nzCloseOnNavigation", "nzNoAnimation", "nzKeyboard", "nzTitle", "nzExtra", "nzFooter", "nzPlacement", "nzSize", "nzMaskStyle", "nzBodyStyle", "nzWrapClassName", "nzWidth", "nzHeight", "nzZIndex", "nzOffsetX", "nzOffsetY", "nzVisible"], outputs: ["nzOnViewInit", "nzOnClose", "nzVisibleChange"], exportAs: ["nzDrawer"] }, { kind: "directive", type: i7.NzDrawerContentDirective, selector: "[nzDrawerContent]", exportAs: ["nzDrawerContent"] }, { kind: "directive", type: i3$1.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "component", type: i3$1.NzInputGroupComponent, selector: "nz-input-group", inputs: ["nzAddOnBeforeIcon", "nzAddOnAfterIcon", "nzPrefixIcon", "nzSuffixIcon", "nzAddOnBefore", "nzAddOnAfter", "nzPrefix", "nzStatus", "nzSuffix", "nzSize", "nzSearch", "nzCompact"], exportAs: ["nzInputGroup"] }, { kind: "directive", type: i3$1.NzInputGroupWhitSuffixOrPrefixDirective, selector: "nz-input-group[nzSuffix], nz-input-group[nzPrefix]" }, { kind: "directive", type: i3$2.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "component", type: FormItemComponent, selector: "app-rd-form-item", inputs: ["errorMessage", "disabled", "label", "type", "focus", "value", "size", "theme"] }, { kind: "component", type: i9$1.NzRadioComponent, selector: "[nz-radio],[nz-radio-button]", inputs: ["nzValue", "nzDisabled", "nzAutoFocus"], exportAs: ["nzRadio"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
2403
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: IndustryCascaderComponent, decorators: [{
2404
+ type: Component,
2405
+ args: [{ selector: 'app-industry-cascader', providers: [
2406
+ {
2407
+ provide: NG_VALUE_ACCESSOR,
2408
+ useExisting: forwardRef(() => IndustryCascaderComponent),
2409
+ multi: true,
2410
+ },
2411
+ {
2412
+ provide: NG_VALIDATORS,
2413
+ useExisting: forwardRef(() => IndustryCascaderComponent),
2414
+ multi: true,
2415
+ },
2416
+ ], template: "<app-rd-form-item\n [type]=\"'select'\"\n [label]=\"label\"\n [disabled]=\"disabled\"\n [focus]=\"!!searchInput || isFocus || isOpen\"\n [value]=\"value && value?.length\"\n [errorMessage]=\"showError ? currentErrorMessage : ''\"\n [theme]=\"theme\"\n (click)=\"openDrawer()\"\n [ngClass]=\"{\n 'rd-cascader-overflow-container': isTextOverflow,\n 'rd-cascader-overflow-container-th': overflowLineCount >= 3,\n }\"\n>\n <div #cascaderContainer class=\"cascader-container\">\n <nz-cascader\n [nzOptions]=\"options\"\n [(ngModel)]=\"value\"\n [nzDisabled]=\"disabled\"\n [nzShowSearch]=\"{ filter: cascaderSearchFn }\"\n [nzAllowClear]=\"false\"\n nzExpandTrigger=\"click\"\n (ngModelChange)=\"handleValueChange($event)\"\n [nzLabelRender]=\"renderTpl\"\n [nzOptionRender]=\"optionTpl\"\n [nzExpandIcon]=\"customExpandIcon\"\n (nzVisibleChange)=\"onVisibleChange($event)\"\n nzColumnClassName=\"rd-cascader-colum\"\n class=\"rd-cascader\"\n [ngClass]=\"{\n 'rd-cascader-disabled-open': isMobile,\n 'rd-cascader-is-text-overflow': isTextOverflow,\n }\"\n >\n </nz-cascader>\n </div>\n</app-rd-form-item>\n\n<nz-drawer\n [nzVisible]=\"drawerOpen && isMobile\"\n [nzPlacement]=\"'bottom'\"\n [nzHeight]=\"'70vh'\"\n [nzTitle]=\"''\"\n [nzClosable]=\"false\"\n [nzWrapClassName]=\"drawerWrapClassName\"\n (nzOnClose)=\"closeDrawer()\"\n>\n <div *nzDrawerContent>\n <div class=\"cascader-drawer-header\">\n <div class=\"header-title\">\n {{ \"select_nature_of_business\" | translate }}\n <div class=\"close-btn\" *ngIf=\"view === 'root'\" (click)=\"closeDrawer()\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.46967 4.46967C4.76256 4.17678 5.23744 4.17678 5.53033 4.46967L12 10.9393L18.4697 4.46967C18.7626 4.17678 19.2374 4.17678 19.5303 4.46967C19.8232 4.76256 19.8232 5.23744 19.5303 5.53033L13.0607 12L19.5303 18.4697C19.8232 18.7626 19.8232 19.2374 19.5303 19.5303C19.2374 19.8232 18.7626 19.8232 18.4697 19.5303L12 13.0607L5.53033 19.5303C5.23744 19.8232 4.76256 19.8232 4.46967 19.5303C4.17678 19.2374 4.17678 18.7626 4.46967 18.4697L10.9393 12L4.46967 5.53033C4.17678 5.23744 4.17678 4.76256 4.46967 4.46967Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n </div>\n </div>\n\n <nz-input-group\n class=\"cascader-drawer-search\"\n [nzPrefix]=\"prefixIconSearch\"\n nzClearable\n *ngIf=\"view === 'root'\"\n >\n <input\n nz-input\n [placeholder]=\"'search' | translate\"\n [(ngModel)]=\"searchTerm\"\n (ngModelChange)=\"doMobileSearch($event)\"\n />\n </nz-input-group>\n\n <nz-input-group\n *ngIf=\"view === 'children'\"\n class=\"cascader-drawer-search\"\n [nzPrefix]=\"prefixIconSearch\"\n nzClearable\n >\n <input\n nz-input\n [placeholder]=\"'search' | translate\"\n [(ngModel)]=\"searchChildrenTerm\"\n (ngModelChange)=\"doMobileSearch($event)\"\n />\n </nz-input-group>\n\n <div class=\"cascader-drawer-sub-header\" *ngIf=\"view === 'children'\">\n <div class=\"back-btn\" (click)=\"goBackMobile()\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11.3422 2.18437C11.5626 2.4194 11.5507 2.78856 11.3156 3.0089L6.43623 7.58334L11.3156 12.1578C11.5507 12.3781 11.5626 12.7473 11.3422 12.9823C11.1219 13.2173 10.7527 13.2292 10.5177 13.0089L5.18437 8.0089C5.06674 7.89862 5 7.74457 5 7.58334C5 7.4221 5.06674 7.26805 5.18437 7.15777L10.5177 2.15777C10.7527 1.93743 11.1219 1.94934 11.3422 2.18437Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n </div>\n <div class=\"children-title\">{{ activeParent?.label }}</div>\n </div>\n </div>\n\n <div *ngIf=\"view === 'root'\" class=\"cascader-drawer-list\">\n <ng-container *ngIf=\"filteredOptions?.length\">\n <div\n *ngFor=\"let opt of filteredOptions\"\n (click)=\"openChildrenMobile(opt)\"\n class=\"cascader-drawer-option cascader-drawer-root-option\"\n [ngClass]=\"{\n 'cascader-drawer-option-active': opt.value === value?.[0],\n }\"\n >\n {{ opt.label }}\n <ng-container *ngTemplateOutlet=\"customExpandIcon\"></ng-container>\n </div>\n </ng-container>\n </div>\n\n <div *ngIf=\"view === 'children'\" class=\"cascader-drawer-list\">\n <ng-container *ngIf=\"filteredChildren?.length\">\n <div\n *ngFor=\"let child of filteredChildren\"\n (click)=\"selectLeafMobile(child)\"\n class=\"cascader-drawer-option cascader-drawer-children-option\"\n >\n <label\n class=\"cascader-option-radio\"\n nz-radio\n [ngModel]=\"child.value === value?.[1]\"\n ></label>\n {{ child.label }}\n </div>\n </ng-container>\n </div>\n </div>\n</nz-drawer>\n\n<ng-template\n #renderTpl\n let-labels=\"labels\"\n let-selectedOptions=\"selectedOptions\"\n>\n <ng-container *ngFor=\"let label of labels; let last = last\">\n <ng-container *ngIf=\"last\">\n <span #valueText class=\"cascader-value-text\" [title]=\"label\">\n {{ label }}\n </span></ng-container\n >\n </ng-container>\n</ng-template>\n\n<ng-template #optionTpl let-option>\n <div class=\"rd-cascader-menu-option\">\n <label\n *ngIf=\"option.isLeaf\"\n class=\"cascader-option-radio\"\n nz-radio\n [ngModel]=\"option.value === value?.[1]\"\n ></label\n >{{ option.label }}\n </div>\n</ng-template>\n\n<ng-template #customExpandIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.90777 2.60234C5.12811 2.36731 5.49727 2.3554 5.7323 2.57574L11.0656 7.57574C11.1833 7.68602 11.25 7.84007 11.25 8.0013C11.25 8.16254 11.1833 8.31659 11.0656 8.42687L5.7323 13.4269C5.49727 13.6472 5.12811 13.6353 4.90777 13.4003C4.68743 13.1652 4.69934 12.7961 4.93437 12.5757L9.81377 8.0013L4.93437 3.42687C4.69934 3.20652 4.68743 2.83737 4.90777 2.60234Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #prefixIconSearch>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n d=\"M14.4951 13.6948L11.3962 10.5959C12.3175 9.46902 12.7704 8.03122 12.6613 6.57983C12.5522 5.12844 11.8894 3.77451 10.81 2.79807C9.73066 1.82164 8.3173 1.29741 6.86227 1.33381C5.40723 1.37021 4.02185 1.96445 2.99266 2.99364C1.96348 4.02282 1.36923 5.4082 1.33283 6.86323C1.29643 8.31826 1.82066 9.73162 2.7971 10.811C3.77354 11.8903 5.12747 12.5531 6.57887 12.6622C8.03026 12.7713 9.46807 12.3184 10.5949 11.3972L13.6938 14.5032C13.8027 14.6073 13.9474 14.6656 14.098 14.6663C14.2105 14.6661 14.3204 14.6325 14.4138 14.5697C14.5071 14.5069 14.5796 14.4178 14.6222 14.3136C14.6648 14.2095 14.6754 14.0951 14.6528 13.9849C14.6302 13.8747 14.5753 13.7737 14.4951 13.6948ZM7.00667 11.5461C6.10905 11.5461 5.23158 11.2799 4.48523 10.7812C3.73889 10.2825 3.15718 9.57372 2.81367 8.74443C2.47017 7.91513 2.38029 7.0026 2.55541 6.12223C2.73053 5.24185 3.16277 4.43317 3.79749 3.79846C4.43221 3.16375 5.24088 2.7315 6.12126 2.55638C7.00164 2.38127 7.91417 2.47114 8.74347 2.81465C9.57277 3.15815 10.2816 3.73986 10.7803 4.4862C11.279 5.23255 11.5451 6.11001 11.5451 7.00763C11.5433 8.21073 11.0645 9.36402 10.2138 10.2147C9.36306 11.0655 8.20977 11.5442 7.00667 11.5461Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n", styles: [":host{display:block;width:100%}:host ::ng-deep .ant-select:not(.ant-select-customize-input) .ant-select-selector{transition:none!important}:host ::ng-deep .rd-cascader{width:100%;height:62px}:host ::ng-deep .rd-cascader .ant-select-selector{background-color:var(--rd-input-bg-default);max-width:100%!important;overflow:hidden!important}:host ::ng-deep .rd-cascader.rd-cascader-disabled-open{pointer-events:none}:host ::ng-deep .rd-cascader.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{padding:14px 16px;height:52px;border:none;border-radius:initial}:host ::ng-deep .rd-cascader.ant-select-single:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{padding:10px 5px 2px;color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;height:100%}:host ::ng-deep .rd-cascader.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{box-shadow:none}:host ::ng-deep .rd-cascader .ant-select-selection-placeholder{display:none}:host ::ng-deep .rd-cascader .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500}:host ::ng-deep .rd-cascader.ant-select-single .ant-select-selector .ant-select-selection-item:after{display:none}:host ::ng-deep .rd-cascader.ant-select-single .ant-select-selector .ant-select-selection-item{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;display:block!important;width:calc(100% - 20px)!important}:host ::ng-deep .rd-cascader.ant-select .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500;font-size:14px;line-height:normal}:host ::ng-deep .rd-cascader .cascader-value-text{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:pre-line;vertical-align:middle}:host ::ng-deep .rd-cascader.ant-select:not(.ant-select-disabled):hover .ant-select-selector,:host ::ng-deep .rd-cascader.ant-select:not(.ant-select-disabled):focus .ant-select-selector{box-shadow:none;outline:none;border:none}:host ::ng-deep .rd-cascader-is-text-overflow .ant-select-selector{height:auto!important}:host ::ng-deep .rd-cascader-overflow-container .rd-form-item{min-height:85px!important}:host ::ng-deep .rd-cascader-overflow-container-th .rd-form-item{min-height:110px!important}:host(.theme-light) ::ng-deep .rd-cascader{height:auto;min-height:62px}:host(.theme-light) ::ng-deep .rd-cascader .ant-select-arrow{display:none}:host(.theme-light) ::ng-deep .rd-cascader.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{height:auto;min-height:52px;padding-right:40px}:host(.theme-light) ::ng-deep .rd-cascader.ant-select-single .ant-select-selector .ant-select-selection-item{width:100%!important;white-space:normal!important}::ng-deep .ant-cascader-dropdown{background-color:var(--rd-bg-website);border-radius:4px;border:1px solid var(--rd-input-fg-default)}::ng-deep .rd-cascader-colum{border-right:none;height:268px!important}::ng-deep .rd-cascader-colum .ant-cascader-menu-item{padding:4px 16px;color:var(--rd-copy-primary)}::ng-deep .rd-cascader-colum .ant-cascader-menu-item.ant-cascader-menu-item-active,::ng-deep .rd-cascader-colum .ant-cascader-menu-item.ant-cascader-menu-item:hover{background-color:transparent;font-weight:400}::ng-deep .rd-cascader-colum .ant-cascader-menu-item.ant-cascader-menu-item-active .rd-cascader-menu-option,::ng-deep .rd-cascader-colum .ant-cascader-menu-item.ant-cascader-menu-item:hover .rd-cascader-menu-option{background-color:#2a7bff4d}::ng-deep .rd-cascader-colum .ant-cascader-menu-item.ant-cascader-menu-item-active .rd-cascader-menu-option .ant-radio-inner,::ng-deep .rd-cascader-colum .ant-cascader-menu-item.ant-cascader-menu-item:hover .rd-cascader-menu-option .ant-radio-inner{border-color:var(--rd-copy-brand)}::ng-deep .rd-cascader-colum .ant-cascader-menu-item .ant-cascader-menu-item-expand-icon{width:16px;height:16px}::ng-deep .rd-cascader-colum .rd-cascader-menu-option{min-height:44px;padding:8px;border-radius:4px;width:100%;line-height:28px;max-width:400px;word-break:normal;white-space:break-spaces;display:flex;align-items:flex-start}::ng-deep .rd-cascader-colum .rd-cascader-menu-option .cascader-option-radio{padding-top:3px}::ng-deep .rd-cascader-colum+.rd-cascader-colum{border-left:1px solid var(--rd-input-fg-default)}::ng-deep .cascader-drawer{background-color:var(--rd-bg-website)}::ng-deep .cascader-drawer .cascader-drawer-header{padding:24px 8px 0;position:sticky;top:0;background-color:var(--rd-bg-website);z-index:1111}::ng-deep .cascader-drawer .cascader-drawer-header .header-title{display:flex;align-items:center;font-size:18px;font-weight:500;line-height:24px;justify-content:space-between}::ng-deep .cascader-drawer .cascader-drawer-sub-header{display:flex;align-items:center;margin-top:16px;gap:16px;font-size:14px;font-weight:500}::ng-deep .cascader-drawer .close-btn{width:24px;height:24px;cursor:pointer}::ng-deep .cascader-drawer .close-btn svg{width:24px}::ng-deep .cascader-drawer .back-btn{width:16px;height:16px;cursor:pointer}::ng-deep .cascader-drawer .ant-drawer-body{padding:0 16px 24px}::ng-deep .cascader-drawer .ant-drawer-content{background-color:transparent;color:var(--rd-copy-primary)}::ng-deep .cascader-drawer .cascader-drawer-search{border-radius:4px;border:1px solid var(--rd-input-fg-default);background:var(--rd-input-bg-default);height:44px;padding:0 16px;margin-top:16px}::ng-deep .cascader-drawer .cascader-drawer-search::placeholder{color:var(--rd-copy-disable)}::ng-deep .cascader-drawer .cascader-drawer-search .ant-input{background:var(--rd-input-bg-default);color:var(--rd-copy-primary)}::ng-deep .cascader-drawer .cascader-drawer-search.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:var(--rd-input-fg-hover)}::ng-deep .cascader-drawer .cascader-drawer-list{margin-top:16px}::ng-deep .cascader-drawer .cascader-drawer-option{padding:8px;min-height:44px;display:flex;align-items:flex-start;gap:8px;cursor:pointer;font-size:14px;font-weight:400;line-height:28px;line-height:1.5}::ng-deep .cascader-drawer .cascader-drawer-option svg{margin-left:auto;flex-shrink:0}::ng-deep .cascader-drawer .cascader-drawer-option-active{border-radius:4px;background:rgba(42,123,255,.3)}::ng-deep .cascader-drawer .cascader-drawer-option.cascader-drawer-root-option{align-items:center}::ng-deep .cascader-drawer.theme-light{background-color:#fff}::ng-deep .cascader-drawer.theme-light .cascader-drawer-header{background-color:#fff}::ng-deep .cascader-drawer.theme-light .ant-drawer-content{color:var(--rd-copy-primary)}::ng-deep .cascader-drawer.theme-light .cascader-drawer-search{border-color:#dfe3ea;background:#fff}::ng-deep .cascader-drawer.theme-light .cascader-drawer-search .ant-input{background:#fff;color:var(--rd-copy-primary)}::ng-deep .cascader-drawer.theme-light .cascader-drawer-option-active{background:var(--rd-blue-100)}::ng-deep .cascader-drawer.theme-light .cascader-option-radio .ant-radio-inner{border-color:#cfd5df;background:#fff}::ng-deep .cascader-drawer.theme-light svg path{fill:var(--rd-copy-primary)}::ng-deep .cascader-option-radio{pointer-events:none}::ng-deep .cascader-option-radio .ant-radio-inner{border-radius:16px;border:1px solid var(--rd-control-border-empty);background:var(--rd-control-input-empty)}::ng-deep .cascader-option-radio .ant-radio-input:focus+.ant-radio-inner{box-shadow:none}::ng-deep .cascader-option-radio .ant-radio-wrapper:hover .ant-radio,::ng-deep .cascader-option-radio .ant-radio:hover .ant-radio-inner,::ng-deep .cascader-option-radio .ant-radio-input:focus+.ant-radio-inner{border-color:var(--rd-copy-brand)}::ng-deep .cascader-data-empty{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--rd-copy-primary)}\n"] }]
2417
+ }], ctorParameters: function () { return [{ type: i1$1.TranslateService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { cascaderContainer: [{
2418
+ type: ViewChild,
2419
+ args: ['cascaderContainer']
2420
+ }], valueText: [{
2421
+ type: ViewChild,
2422
+ args: ['valueText']
2423
+ }], disabled: [{
2424
+ type: Input
2425
+ }], errorMessages: [{
2426
+ type: Input
2427
+ }], industryCodes: [{
2428
+ type: Input
2429
+ }], valueChange: [{
2430
+ type: Output
2431
+ }], label: [{
2432
+ type: Input
2433
+ }], name: [{
2434
+ type: Input
2435
+ }], theme: [{
2436
+ type: Input
2437
+ }], hostThemeLight: [{
2438
+ type: HostBinding,
2439
+ args: ['class.theme-light']
2440
+ }], hostThemeDark: [{
2441
+ type: HostBinding,
2442
+ args: ['class.theme-dark']
2443
+ }], onResize: [{
2444
+ type: HostListener,
2445
+ args: ['window:resize']
2446
+ }] } });
2447
+
2448
+ class IndustryCascaderModule {
2449
+ }
2450
+ IndustryCascaderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: IndustryCascaderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2451
+ IndustryCascaderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: IndustryCascaderModule, declarations: [IndustryCascaderComponent], imports: [CommonModule,
2452
+ FormsModule,
2453
+ NzCascaderModule,
2454
+ NzDrawerModule,
2455
+ NzInputModule,
2456
+ NzListModule,
2457
+ NzSpinModule,
2458
+ NzButtonModule,
2459
+ FormItemModule,
2460
+ NzRadioModule, i1$1.TranslateModule], exports: [IndustryCascaderComponent] });
2461
+ IndustryCascaderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: IndustryCascaderModule, imports: [CommonModule,
2462
+ FormsModule,
2463
+ NzCascaderModule,
2464
+ NzDrawerModule,
2465
+ NzInputModule,
2466
+ NzListModule,
2467
+ NzSpinModule,
2468
+ NzButtonModule,
2469
+ FormItemModule,
2470
+ NzRadioModule,
2471
+ TranslateModule.forChild()] });
2472
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: IndustryCascaderModule, decorators: [{
2473
+ type: NgModule,
2474
+ args: [{
2475
+ declarations: [IndustryCascaderComponent],
2476
+ imports: [
2477
+ CommonModule,
2478
+ FormsModule,
2479
+ NzCascaderModule,
2480
+ NzDrawerModule,
2481
+ NzInputModule,
2482
+ NzListModule,
2483
+ NzSpinModule,
2484
+ NzButtonModule,
2485
+ FormItemModule,
2486
+ NzRadioModule,
2487
+ TranslateModule.forChild(),
2488
+ ],
2489
+ exports: [IndustryCascaderComponent],
2490
+ }]
2491
+ }] });
2492
+
1431
2493
  class StatusFieldComponent {
1432
2494
  constructor() {
1433
2495
  this.size = 'default';
@@ -1543,7 +2605,7 @@ class RdFilterSelectComponent {
1543
2605
  }
1544
2606
  }
1545
2607
  RdFilterSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdFilterSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1546
- RdFilterSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RdFilterSelectComponent, selector: "app-rd-filter-select", inputs: { item: "item", statusDisplayConfigs: "statusDisplayConfigs", statusGroupConfigs: "statusGroupConfigs" }, outputs: { handleChangeValue: "handleChangeValue" }, usesOnChanges: true, ngImport: i0, template: "<nz-select\n class=\"rd-custom-filter-select\"\n [ngStyle]=\"{ 'min-width': item.minWidth ? item.minWidth : '132px' }\"\n [nzPlaceHolder]=\"item.title\"\n [nzShowArrow]=\"true\"\n [nzMode]=\"mode\"\n [nzAllowClear]=\"false\"\n [nzDropdownClassName]=\"\n mode === 'multiple'\n ? 'rd-custom-multiple-filter-select-dropdown'\n : 'rd-custom-filter-select-dropdown'\n \"\n [(ngModel)]=\"selectValue\"\n [nzSuffixIcon]=\"customIcon\"\n [nzRemoveIcon]=\"removeIcon\"\n [nzOptionOverflowSize]=\"5\"\n [nzOptionHeightPx]=\"40\"\n [nzDropdownMatchSelectWidth]=\"false\"\n (ngModelChange)=\"modelChange($event)\"\n [nzCustomTemplate]=\"customTpl\"\n [nzMaxTagCount]=\"3\"\n>\n <nz-option\n *ngFor=\"let option of item.options\"\n [nzValue]=\"option.value\"\n [nzLabel]=\"option.label\"\n nzCustomContent\n >\n <app-rd-status-field\n *ngIf=\"item.isStatusField; else defaultTpl\"\n [status]=\"option.value\"\n [statusGroupConfigs]=\"statusGroupConfigs\"\n [statusDisplayConfigs]=\"statusDisplayConfigs\"\n ></app-rd-status-field>\n <ng-template #defaultTpl> {{ option.label }}</ng-template>\n </nz-option>\n</nz-select>\n\n<ng-template #customIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #removeIcon>\n <!-- <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.39645 2.39645C2.59171 2.20118 2.90829 2.20118 3.10355 2.39645L6 5.29289L8.89645 2.39645C9.09171 2.20118 9.40829 2.20118 9.60355 2.39645C9.79882 2.59171 9.79882 2.90829 9.60355 3.10355L6.70711 6L9.60355 8.89645C9.79882 9.09171 9.79882 9.40829 9.60355 9.60355C9.40829 9.79882 9.09171 9.79882 8.89645 9.60355L6 6.70711L3.10355 9.60355C2.90829 9.79882 2.59171 9.79882 2.39645 9.60355C2.20118 9.40829 2.20118 9.09171 2.39645 8.89645L5.29289 6L2.39645 3.10355C2.20118 2.90829 2.20118 2.59171 2.39645 2.39645Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg> -->\n</ng-template>\n\n<ng-template #customTpl let-selected>\n <!-- <app-status-field\n *ngIf=\"item.isStatusField\"\n [status]=\"selected.nzValue\"\n ></app-status-field> -->\n <ng-container>\n {{ selected.nzLabel }}\n </ng-container>\n</ng-template>\n", styles: ["::ng-deep .rd-custom-filter-select{min-width:113px;min-height:32px}::ng-deep .rd-custom-filter-select.ant-select .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-custom-filter-select.ant-select-multiple .ant-select-selection-item{border-radius:4px;background:var(--rd-grey-100);font-size:14px;font-weight:500;color:var(--rd-copy-primary);display:flex;align-items:center;gap:4px}::ng-deep .rd-custom-filter-select.ant-select-multiple .ant-select-selection-item .ant-select-selection-item-remove{line-height:1}::ng-deep .rd-custom-filter-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px}::ng-deep .rd-custom-filter-select.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px;border:1px solid var(--rd-input-fg-hover);background:var(--rd-input-bg-hover);box-shadow:0 0 0 2px #367af61a}::ng-deep .rd-custom-filter-select .ant-select-selection-placeholder{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-custom-filter-select .ant-select-selection-item-content{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-custom-filter-select .ant-select-arrow{transition:ease-in-out .2s all;cursor:pointer;pointer-events:initial}::ng-deep .rd-custom-filter-select:hover:has(.ant-select-clear) .ant-select-arrow{opacity:0}::ng-deep .rd-custom-filter-select.ant-select-focused .ant-select-arrow,::ng-deep .rd-custom-filter-select .ant-select-selector:focus-within .ant-select-arrow{transform:rotate(-180deg);transition:transform .2s ease}::ng-deep .rd-custom-filter-select-dropdown .ant-select-dropdown,::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-dropdown{border-radius:4px;background:var(--rd-bg-panel);width:-moz-fit-content;width:fit-content;min-width:113px}::ng-deep .rd-custom-filter-select-dropdown .ant-select-item-option,::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option{background-color:transparent;padding:0 6px}::ng-deep .rd-custom-filter-select-dropdown .ant-select-item-option-content,::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-content{border-radius:4px;padding:0 6px;display:flex;align-items:center;color:var(--rd-copy-primary);font-size:14px;min-height:40px}::ng-deep .rd-custom-filter-select-dropdown .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-active .ant-select-item-option-content{background:rgba(54,122,246,.1)}::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-content{border-radius:4px;font-weight:500;color:var(--rd-copy-primary);font-size:14px;padding:0 6px 0 32px;position:relative}::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-content:before{content:\"\";position:absolute;top:50%;left:6px;width:16px;height:16px;transform:translateY(-50%);border-radius:4px;border:1px solid var(--rd-grey-400)}::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-selected .ant-select-item-option-content:before{background-image:url(/assets/img/icon/checkbox.svg);background-size:contain;background-position:center;background-repeat:no-repeat;border:none}::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-state{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i4$1.NzOptionComponent, selector: "nz-option", inputs: ["nzLabel", "nzValue", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i4$1.NzSelectComponent, selector: "nz-select", inputs: ["nzId", "nzSize", "nzStatus", "nzOptionHeightPx", "nzOptionOverflowSize", "nzDropdownClassName", "nzDropdownMatchSelectWidth", "nzDropdownStyle", "nzNotFoundContent", "nzPlaceHolder", "nzPlacement", "nzMaxTagCount", "nzDropdownRender", "nzCustomTemplate", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "nzBorderless", "nzShowSearch", "nzLoading", "nzAutoFocus", "nzAutoClearSearchValue", "nzServerSearch", "nzDisabled", "nzOpen", "nzSelectOnTab", "nzBackdrop", "nzOptions", "nzShowArrow"], outputs: ["nzOnSearch", "nzScrollToBottom", "nzOpenChange", "nzBlur", "nzFocus"], exportAs: ["nzSelect"] }, { 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"] }, { kind: "component", type: StatusFieldComponent, selector: "app-rd-status-field", inputs: ["status", "text", "size", "statusDisplayConfigs", "statusGroupConfigs"] }] });
2608
+ RdFilterSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RdFilterSelectComponent, selector: "app-rd-filter-select", inputs: { item: "item", statusDisplayConfigs: "statusDisplayConfigs", statusGroupConfigs: "statusGroupConfigs" }, outputs: { handleChangeValue: "handleChangeValue" }, usesOnChanges: true, ngImport: i0, template: "<nz-select\n class=\"rd-custom-filter-select\"\n [ngStyle]=\"{ 'min-width': item.minWidth ? item.minWidth : '132px' }\"\n [nzPlaceHolder]=\"item.title\"\n [nzShowArrow]=\"true\"\n [nzMode]=\"mode\"\n [nzAllowClear]=\"false\"\n [nzDropdownClassName]=\"\n mode === 'multiple'\n ? 'rd-custom-multiple-filter-select-dropdown'\n : 'rd-custom-filter-select-dropdown'\n \"\n [(ngModel)]=\"selectValue\"\n [nzSuffixIcon]=\"customIcon\"\n [nzRemoveIcon]=\"removeIcon\"\n [nzOptionOverflowSize]=\"5\"\n [nzOptionHeightPx]=\"40\"\n [nzDropdownMatchSelectWidth]=\"false\"\n (ngModelChange)=\"modelChange($event)\"\n [nzCustomTemplate]=\"customTpl\"\n [nzMaxTagCount]=\"3\"\n>\n <nz-option\n *ngFor=\"let option of item.options\"\n [nzValue]=\"option.value\"\n [nzLabel]=\"option.label\"\n nzCustomContent\n >\n <app-rd-status-field\n *ngIf=\"item.isStatusField; else defaultTpl\"\n [status]=\"option.value\"\n [statusGroupConfigs]=\"statusGroupConfigs\"\n [statusDisplayConfigs]=\"statusDisplayConfigs\"\n ></app-rd-status-field>\n <ng-template #defaultTpl> {{ option.label }}</ng-template>\n </nz-option>\n</nz-select>\n\n<ng-template #customIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #removeIcon>\n <!-- <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.39645 2.39645C2.59171 2.20118 2.90829 2.20118 3.10355 2.39645L6 5.29289L8.89645 2.39645C9.09171 2.20118 9.40829 2.20118 9.60355 2.39645C9.79882 2.59171 9.79882 2.90829 9.60355 3.10355L6.70711 6L9.60355 8.89645C9.79882 9.09171 9.79882 9.40829 9.60355 9.60355C9.40829 9.79882 9.09171 9.79882 8.89645 9.60355L6 6.70711L3.10355 9.60355C2.90829 9.79882 2.59171 9.79882 2.39645 9.60355C2.20118 9.40829 2.20118 9.09171 2.39645 8.89645L5.29289 6L2.39645 3.10355C2.20118 2.90829 2.20118 2.59171 2.39645 2.39645Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg> -->\n</ng-template>\n\n<ng-template #customTpl let-selected>\n <!-- <app-status-field\n *ngIf=\"item.isStatusField\"\n [status]=\"selected.nzValue\"\n ></app-status-field> -->\n <ng-container>\n {{ selected.nzLabel }}\n </ng-container>\n</ng-template>\n", styles: ["::ng-deep .rd-custom-filter-select{min-width:113px;min-height:32px}::ng-deep .rd-custom-filter-select.ant-select .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-custom-filter-select.ant-select-multiple .ant-select-selection-item{border-radius:4px;background:var(--rd-grey-100);font-size:14px;font-weight:500;color:var(--rd-copy-primary);display:flex;align-items:center;gap:4px}::ng-deep .rd-custom-filter-select.ant-select-multiple .ant-select-selection-item .ant-select-selection-item-remove{line-height:1}::ng-deep .rd-custom-filter-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px}::ng-deep .rd-custom-filter-select.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px;border:1px solid var(--rd-input-fg-hover);background:var(--rd-input-bg-hover);box-shadow:0 0 0 2px #367af61a}::ng-deep .rd-custom-filter-select .ant-select-selection-placeholder{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-custom-filter-select .ant-select-selection-item-content{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-custom-filter-select .ant-select-arrow{transition:ease-in-out .2s all;cursor:pointer;pointer-events:initial}::ng-deep .rd-custom-filter-select:hover:has(.ant-select-clear) .ant-select-arrow{opacity:0}::ng-deep .rd-custom-filter-select.ant-select-focused .ant-select-arrow,::ng-deep .rd-custom-filter-select .ant-select-selector:focus-within .ant-select-arrow{transform:rotate(-180deg);transition:transform .2s ease}::ng-deep .rd-custom-filter-select-dropdown .ant-select-dropdown,::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-dropdown{border-radius:4px;background:var(--rd-bg-panel);width:-moz-fit-content;width:fit-content;min-width:113px}::ng-deep .rd-custom-filter-select-dropdown .ant-select-item-option,::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option{background-color:transparent;padding:0 6px}::ng-deep .rd-custom-filter-select-dropdown .ant-select-item-option-content,::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-content{border-radius:4px;padding:0 6px;display:flex;align-items:center;color:var(--rd-copy-primary);font-size:14px;min-height:40px}::ng-deep .rd-custom-filter-select-dropdown .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-active .ant-select-item-option-content{background:rgba(54,122,246,.1)}::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-content{border-radius:4px;font-weight:500;color:var(--rd-copy-primary);font-size:14px;padding:0 6px 0 32px;position:relative}::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-content:before{content:\"\";position:absolute;top:50%;left:6px;width:16px;height:16px;transform:translateY(-50%);border-radius:4px;border:1px solid var(--rd-grey-400)}::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-selected .ant-select-item-option-content:before{background-image:url(/assets/img/icon/checkbox.svg);background-size:contain;background-position:center;background-repeat:no-repeat;border:none}::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-state{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2$1.NzOptionComponent, selector: "nz-option", inputs: ["nzLabel", "nzValue", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i2$1.NzSelectComponent, selector: "nz-select", inputs: ["nzId", "nzSize", "nzStatus", "nzOptionHeightPx", "nzOptionOverflowSize", "nzDropdownClassName", "nzDropdownMatchSelectWidth", "nzDropdownStyle", "nzNotFoundContent", "nzPlaceHolder", "nzPlacement", "nzMaxTagCount", "nzDropdownRender", "nzCustomTemplate", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "nzBorderless", "nzShowSearch", "nzLoading", "nzAutoFocus", "nzAutoClearSearchValue", "nzServerSearch", "nzDisabled", "nzOpen", "nzSelectOnTab", "nzBackdrop", "nzOptions", "nzShowArrow"], outputs: ["nzOnSearch", "nzScrollToBottom", "nzOpenChange", "nzBlur", "nzFocus"], exportAs: ["nzSelect"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: StatusFieldComponent, selector: "app-rd-status-field", inputs: ["status", "text", "size", "statusDisplayConfigs", "statusGroupConfigs"] }] });
1547
2609
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdFilterSelectComponent, decorators: [{
1548
2610
  type: Component,
1549
2611
  args: [{ selector: 'app-rd-filter-select', template: "<nz-select\n class=\"rd-custom-filter-select\"\n [ngStyle]=\"{ 'min-width': item.minWidth ? item.minWidth : '132px' }\"\n [nzPlaceHolder]=\"item.title\"\n [nzShowArrow]=\"true\"\n [nzMode]=\"mode\"\n [nzAllowClear]=\"false\"\n [nzDropdownClassName]=\"\n mode === 'multiple'\n ? 'rd-custom-multiple-filter-select-dropdown'\n : 'rd-custom-filter-select-dropdown'\n \"\n [(ngModel)]=\"selectValue\"\n [nzSuffixIcon]=\"customIcon\"\n [nzRemoveIcon]=\"removeIcon\"\n [nzOptionOverflowSize]=\"5\"\n [nzOptionHeightPx]=\"40\"\n [nzDropdownMatchSelectWidth]=\"false\"\n (ngModelChange)=\"modelChange($event)\"\n [nzCustomTemplate]=\"customTpl\"\n [nzMaxTagCount]=\"3\"\n>\n <nz-option\n *ngFor=\"let option of item.options\"\n [nzValue]=\"option.value\"\n [nzLabel]=\"option.label\"\n nzCustomContent\n >\n <app-rd-status-field\n *ngIf=\"item.isStatusField; else defaultTpl\"\n [status]=\"option.value\"\n [statusGroupConfigs]=\"statusGroupConfigs\"\n [statusDisplayConfigs]=\"statusDisplayConfigs\"\n ></app-rd-status-field>\n <ng-template #defaultTpl> {{ option.label }}</ng-template>\n </nz-option>\n</nz-select>\n\n<ng-template #customIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n\n<ng-template #removeIcon>\n <!-- <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.39645 2.39645C2.59171 2.20118 2.90829 2.20118 3.10355 2.39645L6 5.29289L8.89645 2.39645C9.09171 2.20118 9.40829 2.20118 9.60355 2.39645C9.79882 2.59171 9.79882 2.90829 9.60355 3.10355L6.70711 6L9.60355 8.89645C9.79882 9.09171 9.79882 9.40829 9.60355 9.60355C9.40829 9.79882 9.09171 9.79882 8.89645 9.60355L6 6.70711L3.10355 9.60355C2.90829 9.79882 2.59171 9.79882 2.39645 9.60355C2.20118 9.40829 2.20118 9.09171 2.39645 8.89645L5.29289 6L2.39645 3.10355C2.20118 2.90829 2.20118 2.59171 2.39645 2.39645Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg> -->\n</ng-template>\n\n<ng-template #customTpl let-selected>\n <!-- <app-status-field\n *ngIf=\"item.isStatusField\"\n [status]=\"selected.nzValue\"\n ></app-status-field> -->\n <ng-container>\n {{ selected.nzLabel }}\n </ng-container>\n</ng-template>\n", styles: ["::ng-deep .rd-custom-filter-select{min-width:113px;min-height:32px}::ng-deep .rd-custom-filter-select.ant-select .ant-select-selection-item{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-custom-filter-select.ant-select-multiple .ant-select-selection-item{border-radius:4px;background:var(--rd-grey-100);font-size:14px;font-weight:500;color:var(--rd-copy-primary);display:flex;align-items:center;gap:4px}::ng-deep .rd-custom-filter-select.ant-select-multiple .ant-select-selection-item .ant-select-selection-item-remove{line-height:1}::ng-deep .rd-custom-filter-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px}::ng-deep .rd-custom-filter-select.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{border-radius:4px;border:1px solid var(--rd-input-fg-hover);background:var(--rd-input-bg-hover);box-shadow:0 0 0 2px #367af61a}::ng-deep .rd-custom-filter-select .ant-select-selection-placeholder{color:var(--rd-copy-primary);font-weight:500;font-size:14px}::ng-deep .rd-custom-filter-select .ant-select-selection-item-content{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-custom-filter-select .ant-select-arrow{transition:ease-in-out .2s all;cursor:pointer;pointer-events:initial}::ng-deep .rd-custom-filter-select:hover:has(.ant-select-clear) .ant-select-arrow{opacity:0}::ng-deep .rd-custom-filter-select.ant-select-focused .ant-select-arrow,::ng-deep .rd-custom-filter-select .ant-select-selector:focus-within .ant-select-arrow{transform:rotate(-180deg);transition:transform .2s ease}::ng-deep .rd-custom-filter-select-dropdown .ant-select-dropdown,::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-dropdown{border-radius:4px;background:var(--rd-bg-panel);width:-moz-fit-content;width:fit-content;min-width:113px}::ng-deep .rd-custom-filter-select-dropdown .ant-select-item-option,::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option{background-color:transparent;padding:0 6px}::ng-deep .rd-custom-filter-select-dropdown .ant-select-item-option-content,::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-content{border-radius:4px;padding:0 6px;display:flex;align-items:center;color:var(--rd-copy-primary);font-size:14px;min-height:40px}::ng-deep .rd-custom-filter-select-dropdown .ant-select-item-option-active .ant-select-item-option-content,::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-active .ant-select-item-option-content{background:rgba(54,122,246,.1)}::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-content{border-radius:4px;font-weight:500;color:var(--rd-copy-primary);font-size:14px;padding:0 6px 0 32px;position:relative}::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-content:before{content:\"\";position:absolute;top:50%;left:6px;width:16px;height:16px;transform:translateY(-50%);border-radius:4px;border:1px solid var(--rd-grey-400)}::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-selected .ant-select-item-option-content:before{background-image:url(/assets/img/icon/checkbox.svg);background-size:contain;background-position:center;background-repeat:no-repeat;border:none}::ng-deep .rd-custom-multiple-filter-select-dropdown .ant-select-item-option-state{display:none}\n"] }]
@@ -1655,7 +2717,7 @@ class RdFilterDateComponent {
1655
2717
  }
1656
2718
  }
1657
2719
  RdFilterDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdFilterDateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1658
- RdFilterDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RdFilterDateComponent, selector: "app-rd-filter-date", inputs: { item: "item" }, outputs: { handleChangeValue: "handleChangeValue" }, viewQueries: [{ propertyName: "datePicker", first: true, predicate: ["datePicker"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"rd-date-picker-container\"\n [ngClass]=\"{ 'rd-date-picker-focus': isPickerOpen }\"\n *ngIf=\"item\"\n>\n <nz-range-picker\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onDateChange($event)\"\n (nzOnOpenChange)=\"onOpenChange($event)\"\n [nzFormat]=\"'yyyy-MM-dd'\"\n [nzShowTime]=\"false\"\n [nzAllowClear]=\"false\"\n [nzPlaceHolder]=\"['From', 'To']\"\n class=\"rd-range-picker\"\n [nzDisabledDate]=\"disabledDate\"\n [nzSuffixIcon]=\"customIcon\"\n [nzDropdownClassName]=\"'rd-date-picker-popup'\"\n [nzSeparator]=\"'-'\"\n nzSuffixIcon=\"\"\n #datePicker\n [ngClass]=\"{ 'rd-hidden-range-picker': !item.value?.length }\"\n ></nz-range-picker>\n\n <div\n *ngIf=\"!item?.value?.length\"\n class=\"rd-placeholder-box\"\n [ngClass]=\"{ 'rd-placeholder-box-focus': isPickerOpen }\"\n (click)=\"openPicker()\"\n >\n {{ item.title }}\n <ng-container *ngTemplateOutlet=\"customIcon\"></ng-container>\n </div>\n\n <ng-template #customIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n </ng-template>\n</div>\n", styles: ["@charset \"UTF-8\";.rd-date-picker-container{position:relative}.rd-range-picker{width:auto;border:1px solid var(--rd-input-fg-default);border-radius:4px}.rd-hidden-range-picker{position:absolute;top:0;left:0;width:100%;height:100%}.rd-placeholder-box{height:32px;padding:0 12px;background:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:12px;width:-moz-fit-content;width:fit-content;white-space:nowrap;position:relative;top:0;transition:ease-in-out .2s all;font-weight:500}.rd-placeholder-box svg{transition:transform .2s ease;cursor:pointer}.rd-placeholder-box-focus{border-color:var(--rd-input-fg-hover)}.rd-placeholder-box-focus ::ng-deep svg{transform:rotate(-180deg)}.rd-placeholder-box:hover{border-color:var(--rd-input-fg-hover)}.rd-hidden-range-picker{opacity:0;width:132px}::ng-deep .rd-range-picker .ant-picker-suffix svg{transition:transform .2s ease;cursor:pointer;pointer-events:initial}::ng-deep .rd-range-picker.ant-picker:hover,::ng-deep .rd-range-picker.ant-picker-focused{box-shadow:none;border-color:var(--rd-input-fg-hover)}::ng-deep .rd-range-picker .ant-picker-active-bar{display:none}::ng-deep .rd-range-picker .ant-picker-input input{field-sizing:content;font-weight:500}::ng-deep .rd-range-picker .ant-picker-separator{width:-moz-fit-content;width:fit-content}::ng-deep .rd-date-picker-focus .ant-picker-suffix svg{pointer-events:none;transform:rotate(-180deg)}::ng-deep .rd-date-picker-popup.ant-picker-dropdown-range{padding:0}::ng-deep .rd-date-picker-popup .ant-picker-range-arrow{display:none}::ng-deep .rd-date-picker-popup .ant-picker-super-next-icon,::ng-deep .rd-date-picker-popup .ant-picker-header-next-btn,::ng-deep .rd-date-picker-popup .ant-picker-super-prev-icon,::ng-deep .rd-date-picker-popup .ant-picker-header-prev-btn{color:var(--rd-copy-primary)}::ng-deep .rd-date-picker-popup .ant-picker-super-prev-icon:after,::ng-deep .rd-date-picker-popup .ant-picker-super-next-icon:after{top:2px;left:2px}::ng-deep .rd-date-picker-popup .ant-picker-header-view button{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-date-picker-popup .ant-picker-panel-container{border-radius:4px}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-header{border-bottom:none}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-header-view{display:flex;flex-direction:row-reverse;justify-content:center;gap:8px}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-month-btn{order:2}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-year-btn{order:1}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-panel+.ant-picker-panel .ant-picker-body{border-left:1px solid var(--rd-grey-200)}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell{color:var(--rd-copy-disable);font-weight:500}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell-in-view{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-body th{color:var(--rd-copy-secondary);font-weight:500}::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-in-range:before{background-color:var(--rd-blue-100)}::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner{border-radius:4px!important;background-color:var(--rd-control-input-selected)}::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner:before{border-radius:4px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3$1.NzDatePickerComponent, selector: "nz-date-picker,nz-week-picker,nz-month-picker,nz-year-picker,nz-range-picker", inputs: ["nzAllowClear", "nzAutoFocus", "nzDisabled", "nzBorderless", "nzInputReadOnly", "nzInline", "nzOpen", "nzDisabledDate", "nzLocale", "nzPlaceHolder", "nzPopupStyle", "nzDropdownClassName", "nzSize", "nzStatus", "nzFormat", "nzDateRender", "nzDisabledTime", "nzRenderExtraFooter", "nzShowToday", "nzMode", "nzShowNow", "nzRanges", "nzDefaultPickerValue", "nzSeparator", "nzSuffixIcon", "nzBackdrop", "nzId", "nzPlacement", "nzShowWeekNumber", "nzShowTime"], outputs: ["nzOnPanelChange", "nzOnCalendarChange", "nzOnOk", "nzOnOpenChange"], exportAs: ["nzDatePicker"] }, { kind: "directive", type: i3$1.NzRangePickerComponent, selector: "nz-range-picker", exportAs: ["nzRangePicker"] }, { 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"] }] });
2720
+ RdFilterDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RdFilterDateComponent, selector: "app-rd-filter-date", inputs: { item: "item" }, outputs: { handleChangeValue: "handleChangeValue" }, viewQueries: [{ propertyName: "datePicker", first: true, predicate: ["datePicker"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"rd-date-picker-container\"\n [ngClass]=\"{ 'rd-date-picker-focus': isPickerOpen }\"\n *ngIf=\"item\"\n>\n <nz-range-picker\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onDateChange($event)\"\n (nzOnOpenChange)=\"onOpenChange($event)\"\n [nzFormat]=\"'yyyy-MM-dd'\"\n [nzShowTime]=\"false\"\n [nzAllowClear]=\"false\"\n [nzPlaceHolder]=\"['From', 'To']\"\n class=\"rd-range-picker\"\n [nzDisabledDate]=\"disabledDate\"\n [nzSuffixIcon]=\"customIcon\"\n [nzDropdownClassName]=\"'rd-date-picker-popup'\"\n [nzSeparator]=\"'-'\"\n nzSuffixIcon=\"\"\n #datePicker\n [ngClass]=\"{ 'rd-hidden-range-picker': !item.value?.length }\"\n ></nz-range-picker>\n\n <div\n *ngIf=\"!item?.value?.length\"\n class=\"rd-placeholder-box\"\n [ngClass]=\"{ 'rd-placeholder-box-focus': isPickerOpen }\"\n (click)=\"openPicker()\"\n >\n {{ item.title }}\n <ng-container *ngTemplateOutlet=\"customIcon\"></ng-container>\n </div>\n\n <ng-template #customIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n </ng-template>\n</div>\n", styles: ["@charset \"UTF-8\";.rd-date-picker-container{position:relative}.rd-range-picker{width:auto;border:1px solid var(--rd-input-fg-default);border-radius:4px}.rd-hidden-range-picker{position:absolute;top:0;left:0;width:100%;height:100%}.rd-placeholder-box{height:32px;padding:0 12px;background:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:12px;width:-moz-fit-content;width:fit-content;white-space:nowrap;position:relative;top:0;transition:ease-in-out .2s all;font-weight:500}.rd-placeholder-box svg{transition:transform .2s ease;cursor:pointer}.rd-placeholder-box-focus{border-color:var(--rd-input-fg-hover)}.rd-placeholder-box-focus ::ng-deep svg{transform:rotate(-180deg)}.rd-placeholder-box:hover{border-color:var(--rd-input-fg-hover)}.rd-hidden-range-picker{opacity:0;width:132px}::ng-deep .rd-range-picker .ant-picker-suffix svg{transition:transform .2s ease;cursor:pointer;pointer-events:initial}::ng-deep .rd-range-picker.ant-picker:hover,::ng-deep .rd-range-picker.ant-picker-focused{box-shadow:none;border-color:var(--rd-input-fg-hover)}::ng-deep .rd-range-picker .ant-picker-active-bar{display:none}::ng-deep .rd-range-picker .ant-picker-input input{field-sizing:content;font-weight:500}::ng-deep .rd-range-picker .ant-picker-separator{width:-moz-fit-content;width:fit-content}::ng-deep .rd-date-picker-focus .ant-picker-suffix svg{pointer-events:none;transform:rotate(-180deg)}::ng-deep .rd-date-picker-popup.ant-picker-dropdown-range{padding:0}::ng-deep .rd-date-picker-popup .ant-picker-range-arrow{display:none}::ng-deep .rd-date-picker-popup .ant-picker-super-next-icon,::ng-deep .rd-date-picker-popup .ant-picker-header-next-btn,::ng-deep .rd-date-picker-popup .ant-picker-super-prev-icon,::ng-deep .rd-date-picker-popup .ant-picker-header-prev-btn{color:var(--rd-copy-primary)}::ng-deep .rd-date-picker-popup .ant-picker-super-prev-icon:after,::ng-deep .rd-date-picker-popup .ant-picker-super-next-icon:after{top:2px;left:2px}::ng-deep .rd-date-picker-popup .ant-picker-header-view button{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-date-picker-popup .ant-picker-panel-container{border-radius:4px}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-header{border-bottom:none}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-header-view{display:flex;flex-direction:row-reverse;justify-content:center;gap:8px}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-month-btn{order:2}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-year-btn{order:1}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-panel+.ant-picker-panel .ant-picker-body{border-left:1px solid var(--rd-grey-200)}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell{color:var(--rd-copy-disable);font-weight:500}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell-in-view{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-body th{color:var(--rd-copy-secondary);font-weight:500}::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-in-range:before{background-color:var(--rd-blue-100)}::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner{border-radius:4px!important;background-color:var(--rd-control-input-selected)}::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner:before{border-radius:4px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.NzDatePickerComponent, selector: "nz-date-picker,nz-week-picker,nz-month-picker,nz-year-picker,nz-range-picker", inputs: ["nzAllowClear", "nzAutoFocus", "nzDisabled", "nzBorderless", "nzInputReadOnly", "nzInline", "nzOpen", "nzDisabledDate", "nzLocale", "nzPlaceHolder", "nzPopupStyle", "nzDropdownClassName", "nzSize", "nzStatus", "nzFormat", "nzDateRender", "nzDisabledTime", "nzRenderExtraFooter", "nzShowToday", "nzMode", "nzShowNow", "nzRanges", "nzDefaultPickerValue", "nzSeparator", "nzSuffixIcon", "nzBackdrop", "nzId", "nzPlacement", "nzShowWeekNumber", "nzShowTime"], outputs: ["nzOnPanelChange", "nzOnCalendarChange", "nzOnOk", "nzOnOpenChange"], exportAs: ["nzDatePicker"] }, { kind: "directive", type: i4.NzRangePickerComponent, selector: "nz-range-picker", exportAs: ["nzRangePicker"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
1659
2721
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdFilterDateComponent, decorators: [{
1660
2722
  type: Component,
1661
2723
  args: [{ selector: 'app-rd-filter-date', template: "<div\n class=\"rd-date-picker-container\"\n [ngClass]=\"{ 'rd-date-picker-focus': isPickerOpen }\"\n *ngIf=\"item\"\n>\n <nz-range-picker\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onDateChange($event)\"\n (nzOnOpenChange)=\"onOpenChange($event)\"\n [nzFormat]=\"'yyyy-MM-dd'\"\n [nzShowTime]=\"false\"\n [nzAllowClear]=\"false\"\n [nzPlaceHolder]=\"['From', 'To']\"\n class=\"rd-range-picker\"\n [nzDisabledDate]=\"disabledDate\"\n [nzSuffixIcon]=\"customIcon\"\n [nzDropdownClassName]=\"'rd-date-picker-popup'\"\n [nzSeparator]=\"'-'\"\n nzSuffixIcon=\"\"\n #datePicker\n [ngClass]=\"{ 'rd-hidden-range-picker': !item.value?.length }\"\n ></nz-range-picker>\n\n <div\n *ngIf=\"!item?.value?.length\"\n class=\"rd-placeholder-box\"\n [ngClass]=\"{ 'rd-placeholder-box-focus': isPickerOpen }\"\n (click)=\"openPicker()\"\n >\n {{ item.title }}\n <ng-container *ngTemplateOutlet=\"customIcon\"></ng-container>\n </div>\n\n <ng-template #customIcon>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.60136 4.90777C2.83639 4.68743 3.20555 4.69934 3.42589 4.93437L8.00033 9.81377L12.5748 4.93437C12.7951 4.69934 13.1643 4.68743 13.3993 4.90777C13.6343 5.12812 13.6462 5.49727 13.4259 5.7323L8.42589 11.0656C8.31561 11.1833 8.16157 11.25 8.00033 11.25C7.83909 11.25 7.68504 11.1833 7.57476 11.0656L2.57476 5.7323C2.35442 5.49727 2.36633 5.12811 2.60136 4.90777Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n </ng-template>\n</div>\n", styles: ["@charset \"UTF-8\";.rd-date-picker-container{position:relative}.rd-range-picker{width:auto;border:1px solid var(--rd-input-fg-default);border-radius:4px}.rd-hidden-range-picker{position:absolute;top:0;left:0;width:100%;height:100%}.rd-placeholder-box{height:32px;padding:0 12px;background:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:12px;width:-moz-fit-content;width:fit-content;white-space:nowrap;position:relative;top:0;transition:ease-in-out .2s all;font-weight:500}.rd-placeholder-box svg{transition:transform .2s ease;cursor:pointer}.rd-placeholder-box-focus{border-color:var(--rd-input-fg-hover)}.rd-placeholder-box-focus ::ng-deep svg{transform:rotate(-180deg)}.rd-placeholder-box:hover{border-color:var(--rd-input-fg-hover)}.rd-hidden-range-picker{opacity:0;width:132px}::ng-deep .rd-range-picker .ant-picker-suffix svg{transition:transform .2s ease;cursor:pointer;pointer-events:initial}::ng-deep .rd-range-picker.ant-picker:hover,::ng-deep .rd-range-picker.ant-picker-focused{box-shadow:none;border-color:var(--rd-input-fg-hover)}::ng-deep .rd-range-picker .ant-picker-active-bar{display:none}::ng-deep .rd-range-picker .ant-picker-input input{field-sizing:content;font-weight:500}::ng-deep .rd-range-picker .ant-picker-separator{width:-moz-fit-content;width:fit-content}::ng-deep .rd-date-picker-focus .ant-picker-suffix svg{pointer-events:none;transform:rotate(-180deg)}::ng-deep .rd-date-picker-popup.ant-picker-dropdown-range{padding:0}::ng-deep .rd-date-picker-popup .ant-picker-range-arrow{display:none}::ng-deep .rd-date-picker-popup .ant-picker-super-next-icon,::ng-deep .rd-date-picker-popup .ant-picker-header-next-btn,::ng-deep .rd-date-picker-popup .ant-picker-super-prev-icon,::ng-deep .rd-date-picker-popup .ant-picker-header-prev-btn{color:var(--rd-copy-primary)}::ng-deep .rd-date-picker-popup .ant-picker-super-prev-icon:after,::ng-deep .rd-date-picker-popup .ant-picker-super-next-icon:after{top:2px;left:2px}::ng-deep .rd-date-picker-popup .ant-picker-header-view button{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-date-picker-popup .ant-picker-panel-container{border-radius:4px}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-header{border-bottom:none}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-header-view{display:flex;flex-direction:row-reverse;justify-content:center;gap:8px}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-month-btn{order:2}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-header .ant-picker-header-year-btn{order:1}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-panel+.ant-picker-panel .ant-picker-body{border-left:1px solid var(--rd-grey-200)}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell{color:var(--rd-copy-disable);font-weight:500}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-body .ant-picker-cell-in-view{color:var(--rd-copy-primary);font-weight:500}::ng-deep .rd-date-picker-popup .ant-picker-panel-container .ant-picker-body th{color:var(--rd-copy-secondary);font-weight:500}::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-in-range:before{background-color:var(--rd-blue-100)}::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner{border-radius:4px!important;background-color:var(--rd-control-input-selected)}::ng-deep .rd-date-picker-popup .ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner:before{border-radius:4px!important}\n"] }]
@@ -1702,7 +2764,7 @@ class RdFilterInputComponent {
1702
2764
  }
1703
2765
  }
1704
2766
  RdFilterInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdFilterInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1705
- RdFilterInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RdFilterInputComponent, selector: "app-rd-filter-input", inputs: { item: "item" }, outputs: { handleChangeValue: "handleChangeValue" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"rd-input-container\"\n [ngStyle]=\"{ 'min-width': item.minWidth ? item.minWidth : '150px' }\"\n>\n <nz-input-group [nzPrefix]=\"prefixIconSearch\">\n <input\n type=\"text\"\n nz-input\n [placeholder]=\"item.title\"\n [(ngModel)]=\"item.value\"\n (ngModelChange)=\"handleValueChange($event)\"\n />\n </nz-input-group>\n</div>\n\n<ng-template #prefixIconSearch>\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M14.4951 13.6938L11.3962 10.5949C12.3175 9.46805 12.7704 8.03024 12.6613 6.57885C12.5522 5.12746 11.8894 3.77353 10.81 2.7971C9.73066 1.82066 8.3173 1.29643 6.86227 1.33283C5.40723 1.36923 4.02185 1.96348 2.99266 2.99266C1.96348 4.02184 1.36923 5.40722 1.33283 6.86225C1.29643 8.31728 1.82066 9.73064 2.7971 10.81C3.77354 11.8894 5.12747 12.5521 6.57887 12.6612C8.03026 12.7703 9.46807 12.3174 10.5949 11.3962L13.6938 14.5022C13.8027 14.6063 13.9474 14.6647 14.098 14.6653C14.2105 14.6651 14.3204 14.6315 14.4138 14.5687C14.5071 14.5059 14.5796 14.4168 14.6222 14.3126C14.6648 14.2085 14.6754 14.0941 14.6528 13.9839C14.6302 13.8737 14.5753 13.7727 14.4951 13.6938ZM7.00667 11.5451C6.10905 11.5451 5.23158 11.2789 4.48523 10.7802C3.73889 10.2816 3.15718 9.57274 2.81367 8.74345C2.47017 7.91416 2.38029 7.00162 2.55541 6.12125C2.73053 5.24087 3.16277 4.4322 3.79749 3.79748C4.43221 3.16277 5.24088 2.73052 6.12126 2.55541C7.00164 2.38029 7.91417 2.47017 8.74347 2.81367C9.57277 3.15718 10.2816 3.73888 10.7803 4.48523C11.279 5.23157 11.5451 6.10904 11.5451 7.00666C11.5433 8.20976 11.0645 9.36304 10.2138 10.2138C9.36306 11.0645 8.20977 11.5432 7.00667 11.5451Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n", styles: ["::ng-deep .ant-input-affix-wrapper{border-radius:4px}::ng-deep .ant-input-affix-wrapper:focus,::ng-deep .ant-input-affix-wrapper-focused{border-radius:4px;border:1px solid var(--rd-input-fg-hover);background:var(--rd-input-bg-hover);box-shadow:0 0 0 2px #367af61a}.ant-input::placeholder{color:var(--rd-copy-secondary)}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2$1.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i3$2.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "component", type: i3$2.NzInputGroupComponent, selector: "nz-input-group", inputs: ["nzAddOnBeforeIcon", "nzAddOnAfterIcon", "nzPrefixIcon", "nzSuffixIcon", "nzAddOnBefore", "nzAddOnAfter", "nzPrefix", "nzStatus", "nzSuffix", "nzSize", "nzSearch", "nzCompact"], exportAs: ["nzInputGroup"] }, { kind: "directive", type: i3$2.NzInputGroupWhitSuffixOrPrefixDirective, selector: "nz-input-group[nzSuffix], nz-input-group[nzPrefix]" }, { kind: "directive", type: i2.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: 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"] }] });
2767
+ RdFilterInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RdFilterInputComponent, selector: "app-rd-filter-input", inputs: { item: "item" }, outputs: { handleChangeValue: "handleChangeValue" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"rd-input-container\"\n [ngStyle]=\"{ 'min-width': item.minWidth ? item.minWidth : '150px' }\"\n>\n <nz-input-group [nzPrefix]=\"prefixIconSearch\">\n <input\n type=\"text\"\n nz-input\n [placeholder]=\"item.title\"\n [(ngModel)]=\"item.value\"\n (ngModelChange)=\"handleValueChange($event)\"\n />\n </nz-input-group>\n</div>\n\n<ng-template #prefixIconSearch>\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M14.4951 13.6938L11.3962 10.5949C12.3175 9.46805 12.7704 8.03024 12.6613 6.57885C12.5522 5.12746 11.8894 3.77353 10.81 2.7971C9.73066 1.82066 8.3173 1.29643 6.86227 1.33283C5.40723 1.36923 4.02185 1.96348 2.99266 2.99266C1.96348 4.02184 1.36923 5.40722 1.33283 6.86225C1.29643 8.31728 1.82066 9.73064 2.7971 10.81C3.77354 11.8894 5.12747 12.5521 6.57887 12.6612C8.03026 12.7703 9.46807 12.3174 10.5949 11.3962L13.6938 14.5022C13.8027 14.6063 13.9474 14.6647 14.098 14.6653C14.2105 14.6651 14.3204 14.6315 14.4138 14.5687C14.5071 14.5059 14.5796 14.4168 14.6222 14.3126C14.6648 14.2085 14.6754 14.0941 14.6528 13.9839C14.6302 13.8737 14.5753 13.7727 14.4951 13.6938ZM7.00667 11.5451C6.10905 11.5451 5.23158 11.2789 4.48523 10.7802C3.73889 10.2816 3.15718 9.57274 2.81367 8.74345C2.47017 7.91416 2.38029 7.00162 2.55541 6.12125C2.73053 5.24087 3.16277 4.4322 3.79749 3.79748C4.43221 3.16277 5.24088 2.73052 6.12126 2.55541C7.00164 2.38029 7.91417 2.47017 8.74347 2.81367C9.57277 3.15718 10.2816 3.73888 10.7803 4.48523C11.279 5.23157 11.5451 6.10904 11.5451 7.00666C11.5433 8.20976 11.0645 9.36304 10.2138 10.2138C9.36306 11.0645 8.20977 11.5432 7.00667 11.5451Z\"\n fill=\"var(--rd-copy-primary)\"\n />\n </svg>\n</ng-template>\n", styles: ["::ng-deep .ant-input-affix-wrapper{border-radius:4px}::ng-deep .ant-input-affix-wrapper:focus,::ng-deep .ant-input-affix-wrapper-focused{border-radius:4px;border:1px solid var(--rd-input-fg-hover);background:var(--rd-input-bg-hover);box-shadow:0 0 0 2px #367af61a}.ant-input::placeholder{color:var(--rd-copy-secondary)}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i3$2.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i3$1.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "component", type: i3$1.NzInputGroupComponent, selector: "nz-input-group", inputs: ["nzAddOnBeforeIcon", "nzAddOnAfterIcon", "nzPrefixIcon", "nzSuffixIcon", "nzAddOnBefore", "nzAddOnAfter", "nzPrefix", "nzStatus", "nzSuffix", "nzSize", "nzSearch", "nzCompact"], exportAs: ["nzInputGroup"] }, { kind: "directive", type: i3$1.NzInputGroupWhitSuffixOrPrefixDirective, selector: "nz-input-group[nzSuffix], nz-input-group[nzPrefix]" }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
1706
2768
  __decorate([
1707
2769
  debounce()
1708
2770
  ], RdFilterInputComponent.prototype, "handleValueChange", null);
@@ -1742,10 +2804,10 @@ class RdFilterComponent {
1742
2804
  }
1743
2805
  }
1744
2806
  RdFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdFilterComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1745
- RdFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RdFilterComponent, selector: "app-rd-filter", inputs: { lang: "lang", filterArr: "filterArr", statusDisplayConfigs: "statusDisplayConfigs", statusGroupConfigs: "statusGroupConfigs", clearText: "clearText" }, outputs: { defSearchChange: "defSearchChange", clearFilter: "clearFilter" }, ngImport: i0, template: "<div class=\"rd-custom-filter-wrap\" *ngIf=\"filterArr?.length\">\n <ng-container *ngFor=\"let item of filterArr\">\n <ng-container [ngSwitch]=\"item.formType\">\n <app-rd-filter-date\n *ngSwitchCase=\"filterTypeEnum.date\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n >\n </app-rd-filter-date>\n <app-rd-filter-select\n *ngSwitchCase=\"filterTypeEnum.select\"\n [item]=\"item\"\n [statusGroupConfigs]=\"statusGroupConfigs\"\n [statusDisplayConfigs]=\"statusDisplayConfigs\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-select>\n <app-rd-filter-input\n *ngSwitchCase=\"filterTypeEnum.input\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-input>\n </ng-container>\n </ng-container>\n <button\n [disabled]=\"!isClearAble\"\n (click)=\"clear()\"\n class=\"rd-custom-filter-clear\"\n nz-button\n nzType=\"link\"\n >\n {{ getClearTrans() }}\n </button>\n</div>\n", styles: [".rd-custom-filter-wrap{display:flex;align-items:center;gap:8px;padding-top:12px;padding-bottom:12px}.rd-custom-filter-clear{font-size:13px;font-weight:600;color:var(--rd-copy-brand);padding:0}.rd-custom-filter-clear:disabled{color:var(--rd-copy-disable)}\n", ".rd-form-item{position:relative;border-radius:16px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2$2.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i2$1.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "component", type: RdFilterSelectComponent, selector: "app-rd-filter-select", inputs: ["item", "statusDisplayConfigs", "statusGroupConfigs"], outputs: ["handleChangeValue"] }, { kind: "component", type: RdFilterDateComponent, selector: "app-rd-filter-date", inputs: ["item"], outputs: ["handleChangeValue"] }, { kind: "component", type: RdFilterInputComponent, selector: "app-rd-filter-input", inputs: ["item"], outputs: ["handleChangeValue"] }] });
2807
+ RdFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RdFilterComponent, selector: "app-rd-filter", inputs: { lang: "lang", filterArr: "filterArr", statusDisplayConfigs: "statusDisplayConfigs", statusGroupConfigs: "statusGroupConfigs", clearText: "clearText" }, outputs: { defSearchChange: "defSearchChange", clearFilter: "clearFilter" }, ngImport: i0, template: "<div class=\"rd-custom-filter-wrap\" *ngIf=\"filterArr?.length\">\n <ng-container *ngFor=\"let item of filterArr\">\n <ng-container [ngSwitch]=\"item.formType\">\n <app-rd-filter-date\n *ngSwitchCase=\"filterTypeEnum.date\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n >\n </app-rd-filter-date>\n <app-rd-filter-select\n *ngSwitchCase=\"filterTypeEnum.select\"\n [item]=\"item\"\n [statusGroupConfigs]=\"statusGroupConfigs\"\n [statusDisplayConfigs]=\"statusDisplayConfigs\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-select>\n <app-rd-filter-input\n *ngSwitchCase=\"filterTypeEnum.input\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-input>\n </ng-container>\n </ng-container>\n <button\n [disabled]=\"!isClearAble\"\n (click)=\"clear()\"\n class=\"rd-custom-filter-clear\"\n nz-button\n nzType=\"link\"\n >\n {{ getClearTrans() }}\n </button>\n</div>\n", styles: [".rd-custom-filter-wrap{display:flex;align-items:center;gap:8px;padding-top:12px;padding-bottom:12px}.rd-custom-filter-clear{font-size:13px;font-weight:600;color:var(--rd-copy-brand);padding:0}.rd-custom-filter-clear:disabled{color:var(--rd-copy-disable)}\n", ".rd-form-item{position:relative;border-radius:12px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:16px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i3$2.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "component", type: RdFilterSelectComponent, selector: "app-rd-filter-select", inputs: ["item", "statusDisplayConfigs", "statusGroupConfigs"], outputs: ["handleChangeValue"] }, { kind: "component", type: RdFilterDateComponent, selector: "app-rd-filter-date", inputs: ["item"], outputs: ["handleChangeValue"] }, { kind: "component", type: RdFilterInputComponent, selector: "app-rd-filter-input", inputs: ["item"], outputs: ["handleChangeValue"] }] });
1746
2808
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdFilterComponent, decorators: [{
1747
2809
  type: Component,
1748
- args: [{ selector: 'app-rd-filter', template: "<div class=\"rd-custom-filter-wrap\" *ngIf=\"filterArr?.length\">\n <ng-container *ngFor=\"let item of filterArr\">\n <ng-container [ngSwitch]=\"item.formType\">\n <app-rd-filter-date\n *ngSwitchCase=\"filterTypeEnum.date\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n >\n </app-rd-filter-date>\n <app-rd-filter-select\n *ngSwitchCase=\"filterTypeEnum.select\"\n [item]=\"item\"\n [statusGroupConfigs]=\"statusGroupConfigs\"\n [statusDisplayConfigs]=\"statusDisplayConfigs\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-select>\n <app-rd-filter-input\n *ngSwitchCase=\"filterTypeEnum.input\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-input>\n </ng-container>\n </ng-container>\n <button\n [disabled]=\"!isClearAble\"\n (click)=\"clear()\"\n class=\"rd-custom-filter-clear\"\n nz-button\n nzType=\"link\"\n >\n {{ getClearTrans() }}\n </button>\n</div>\n", styles: [".rd-custom-filter-wrap{display:flex;align-items:center;gap:8px;padding-top:12px;padding-bottom:12px}.rd-custom-filter-clear{font-size:13px;font-weight:600;color:var(--rd-copy-brand);padding:0}.rd-custom-filter-clear:disabled{color:var(--rd-copy-disable)}\n", ".rd-form-item{position:relative;border-radius:16px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"] }]
2810
+ args: [{ selector: 'app-rd-filter', template: "<div class=\"rd-custom-filter-wrap\" *ngIf=\"filterArr?.length\">\n <ng-container *ngFor=\"let item of filterArr\">\n <ng-container [ngSwitch]=\"item.formType\">\n <app-rd-filter-date\n *ngSwitchCase=\"filterTypeEnum.date\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n >\n </app-rd-filter-date>\n <app-rd-filter-select\n *ngSwitchCase=\"filterTypeEnum.select\"\n [item]=\"item\"\n [statusGroupConfigs]=\"statusGroupConfigs\"\n [statusDisplayConfigs]=\"statusDisplayConfigs\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-select>\n <app-rd-filter-input\n *ngSwitchCase=\"filterTypeEnum.input\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-input>\n </ng-container>\n </ng-container>\n <button\n [disabled]=\"!isClearAble\"\n (click)=\"clear()\"\n class=\"rd-custom-filter-clear\"\n nz-button\n nzType=\"link\"\n >\n {{ getClearTrans() }}\n </button>\n</div>\n", styles: [".rd-custom-filter-wrap{display:flex;align-items:center;gap:8px;padding-top:12px;padding-bottom:12px}.rd-custom-filter-clear{font-size:13px;font-weight:600;color:var(--rd-copy-brand);padding:0}.rd-custom-filter-clear:disabled{color:var(--rd-copy-disable)}\n", ".rd-form-item{position:relative;border-radius:12px;padding:2px 0;border:1px solid var(--rd-input-fg-default);background-color:var(--rd-input-bg-default);width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--rd-copy-secondary);transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:var(--rd-copy-primary);font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:var(--rd-copy-primary);font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:var(--rd-copy-disable)}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:var(--rd-copy-disable)}.rd-form-item.rd-error{border-color:var(--rd-input-fg-danger)}.rd-form-item-error{color:var(--rd-copy-danger);font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:16px;padding:12px 16px;background-color:var(--rd-input-bg-default);border:1px solid var(--rd-input-fg-default);width:100%}.rd-form-number-item .rd-item-label{color:var(--rd-copy-secondary);font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:var(--rd-copy-primary);border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:var(--rd-copy-disable)}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:var(--rd-copy-secondary);margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:var(--rd-input-bg-disable);border-color:var(--rd-input-fg-disable)}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:var(--rd-copy-disable)}.rd-form-number-item.rd-error{border-color:var(--rd-input-fg-danger)}\n"] }]
1749
2811
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { lang: [{
1750
2812
  type: Input
1751
2813
  }], filterArr: [{
@@ -1829,7 +2891,7 @@ class CustomPaginatorComponent {
1829
2891
  }
1830
2892
  }
1831
2893
  CustomPaginatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomPaginatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1832
- CustomPaginatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomPaginatorComponent, selector: "app-rd-pagination", inputs: { lang: "lang", pageIndex: "pageIndex", pageSize: "pageSize", currentTotalSize: "currentTotalSize", totalSize: "totalSize", specilMargin: "specilMargin", showLeftPageDorp: "showLeftPageDorp", isWhiteBg: "isWhiteBg", totalItemsText: "totalItemsText", pageText: "pageText" }, outputs: { changePageSize: "changePageSize", changePageIndex: "changePageIndex" }, ngImport: i0, template: "<div *ngIf=\"currentTotalSize > 0\" class=\"pagination-div\" nz-row>\n <div class=\"pagination-total\">\n <ng-container *ngIf=\"lang === 'en'\">\n {{ \"Total \" + totalSize + \" items\" }}\n </ng-container>\n <ng-container *ngIf=\"lang === 'zh'\">\n {{ \"\u5171 \" + totalSize + \" \u9805\" }}\n </ng-container>\n </div>\n <div class=\"pagination-cnt\" *ngIf=\"totalSize > 10\">\n <nz-pagination\n [nzTotal]=\"totalSize\"\n [nzPageIndex]=\"pageIndex\"\n [nzPageSize]=\"pageSize\"\n (nzPageIndexChange)=\"nzPageIndexChange($event)\"\n ></nz-pagination>\n </div>\n <div\n *ngIf=\"totalSize > 0 && totalSize > 10 && showLeftPageDorp\"\n class=\"pagination-select\"\n >\n <nz-select\n [(ngModel)]=\"pageSize\"\n class=\"pagination-select-size\"\n (ngModelChange)=\"nzPageSizeChange(pageSize)\"\n [nzDropdownClassName]=\"'paginator-select'\"\n >\n <nz-option [nzValue]=\"10\" nzLabel=\"10\"></nz-option>\n <nz-option [nzValue]=\"25\" nzLabel=\"25\"></nz-option>\n <nz-option [nzValue]=\"50\" nzLabel=\"50\"></nz-option>\n <nz-option [nzValue]=\"100\" nzLabel=\"100\"></nz-option>\n </nz-select>\n <span class=\"page-text\"\n >/\n <ng-container *ngIf=\"lang === 'en'\"> Page </ng-container>\n <ng-container *ngIf=\"lang === 'zh'\"> \u9801\u9762 </ng-container>\n </span>\n </div>\n</div>\n", styles: [":host::ng-deep .pagination-div{display:flex;justify-content:space-between;height:56px;padding:12px 0;border-top:1px solid var(--rd-grey-200)}:host::ng-deep .pagination-div .pagination-total{font-size:12px;font-weight:500;line-height:32px;color:var(--rd-copy-primary)}:host::ng-deep .pagination-div .pagination-select{display:flex;align-items:center}:host::ng-deep .pagination-div .pagination-select .page-text{margin-left:4px}:host::ng-deep .pagination-div .pagination-cnt{height:32px;line-height:32px;margin:0 auto;font-size:12px;font-weight:500;color:var(--rd-copy-primary)}:host::ng-deep .pagination-div .ant-select-item{padding-left:24px!important}:host::ng-deep .pagination-div .ant-select-item-option{padding-left:24px!important}:host::ng-deep .pagination-div .ant-table-pagination .ant-pagination{padding:16px 44px;position:absolute;right:0;margin-top:24px}:host::ng-deep .pagination-div .ant-pagination li{background:transparent;border:none}:host::ng-deep .pagination-div .ant-pagination-item-active{background:transparent;border:1px solid var(--rd-copy-brand)!important;border-radius:4px;color:var(--rd-copy-brand)!important}:host::ng-deep .pagination-div .ant-pagination-item{height:38px;margin-right:16px;min-width:32px;margin-top:3px}:host::ng-deep .pagination-div .ant-pagination-item a{font-size:12px;font-weight:500;color:var(--rd-grey-300);min-width:24px;outline:none}:host::ng-deep .pagination-div .ant-pagination-prev{margin-right:16px}:host::ng-deep .pagination-div .ant-pagination-item-active a{border-radius:4px;color:var(--rd-copy-brand)}:host::ng-deep .pagination-div .ant-select:not(.ant-select-customize-input) .ant-select-selector{border:unset;border-radius:8px;text-align:left;padding:0;box-shadow:none!important}:host::ng-deep .pagination-div .ant-pagination-item-link{border-radius:50%;color:var(--rd-copy-inverse);border:unset;outline:none;height:32px;width:32px;position:relative}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon{vertical-align:-5px}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon svg{width:18px;height:18px}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon-left{display:none}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon-right{display:none}:host::ng-deep .pagination-div .ant-pagination-item-link:hover{box-shadow:0 1px 4px #00000040;color:var(--rd-copy-inverse)!important}:host::ng-deep .pagination-div .ant-pagination-prev .ant-pagination-item-link:before{content:\"\";background:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjMzMzQgMi41TDYuNjY2NzUgMTBMMTMuMzMzNCAxNy41IiBzdHJva2U9IiMwMzA3MTIiIHN0cm9rZS13aWR0aD0iMS4yNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=) no-repeat center;background-size:55%;position:absolute;inset:0}:host::ng-deep .pagination-div .ant-pagination-next .ant-pagination-item-link:before{content:\"\";background:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTYuNjY2NzUgMTcuNUwxMy4zMzM0IDEwTDYuNjY2NzUgMi41IiBzdHJva2U9IiMwMzA3MTIiIHN0cm9rZS13aWR0aD0iMS4yNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=) no-repeat center;background-size:55%;position:absolute;inset:0}:host::ng-deep .pagination-div .ant-select-arrow{display:none}:host::ng-deep .pagination-div .ant-select-selection-item{text-align:center;font-weight:500}:host::ng-deep .pagination-div .ant-select-single .ant-select-selector .ant-select-selection-item{position:relative}:host::ng-deep .pagination-div .ant-select-single.ant-select-open .ant-select-selection-item{color:var(--rd-copy-primary)}:host::ng-deep .pagination-div a{text-decoration:none!important}:host::ng-deep .pagination-select-size{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:var(--rd-input-bg-default);border-radius:4px;border:1px solid var(--rd-input-fg-default);margin-right:16px;font-size:12px;font-weight:500;height:32px;color:var(--rd-copy-primary);padding:0 12px;min-width:70px}:host::ng-deep .pagination-select-size .ant-select-arrow{display:flex;margin-left:auto;color:var(--rd-copy-primary)}:host::ng-deep .pagination-select-size .anticon{font-size:12px}::ng-deep .paginator-select .ant-select-dropdown{border-radius:8px;font-weight:500;color:var(--rd-grey-300);padding-top:0;padding-bottom:0;text-align:center;box-shadow:0 1px 4px #0000001a}::ng-deep .paginator-select .ant-select-item-option-selected:not(.ant-select-item-option-disabled){background:var(--rd-cyan-50);font-weight:500;text-align:center;color:var(--rd-copy-primary)}::ng-deep .paginator-select .ant-select-item{font-size:12px;font-weight:500}::ng-deep .paginator-select .ant-select-selection-item{text-align:left!important}::ng-deep .pagination-div .ant-pagination-item-active a{color:var(--rd-copy-brand)!important}::ng-deep .ant-pagination{height:32px;line-height:32px}::ng-deep .pagination-div .ant-pagination-item{height:32px;line-height:32px}::ng-deep .pagination-div .ant-pagination-item{height:32px!important;margin-top:0!important;line-height:32px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4$1.NzOptionComponent, selector: "nz-option", inputs: ["nzLabel", "nzValue", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i4$1.NzSelectComponent, selector: "nz-select", inputs: ["nzId", "nzSize", "nzStatus", "nzOptionHeightPx", "nzOptionOverflowSize", "nzDropdownClassName", "nzDropdownMatchSelectWidth", "nzDropdownStyle", "nzNotFoundContent", "nzPlaceHolder", "nzPlacement", "nzMaxTagCount", "nzDropdownRender", "nzCustomTemplate", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "nzBorderless", "nzShowSearch", "nzLoading", "nzAutoFocus", "nzAutoClearSearchValue", "nzServerSearch", "nzDisabled", "nzOpen", "nzSelectOnTab", "nzBackdrop", "nzOptions", "nzShowArrow"], outputs: ["nzOnSearch", "nzScrollToBottom", "nzOpenChange", "nzBlur", "nzFocus"], exportAs: ["nzSelect"] }, { 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"] }, { kind: "component", type: i4$2.NzPaginationComponent, selector: "nz-pagination", inputs: ["nzShowTotal", "nzItemRender", "nzSize", "nzPageSizeOptions", "nzShowSizeChanger", "nzShowQuickJumper", "nzSimple", "nzDisabled", "nzResponsive", "nzHideOnSinglePage", "nzTotal", "nzPageIndex", "nzPageSize"], outputs: ["nzPageSizeChange", "nzPageIndexChange"], exportAs: ["nzPagination"] }, { kind: "directive", type: i5.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }] });
2894
+ CustomPaginatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomPaginatorComponent, selector: "app-rd-pagination", inputs: { lang: "lang", pageIndex: "pageIndex", pageSize: "pageSize", currentTotalSize: "currentTotalSize", totalSize: "totalSize", specilMargin: "specilMargin", showLeftPageDorp: "showLeftPageDorp", isWhiteBg: "isWhiteBg", totalItemsText: "totalItemsText", pageText: "pageText" }, outputs: { changePageSize: "changePageSize", changePageIndex: "changePageIndex" }, ngImport: i0, template: "<div *ngIf=\"currentTotalSize > 0\" class=\"pagination-div\" nz-row>\n <div class=\"pagination-total\">\n <ng-container *ngIf=\"lang === 'en'\">\n {{ \"Total \" + totalSize + \" items\" }}\n </ng-container>\n <ng-container *ngIf=\"lang === 'zh'\">\n {{ \"\u5171 \" + totalSize + \" \u9805\" }}\n </ng-container>\n </div>\n <div class=\"pagination-cnt\" *ngIf=\"totalSize > 10\">\n <nz-pagination\n [nzTotal]=\"totalSize\"\n [nzPageIndex]=\"pageIndex\"\n [nzPageSize]=\"pageSize\"\n (nzPageIndexChange)=\"nzPageIndexChange($event)\"\n ></nz-pagination>\n </div>\n <div\n *ngIf=\"totalSize > 0 && totalSize > 10 && showLeftPageDorp\"\n class=\"pagination-select\"\n >\n <nz-select\n [(ngModel)]=\"pageSize\"\n class=\"pagination-select-size\"\n (ngModelChange)=\"nzPageSizeChange(pageSize)\"\n [nzDropdownClassName]=\"'paginator-select'\"\n >\n <nz-option [nzValue]=\"10\" nzLabel=\"10\"></nz-option>\n <nz-option [nzValue]=\"25\" nzLabel=\"25\"></nz-option>\n <nz-option [nzValue]=\"50\" nzLabel=\"50\"></nz-option>\n <nz-option [nzValue]=\"100\" nzLabel=\"100\"></nz-option>\n </nz-select>\n <span class=\"page-text\"\n >/\n <ng-container *ngIf=\"lang === 'en'\"> Page </ng-container>\n <ng-container *ngIf=\"lang === 'zh'\"> \u9801\u9762 </ng-container>\n </span>\n </div>\n</div>\n", styles: [":host::ng-deep .pagination-div{display:flex;justify-content:space-between;height:56px;padding:12px 0;border-top:1px solid var(--rd-grey-200)}:host::ng-deep .pagination-div .pagination-total{font-size:12px;font-weight:500;line-height:32px;color:var(--rd-copy-primary)}:host::ng-deep .pagination-div .pagination-select{display:flex;align-items:center}:host::ng-deep .pagination-div .pagination-select .page-text{margin-left:4px}:host::ng-deep .pagination-div .pagination-cnt{height:32px;line-height:32px;margin:0 auto;font-size:12px;font-weight:500;color:var(--rd-copy-primary)}:host::ng-deep .pagination-div .ant-select-item{padding-left:24px!important}:host::ng-deep .pagination-div .ant-select-item-option{padding-left:24px!important}:host::ng-deep .pagination-div .ant-table-pagination .ant-pagination{padding:16px 44px;position:absolute;right:0;margin-top:24px}:host::ng-deep .pagination-div .ant-pagination li{background:transparent;border:none}:host::ng-deep .pagination-div .ant-pagination-item-active{background:transparent;border:1px solid var(--rd-copy-brand)!important;border-radius:4px;color:var(--rd-copy-brand)!important}:host::ng-deep .pagination-div .ant-pagination-item{height:38px;margin-right:16px;min-width:32px;margin-top:3px}:host::ng-deep .pagination-div .ant-pagination-item a{font-size:12px;font-weight:500;color:var(--rd-grey-300);min-width:24px;outline:none}:host::ng-deep .pagination-div .ant-pagination-prev{margin-right:16px}:host::ng-deep .pagination-div .ant-pagination-item-active a{border-radius:4px;color:var(--rd-copy-brand)}:host::ng-deep .pagination-div .ant-select:not(.ant-select-customize-input) .ant-select-selector{border:unset;border-radius:8px;text-align:left;padding:0;box-shadow:none!important}:host::ng-deep .pagination-div .ant-pagination-item-link{border-radius:50%;color:var(--rd-copy-inverse);border:unset;outline:none;height:32px;width:32px;position:relative}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon{vertical-align:-5px}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon svg{width:18px;height:18px}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon-left{display:none}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon-right{display:none}:host::ng-deep .pagination-div .ant-pagination-item-link:hover{box-shadow:0 1px 4px #00000040;color:var(--rd-copy-inverse)!important}:host::ng-deep .pagination-div .ant-pagination-prev .ant-pagination-item-link:before{content:\"\";background:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjMzMzQgMi41TDYuNjY2NzUgMTBMMTMuMzMzNCAxNy41IiBzdHJva2U9IiMwMzA3MTIiIHN0cm9rZS13aWR0aD0iMS4yNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=) no-repeat center;background-size:55%;position:absolute;inset:0}:host::ng-deep .pagination-div .ant-pagination-next .ant-pagination-item-link:before{content:\"\";background:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTYuNjY2NzUgMTcuNUwxMy4zMzM0IDEwTDYuNjY2NzUgMi41IiBzdHJva2U9IiMwMzA3MTIiIHN0cm9rZS13aWR0aD0iMS4yNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=) no-repeat center;background-size:55%;position:absolute;inset:0}:host::ng-deep .pagination-div .ant-select-arrow{display:none}:host::ng-deep .pagination-div .ant-select-selection-item{text-align:center;font-weight:500}:host::ng-deep .pagination-div .ant-select-single .ant-select-selector .ant-select-selection-item{position:relative}:host::ng-deep .pagination-div .ant-select-single.ant-select-open .ant-select-selection-item{color:var(--rd-copy-primary)}:host::ng-deep .pagination-div a{text-decoration:none!important}:host::ng-deep .pagination-select-size{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:var(--rd-input-bg-default);border-radius:4px;border:1px solid var(--rd-input-fg-default);margin-right:16px;font-size:12px;font-weight:500;height:32px;color:var(--rd-copy-primary);padding:0 12px;min-width:70px}:host::ng-deep .pagination-select-size .ant-select-arrow{display:flex;margin-left:auto;color:var(--rd-copy-primary)}:host::ng-deep .pagination-select-size .anticon{font-size:12px}::ng-deep .paginator-select .ant-select-dropdown{border-radius:8px;font-weight:500;color:var(--rd-grey-300);padding-top:0;padding-bottom:0;text-align:center;box-shadow:0 1px 4px #0000001a}::ng-deep .paginator-select .ant-select-item-option-selected:not(.ant-select-item-option-disabled){background:var(--rd-cyan-50);font-weight:500;text-align:center;color:var(--rd-copy-primary)}::ng-deep .paginator-select .ant-select-item{font-size:12px;font-weight:500}::ng-deep .paginator-select .ant-select-selection-item{text-align:left!important}::ng-deep .pagination-div .ant-pagination-item-active a{color:var(--rd-copy-brand)!important}::ng-deep .ant-pagination{height:32px;line-height:32px}::ng-deep .pagination-div .ant-pagination-item{height:32px;line-height:32px}::ng-deep .pagination-div .ant-pagination-item{height:32px!important;margin-top:0!important;line-height:32px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.NzOptionComponent, selector: "nz-option", inputs: ["nzLabel", "nzValue", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i2$1.NzSelectComponent, selector: "nz-select", inputs: ["nzId", "nzSize", "nzStatus", "nzOptionHeightPx", "nzOptionOverflowSize", "nzDropdownClassName", "nzDropdownMatchSelectWidth", "nzDropdownStyle", "nzNotFoundContent", "nzPlaceHolder", "nzPlacement", "nzMaxTagCount", "nzDropdownRender", "nzCustomTemplate", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "nzBorderless", "nzShowSearch", "nzLoading", "nzAutoFocus", "nzAutoClearSearchValue", "nzServerSearch", "nzDisabled", "nzOpen", "nzSelectOnTab", "nzBackdrop", "nzOptions", "nzShowArrow"], outputs: ["nzOnSearch", "nzScrollToBottom", "nzOpenChange", "nzBlur", "nzFocus"], exportAs: ["nzSelect"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$4.NzPaginationComponent, selector: "nz-pagination", inputs: ["nzShowTotal", "nzItemRender", "nzSize", "nzPageSizeOptions", "nzShowSizeChanger", "nzShowQuickJumper", "nzSimple", "nzDisabled", "nzResponsive", "nzHideOnSinglePage", "nzTotal", "nzPageIndex", "nzPageSize"], outputs: ["nzPageSizeChange", "nzPageIndexChange"], exportAs: ["nzPagination"] }, { kind: "directive", type: i5$1.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }] });
1833
2895
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomPaginatorComponent, decorators: [{
1834
2896
  type: Component,
1835
2897
  args: [{ selector: 'app-rd-pagination', template: "<div *ngIf=\"currentTotalSize > 0\" class=\"pagination-div\" nz-row>\n <div class=\"pagination-total\">\n <ng-container *ngIf=\"lang === 'en'\">\n {{ \"Total \" + totalSize + \" items\" }}\n </ng-container>\n <ng-container *ngIf=\"lang === 'zh'\">\n {{ \"\u5171 \" + totalSize + \" \u9805\" }}\n </ng-container>\n </div>\n <div class=\"pagination-cnt\" *ngIf=\"totalSize > 10\">\n <nz-pagination\n [nzTotal]=\"totalSize\"\n [nzPageIndex]=\"pageIndex\"\n [nzPageSize]=\"pageSize\"\n (nzPageIndexChange)=\"nzPageIndexChange($event)\"\n ></nz-pagination>\n </div>\n <div\n *ngIf=\"totalSize > 0 && totalSize > 10 && showLeftPageDorp\"\n class=\"pagination-select\"\n >\n <nz-select\n [(ngModel)]=\"pageSize\"\n class=\"pagination-select-size\"\n (ngModelChange)=\"nzPageSizeChange(pageSize)\"\n [nzDropdownClassName]=\"'paginator-select'\"\n >\n <nz-option [nzValue]=\"10\" nzLabel=\"10\"></nz-option>\n <nz-option [nzValue]=\"25\" nzLabel=\"25\"></nz-option>\n <nz-option [nzValue]=\"50\" nzLabel=\"50\"></nz-option>\n <nz-option [nzValue]=\"100\" nzLabel=\"100\"></nz-option>\n </nz-select>\n <span class=\"page-text\"\n >/\n <ng-container *ngIf=\"lang === 'en'\"> Page </ng-container>\n <ng-container *ngIf=\"lang === 'zh'\"> \u9801\u9762 </ng-container>\n </span>\n </div>\n</div>\n", styles: [":host::ng-deep .pagination-div{display:flex;justify-content:space-between;height:56px;padding:12px 0;border-top:1px solid var(--rd-grey-200)}:host::ng-deep .pagination-div .pagination-total{font-size:12px;font-weight:500;line-height:32px;color:var(--rd-copy-primary)}:host::ng-deep .pagination-div .pagination-select{display:flex;align-items:center}:host::ng-deep .pagination-div .pagination-select .page-text{margin-left:4px}:host::ng-deep .pagination-div .pagination-cnt{height:32px;line-height:32px;margin:0 auto;font-size:12px;font-weight:500;color:var(--rd-copy-primary)}:host::ng-deep .pagination-div .ant-select-item{padding-left:24px!important}:host::ng-deep .pagination-div .ant-select-item-option{padding-left:24px!important}:host::ng-deep .pagination-div .ant-table-pagination .ant-pagination{padding:16px 44px;position:absolute;right:0;margin-top:24px}:host::ng-deep .pagination-div .ant-pagination li{background:transparent;border:none}:host::ng-deep .pagination-div .ant-pagination-item-active{background:transparent;border:1px solid var(--rd-copy-brand)!important;border-radius:4px;color:var(--rd-copy-brand)!important}:host::ng-deep .pagination-div .ant-pagination-item{height:38px;margin-right:16px;min-width:32px;margin-top:3px}:host::ng-deep .pagination-div .ant-pagination-item a{font-size:12px;font-weight:500;color:var(--rd-grey-300);min-width:24px;outline:none}:host::ng-deep .pagination-div .ant-pagination-prev{margin-right:16px}:host::ng-deep .pagination-div .ant-pagination-item-active a{border-radius:4px;color:var(--rd-copy-brand)}:host::ng-deep .pagination-div .ant-select:not(.ant-select-customize-input) .ant-select-selector{border:unset;border-radius:8px;text-align:left;padding:0;box-shadow:none!important}:host::ng-deep .pagination-div .ant-pagination-item-link{border-radius:50%;color:var(--rd-copy-inverse);border:unset;outline:none;height:32px;width:32px;position:relative}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon{vertical-align:-5px}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon svg{width:18px;height:18px}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon-left{display:none}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon-right{display:none}:host::ng-deep .pagination-div .ant-pagination-item-link:hover{box-shadow:0 1px 4px #00000040;color:var(--rd-copy-inverse)!important}:host::ng-deep .pagination-div .ant-pagination-prev .ant-pagination-item-link:before{content:\"\";background:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjMzMzQgMi41TDYuNjY2NzUgMTBMMTMuMzMzNCAxNy41IiBzdHJva2U9IiMwMzA3MTIiIHN0cm9rZS13aWR0aD0iMS4yNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=) no-repeat center;background-size:55%;position:absolute;inset:0}:host::ng-deep .pagination-div .ant-pagination-next .ant-pagination-item-link:before{content:\"\";background:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTYuNjY2NzUgMTcuNUwxMy4zMzM0IDEwTDYuNjY2NzUgMi41IiBzdHJva2U9IiMwMzA3MTIiIHN0cm9rZS13aWR0aD0iMS4yNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=) no-repeat center;background-size:55%;position:absolute;inset:0}:host::ng-deep .pagination-div .ant-select-arrow{display:none}:host::ng-deep .pagination-div .ant-select-selection-item{text-align:center;font-weight:500}:host::ng-deep .pagination-div .ant-select-single .ant-select-selector .ant-select-selection-item{position:relative}:host::ng-deep .pagination-div .ant-select-single.ant-select-open .ant-select-selection-item{color:var(--rd-copy-primary)}:host::ng-deep .pagination-div a{text-decoration:none!important}:host::ng-deep .pagination-select-size{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:var(--rd-input-bg-default);border-radius:4px;border:1px solid var(--rd-input-fg-default);margin-right:16px;font-size:12px;font-weight:500;height:32px;color:var(--rd-copy-primary);padding:0 12px;min-width:70px}:host::ng-deep .pagination-select-size .ant-select-arrow{display:flex;margin-left:auto;color:var(--rd-copy-primary)}:host::ng-deep .pagination-select-size .anticon{font-size:12px}::ng-deep .paginator-select .ant-select-dropdown{border-radius:8px;font-weight:500;color:var(--rd-grey-300);padding-top:0;padding-bottom:0;text-align:center;box-shadow:0 1px 4px #0000001a}::ng-deep .paginator-select .ant-select-item-option-selected:not(.ant-select-item-option-disabled){background:var(--rd-cyan-50);font-weight:500;text-align:center;color:var(--rd-copy-primary)}::ng-deep .paginator-select .ant-select-item{font-size:12px;font-weight:500}::ng-deep .paginator-select .ant-select-selection-item{text-align:left!important}::ng-deep .pagination-div .ant-pagination-item-active a{color:var(--rd-copy-brand)!important}::ng-deep .ant-pagination{height:32px;line-height:32px}::ng-deep .pagination-div .ant-pagination-item{height:32px;line-height:32px}::ng-deep .pagination-div .ant-pagination-item{height:32px!important;margin-top:0!important;line-height:32px}\n"] }]
@@ -2003,12 +3065,12 @@ class RdNotificationComponent {
2003
3065
  this.notifications.clear();
2004
3066
  }
2005
3067
  }
2006
- RdNotificationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdNotificationComponent, deps: [{ token: i1$1.NzNotificationService }, { token: i2$3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
3068
+ RdNotificationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdNotificationComponent, deps: [{ token: i1$2.NzNotificationService }, { token: i2$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
2007
3069
  RdNotificationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RdNotificationComponent, selector: "app-rd-notification", viewQueries: [{ propertyName: "notificationTpl", first: true, predicate: ["notificationTpl"], descendants: true, static: true }, { propertyName: "closeTpl", first: true, predicate: ["closeTpl"], descendants: true, static: true }], ngImport: i0, template: "<ng-template #notificationTpl let-data=\"data\">\n <div class=\"rd-custom-notification\"></div>\n <div\n class=\"rd-custom-notification-icon\"\n [class]=\"\n data.type === 'warn'\n ? 'rd-custom-warn-background'\n : data.type === 'error'\n ? 'rd-custom-error-background'\n : ''\n \"\n >\n <img\n [hidden]=\"data.type !== 'success'\"\n src=\"assets/img/icon/success-tip.svg\"\n />\n <img [hidden]=\"data.type !== 'warn'\" src=\"assets/img/icon/warm-tip.svg\" />\n <img [hidden]=\"data.type !== 'error'\" src=\"assets/img/icon/error-tip.svg\" />\n </div>\n <div class=\"rd-custom-notification-container\">\n <div class=\"rd-custom-notification-title\">{{ data.title }}</div>\n <div\n class=\"rd-custom-notification-desc\"\n [innerHTML]=\"getDesc(data.desc)\"\n ></div>\n <div\n *ngIf=\"data.actionDesc\"\n class=\"rd-custom-notification-link\"\n (click)=\"onClick(data)\"\n >\n {{ data.actionDesc }}\n </div>\n </div>\n</ng-template>\n\n<ng-template #closeTpl>\n <div class=\"rd-custom-notification-close\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n d=\"M3.40039 3.3999L8.00039 7.9999M12.6004 12.5999L8.00039 7.9999M8.00039 7.9999L12.6004 3.3999L3.40039 12.5999\"\n stroke=\"var(--rd-copy-primary)\"\n stroke-width=\"1.36\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n </div>\n</ng-template>\n", styles: [".rd-custom-notification-container{padding:12px 40px 12px 12px}.rd-custom-notification-container .rd-custom-notification-title{font-size:12px;font-weight:600}.rd-custom-notification-container .rd-custom-notification-desc{font-size:12px;font-weight:500;margin-top:4px}.rd-custom-notification-container .rd-custom-notification-link{color:var(--rd-copy-brand);font-size:13px;font-style:normal;font-weight:600;line-height:16px;cursor:pointer;margin-top:12px;padding:0 2px}.rd-custom-warn-background{background-color:var(--rd-toast-accent-warning)!important}.rd-custom-error-background{background-color:var(--rd-toast-accent-danger)!important}.rd-custom-notification-icon{display:flex;width:40px;padding:16px 12px;justify-content:center;align-items:center;flex-shrink:0;align-self:stretch;background-color:var(--rd-toast-accent-success)}.rd-custom-notification-icon svg{flex-shrink:0;width:20px;height:20px}.rd-custom-notification-close{padding:16px 12px}.rd-custom-notification-close svg{width:16px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2008
3070
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdNotificationComponent, decorators: [{
2009
3071
  type: Component,
2010
3072
  args: [{ selector: 'app-rd-notification', template: "<ng-template #notificationTpl let-data=\"data\">\n <div class=\"rd-custom-notification\"></div>\n <div\n class=\"rd-custom-notification-icon\"\n [class]=\"\n data.type === 'warn'\n ? 'rd-custom-warn-background'\n : data.type === 'error'\n ? 'rd-custom-error-background'\n : ''\n \"\n >\n <img\n [hidden]=\"data.type !== 'success'\"\n src=\"assets/img/icon/success-tip.svg\"\n />\n <img [hidden]=\"data.type !== 'warn'\" src=\"assets/img/icon/warm-tip.svg\" />\n <img [hidden]=\"data.type !== 'error'\" src=\"assets/img/icon/error-tip.svg\" />\n </div>\n <div class=\"rd-custom-notification-container\">\n <div class=\"rd-custom-notification-title\">{{ data.title }}</div>\n <div\n class=\"rd-custom-notification-desc\"\n [innerHTML]=\"getDesc(data.desc)\"\n ></div>\n <div\n *ngIf=\"data.actionDesc\"\n class=\"rd-custom-notification-link\"\n (click)=\"onClick(data)\"\n >\n {{ data.actionDesc }}\n </div>\n </div>\n</ng-template>\n\n<ng-template #closeTpl>\n <div class=\"rd-custom-notification-close\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n d=\"M3.40039 3.3999L8.00039 7.9999M12.6004 12.5999L8.00039 7.9999M8.00039 7.9999L12.6004 3.3999L3.40039 12.5999\"\n stroke=\"var(--rd-copy-primary)\"\n stroke-width=\"1.36\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n </div>\n</ng-template>\n", styles: [".rd-custom-notification-container{padding:12px 40px 12px 12px}.rd-custom-notification-container .rd-custom-notification-title{font-size:12px;font-weight:600}.rd-custom-notification-container .rd-custom-notification-desc{font-size:12px;font-weight:500;margin-top:4px}.rd-custom-notification-container .rd-custom-notification-link{color:var(--rd-copy-brand);font-size:13px;font-style:normal;font-weight:600;line-height:16px;cursor:pointer;margin-top:12px;padding:0 2px}.rd-custom-warn-background{background-color:var(--rd-toast-accent-warning)!important}.rd-custom-error-background{background-color:var(--rd-toast-accent-danger)!important}.rd-custom-notification-icon{display:flex;width:40px;padding:16px 12px;justify-content:center;align-items:center;flex-shrink:0;align-self:stretch;background-color:var(--rd-toast-accent-success)}.rd-custom-notification-icon svg{flex-shrink:0;width:20px;height:20px}.rd-custom-notification-close{padding:16px 12px}.rd-custom-notification-close svg{width:16px}\n"] }]
2011
- }], ctorParameters: function () { return [{ type: i1$1.NzNotificationService }, { type: i2$3.DomSanitizer }]; }, propDecorators: { notificationTpl: [{
3073
+ }], ctorParameters: function () { return [{ type: i1$2.NzNotificationService }, { type: i2$2.DomSanitizer }]; }, propDecorators: { notificationTpl: [{
2012
3074
  type: ViewChild,
2013
3075
  args: ['notificationTpl', { static: true }]
2014
3076
  }], closeTpl: [{
@@ -2335,5 +3397,5 @@ function DebounceSearch(milliseconds = 300, queryMinLength = 0, queryMaxLength)
2335
3397
  * Generated bundle index. Do not edit.
2336
3398
  */
2337
3399
 
2338
- export { BigNumberPipe, CustomCheckboxComponent, CustomDateComponent, CustomInputAmountComponent, CustomInputComponent, CustomPaginatorComponent, CustomRadioComponent, CustomSelectComponent, CustomTextareaComponent, DebounceSearch, FilterTypeEnum, HeaderStepComponent, PipesModule, PureSelectTokenComponent, RdCheckboxModule, RdDateModule, RdFilterComponent, RdFilterModule, RdFilterSelectComponent, RdFilterSelectModule, RdHeaderStepModule, RdInputAmountModule, RdInputModule, RdNotificationComponent, RdNotificationModule, RdNotificationService, RdPaginatorModule, RdPureSelectTokenModule, RdRadioModule, RdSelectModule, RdStatusFieldModule, RdTextareaModule, SearchListBaseComponent, StatusFieldComponent };
3400
+ export { BigNumberPipe, CustomCheckboxComponent, CustomDateComponent, CustomInputAmountComponent, CustomInputComponent, CustomPaginatorComponent, CustomRadioComponent, CustomTextareaComponent, DebounceSearch, FilterTypeEnum, HeaderStepComponent, IndustryCascaderComponent, IndustryCascaderModule, PipesModule, PureSelectTokenComponent, RdCheckboxModule, RdDateModule, RdFilterComponent, RdFilterModule, RdFilterSelectComponent, RdFilterSelectModule, RdHeaderStepModule, RdInputAmountModule, RdInputModule, RdNotificationComponent, RdNotificationModule, RdNotificationService, RdPaginatorModule, RdPureSelectTokenModule, RdRadioModule, RdSelectComponent, RdSelectModule, RdStatusFieldModule, RdTextareaModule, SearchListBaseComponent, StatusFieldComponent };
2339
3401
  //# sourceMappingURL=rd-outer-component.mjs.map