@dignite-ng/expand.dynamic-form 3.0.0-rc.7 → 3.0.0-rc.8

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 (29) hide show
  1. package/esm2022/lib/components/dynamic/dynamic-config.component.mjs +11 -0
  2. package/esm2022/lib/components/dynamic/dynamic-control.component.mjs +11 -0
  3. package/esm2022/lib/components/dynamic/dynamic-view.component.mjs +57 -0
  4. package/esm2022/lib/components/dynamic/dynamic.component.mjs +1 -1
  5. package/esm2022/lib/components/dynamic/index.mjs +4 -1
  6. package/esm2022/lib/components/form/date-edit/date-edit-view.component.mjs +40 -0
  7. package/esm2022/lib/components/form/form-control-group.mjs +11 -6
  8. package/esm2022/lib/components/form/numeric-edit/numeric-edit-view.component.mjs +39 -0
  9. package/esm2022/lib/components/form/select/select-control.component.mjs +3 -3
  10. package/esm2022/lib/components/form/select/select-view.component.mjs +44 -0
  11. package/esm2022/lib/components/form/switch/switch-view.component.mjs +40 -0
  12. package/esm2022/lib/components/form/text-edit/text-edit-view.component.mjs +39 -0
  13. package/esm2022/lib/components/form/text-edit/text-edit.component.mjs +3 -3
  14. package/esm2022/lib/dynamic-form.module.mjs +33 -3
  15. package/esm2022/lib/services/form-control.service.mjs +33 -0
  16. package/fesm2022/dignite-ng-expand.dynamic-form.mjs +321 -12
  17. package/fesm2022/dignite-ng-expand.dynamic-form.mjs.map +1 -1
  18. package/lib/components/dynamic/dynamic-config.component.d.ts +5 -0
  19. package/lib/components/dynamic/dynamic-control.component.d.ts +5 -0
  20. package/lib/components/dynamic/dynamic-view.component.d.ts +24 -0
  21. package/lib/components/dynamic/index.d.ts +3 -0
  22. package/lib/components/form/date-edit/date-edit-view.component.d.ts +17 -0
  23. package/lib/components/form/numeric-edit/numeric-edit-view.component.d.ts +17 -0
  24. package/lib/components/form/select/select-view.component.d.ts +17 -0
  25. package/lib/components/form/switch/switch-view.component.d.ts +17 -0
  26. package/lib/components/form/text-edit/text-edit-view.component.d.ts +17 -0
  27. package/lib/dynamic-form.module.d.ts +14 -6
  28. package/lib/services/form-control.service.d.ts +9 -0
  29. package/package.json +1 -1
@@ -148,14 +148,14 @@ class TextEditComponent {
148
148
  ValidatorsArray.push(Validators.maxLength(this._fields.field.formConfiguration['TextEdit.CharLimit']));
149
149
  }
150
150
  let newControl = this.fb.control(this._selected, ValidatorsArray);
151
- this.extraProperties.setControl(this._fields.field.name, newControl);
151
+ this.extraProperties?.setControl(this._fields.field.name, newControl);
152
152
  resolve(true);
153
153
  });
154
154
  }
155
155
  ngOnDestroy() {
156
156
  //Called once, before the instance is destroyed.
157
157
  //Add 'implements OnDestroy' to the class.
158
- this.extraProperties.removeControl(this._fields.field.name);
158
+ this.extraProperties?.removeControl(this._fields.field.name);
159
159
  }
160
160
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: TextEditComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
161
161
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.5", type: TextEditComponent, selector: "df-text-edit", inputs: { entity: "entity", fields: "fields", parentFiledName: "parentFiledName", selected: "selected" }, viewQueries: [{ propertyName: "submitclick", first: true, predicate: ["submitclick"], descendants: true, static: true }], ngImport: i0, template: "<form [formGroup]=\"_entity\">\n <div [formGroupName]=\"_parentFiledName\">\n <div class=\"mb-3\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <ng-container *ngIf=\"_fields.field.formConfiguration['TextEdit.Mode'] ===_TextEditMode.SingleLine\">\n <input type=\"text\" class=\"form-control\" formControlName=\"{{_fields.field.name}}\"\n [placeholder]=\"_fields.field.formConfiguration['TextEdit.Placeholder']\" />\n </ng-container>\n <ng-container *ngIf=\"_fields.field.formConfiguration['TextEdit.Mode'] === _TextEditMode.MultipleLine\">\n <textarea class=\"form-control\" formControlName=\"{{_fields.field.name}}\"\n [placeholder]=\"_fields.field.formConfiguration['TextEdit.Placeholder']\" rows=\"3\"></textarea>\n </ng-container>\n <small class=\"form-text text-muted d-block\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</small>\n </div>\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i3.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i3.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }] }); }
@@ -697,6 +697,78 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
697
697
  args: ['submitclick', { static: true }]
698
698
  }] } });
699
699
 
700
+ class DateEditViewComponent {
701
+ constructor() {
702
+ /**展示则内容 */
703
+ this.showValue = '';
704
+ /**是否显示再列表 */
705
+ this.showInList = false;
706
+ /**表单控件Value */
707
+ this._value = '';
708
+ }
709
+ set value(v) {
710
+ this._value = v;
711
+ }
712
+ async ngAfterContentInit() {
713
+ //Called after ngOnInit when the component's or directive's content has been initialized.
714
+ //Add 'implements AfterContentInit' to the class.
715
+ let valueOptions = this._value;
716
+ if (this.type && valueOptions) {
717
+ this.showValue = valueOptions;
718
+ }
719
+ }
720
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: DateEditViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
721
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.5", type: DateEditViewComponent, selector: "df-date-edit-view", inputs: { showInList: "showInList", fields: "fields", type: "type", value: "value" }, ngImport: i0, template: "@if(showInList){\r\n{{showValue|shortDateTime}}\r\n} @else{\r\n<div class=\"mb-3\">\r\n <label class=\"form-label\" *ngIf=\"fields.displayName\">{{ fields.displayName }}</label>\r\n <div>\r\n {{showValue|shortDateTime}}\r\n </div>\r\n</div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.ShortDateTimePipe, name: "shortDateTime" }] }); }
722
+ }
723
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: DateEditViewComponent, decorators: [{
724
+ type: Component,
725
+ args: [{ selector: 'df-date-edit-view', template: "@if(showInList){\r\n{{showValue|shortDateTime}}\r\n} @else{\r\n<div class=\"mb-3\">\r\n <label class=\"form-label\" *ngIf=\"fields.displayName\">{{ fields.displayName }}</label>\r\n <div>\r\n {{showValue|shortDateTime}}\r\n </div>\r\n</div>\r\n}" }]
726
+ }], propDecorators: { showInList: [{
727
+ type: Input
728
+ }], fields: [{
729
+ type: Input
730
+ }], type: [{
731
+ type: Input
732
+ }], value: [{
733
+ type: Input
734
+ }] } });
735
+
736
+ class NumericEditViewComponent {
737
+ constructor() {
738
+ /**展示则内容 */
739
+ this.showValue = '';
740
+ /**是否显示再列表 */
741
+ this.showInList = false;
742
+ /**表单控件Value */
743
+ this._value = '';
744
+ }
745
+ set value(v) {
746
+ this._value = v;
747
+ }
748
+ async ngAfterContentInit() {
749
+ //Called after ngOnInit when the component's or directive's content has been initialized.
750
+ //Add 'implements AfterContentInit' to the class.
751
+ let valueOptions = this._value;
752
+ if (this.type && valueOptions) {
753
+ this.showValue = valueOptions;
754
+ }
755
+ }
756
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: NumericEditViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
757
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.5", type: NumericEditViewComponent, selector: "df-numeric-edit-view", inputs: { showInList: "showInList", fields: "fields", type: "type", value: "value" }, ngImport: i0, template: "@if(showInList){\r\n{{showValue}}\r\n} @else{\r\n<div class=\"mb-3\">\r\n <label class=\"form-label\" *ngIf=\"fields.displayName\">{{ fields.displayName }}</label>\r\n <div>\r\n {{showValue}}\r\n </div>\r\n</div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
758
+ }
759
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: NumericEditViewComponent, decorators: [{
760
+ type: Component,
761
+ args: [{ selector: 'df-numeric-edit-view', template: "@if(showInList){\r\n{{showValue}}\r\n} @else{\r\n<div class=\"mb-3\">\r\n <label class=\"form-label\" *ngIf=\"fields.displayName\">{{ fields.displayName }}</label>\r\n <div>\r\n {{showValue}}\r\n </div>\r\n</div>\r\n}" }]
762
+ }], propDecorators: { showInList: [{
763
+ type: Input
764
+ }], fields: [{
765
+ type: Input
766
+ }], type: [{
767
+ type: Input
768
+ }], value: [{
769
+ type: Input
770
+ }] } });
771
+
700
772
  class SelectConfig {
701
773
  constructor(data) {
702
774
  /**空值文本 */
@@ -940,11 +1012,11 @@ class SelectControlComponent {
940
1012
  this.extraProperties.removeControl(this._fields.field.name);
941
1013
  }
942
1014
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: SelectControlComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
943
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.5", type: SelectControlComponent, selector: "df-select-control", inputs: { fields: "fields", parentFiledName: "parentFiledName", selected: "selected", entity: "entity" }, viewQueries: [{ propertyName: "submitclick", first: true, predicate: ["submitclick"], descendants: true, static: true }], ngImport: i0, template: "<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\" class=\"selectcontrol\">\n <div class=\"mb-3\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <ng-container *ngIf=\"formConfiguration['Select.Multiple']; else elseTemplate\">\n <!-- <select class=\"form-select\" multiple formControlName=\"{{_fields.field.name}}\">\n <ng-container *ngFor=\"let item of _fields.field.formConfiguration['Select.Options'];let i =index\">\n <option [value]=\"item.Value\">{{item.Text}}</option>\n </ng-container>\n </select> -->\n <nz-select class=\"form-select form-select-multiple\" [nzMaxTagCount]=\"1\"\n nzShowSearch nzMode=\"multiple\"\n formControlName=\"{{_fields.field.name}}\">\n <nz-option *ngFor=\"let item of _fields.field.formConfiguration['Select.Options']\"\n [nzLabel]=\"item.Text\" [nzValue]=\"item.Value\"></nz-option>\n </nz-select>\n </ng-container>\n <ng-template #elseTemplate>\n <select class=\"form-select\" [multiple]=\"false\" formControlName=\"{{_fields.field.name}}\">\n <option [value]=\"\">{{formConfiguration['Select.NullText']}}</option>\n <ng-container *ngFor=\"let item of _fields.field.formConfiguration['Select.Options'];let i =index\">\n <option [value]=\"item.Value\">{{item.Text}}</option>\n </ng-container>\n </select>\n </ng-template>\n <small class=\"form-text text-muted d-block\"\n *ngIf=\"_fields.field.description\">{{_fields.field.description}}</small>\n </div>\n\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>", styles: ["::ng-deep .selectcontrol nz-select{width:100%}::ng-deep .selectcontrol nz-select .ant-select-selector{background:transparent!important;border:none!important;padding:.275rem 1.25rem!important;box-shadow:none!important;height:auto!important}::ng-deep .selectcontrol nz-select .anticon-search,::ng-deep .selectcontrol nz-select .anticon-down{display:none}::ng-deep .selectcontrol .ant-select-multiple .ant-select-selection-item{max-width:40%!important}::ng-deep .was-validated .form-select-multiple{border-color:#4fbf67;padding-right:calc(1.5em + 1.35rem);background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%234fbf67' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");background-repeat:no-repeat;background-position:right calc(.375em + .3375rem) center;background-size:calc(.75em + .675rem) calc(.75em + .675rem)}\n"], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.SelectMultipleControlValueAccessor, selector: "select[multiple][formControlName],select[multiple][formControl],select[multiple][ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i3.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i3.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i4.NzOptionComponent, selector: "nz-option", inputs: ["nzTitle", "nzLabel", "nzValue", "nzKey", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i4.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"] }] }); }
1015
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.5", type: SelectControlComponent, selector: "df-select-control", inputs: { fields: "fields", parentFiledName: "parentFiledName", selected: "selected", entity: "entity" }, viewQueries: [{ propertyName: "submitclick", first: true, predicate: ["submitclick"], descendants: true, static: true }], ngImport: i0, template: "<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\" class=\"selectcontrol\">\n <div class=\"mb-3\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <ng-container *ngIf=\"formConfiguration['Select.Multiple']; else elseTemplate\">\n <nz-select class=\"form-select form-select-multiple\" [nzMaxTagCount]=\"1\"\n nzShowSearch nzMode=\"multiple\"\n formControlName=\"{{_fields.field.name}}\">\n <nz-option *ngFor=\"let item of _fields.field.formConfiguration['Select.Options']\"\n [nzLabel]=\"item.Text\" [nzValue]=\"item.Value\"></nz-option>\n </nz-select>\n </ng-container>\n <ng-template #elseTemplate>\n <select class=\"form-select\" [multiple]=\"false\" formControlName=\"{{_fields.field.name}}\">\n <option [value]=\"\">{{formConfiguration['Select.NullText']}}</option>\n <ng-container *ngFor=\"let item of _fields.field.formConfiguration['Select.Options'];let i =index\">\n <option [value]=\"item.Value\">{{item.Text}}</option>\n </ng-container>\n </select>\n </ng-template>\n <small class=\"form-text text-muted d-block\"\n *ngIf=\"_fields.field.description\">{{_fields.field.description}}</small>\n </div>\n\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>", styles: ["::ng-deep .selectcontrol nz-select{width:100%}::ng-deep .selectcontrol nz-select .ant-select-selector{background:transparent!important;border:none!important;padding:.275rem 1.25rem!important;box-shadow:none!important;height:auto!important}::ng-deep .selectcontrol nz-select .anticon-search,::ng-deep .selectcontrol nz-select .anticon-down{display:none}::ng-deep .selectcontrol .ant-select-multiple .ant-select-selection-item{max-width:40%!important}::ng-deep .was-validated .form-select-multiple{border-color:#4fbf67;padding-right:calc(1.5em + 1.35rem);background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%234fbf67' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");background-repeat:no-repeat;background-position:right calc(.375em + .3375rem) center;background-size:calc(.75em + .675rem) calc(.75em + .675rem)}\n"], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.SelectMultipleControlValueAccessor, selector: "select[multiple][formControlName],select[multiple][formControl],select[multiple][ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i3.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i3.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i4.NzOptionComponent, selector: "nz-option", inputs: ["nzTitle", "nzLabel", "nzValue", "nzKey", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i4.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"] }] }); }
944
1016
  }
945
1017
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: SelectControlComponent, decorators: [{
946
1018
  type: Component,
947
- args: [{ selector: 'df-select-control', template: "<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\" class=\"selectcontrol\">\n <div class=\"mb-3\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <ng-container *ngIf=\"formConfiguration['Select.Multiple']; else elseTemplate\">\n <!-- <select class=\"form-select\" multiple formControlName=\"{{_fields.field.name}}\">\n <ng-container *ngFor=\"let item of _fields.field.formConfiguration['Select.Options'];let i =index\">\n <option [value]=\"item.Value\">{{item.Text}}</option>\n </ng-container>\n </select> -->\n <nz-select class=\"form-select form-select-multiple\" [nzMaxTagCount]=\"1\"\n nzShowSearch nzMode=\"multiple\"\n formControlName=\"{{_fields.field.name}}\">\n <nz-option *ngFor=\"let item of _fields.field.formConfiguration['Select.Options']\"\n [nzLabel]=\"item.Text\" [nzValue]=\"item.Value\"></nz-option>\n </nz-select>\n </ng-container>\n <ng-template #elseTemplate>\n <select class=\"form-select\" [multiple]=\"false\" formControlName=\"{{_fields.field.name}}\">\n <option [value]=\"\">{{formConfiguration['Select.NullText']}}</option>\n <ng-container *ngFor=\"let item of _fields.field.formConfiguration['Select.Options'];let i =index\">\n <option [value]=\"item.Value\">{{item.Text}}</option>\n </ng-container>\n </select>\n </ng-template>\n <small class=\"form-text text-muted d-block\"\n *ngIf=\"_fields.field.description\">{{_fields.field.description}}</small>\n </div>\n\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>", styles: ["::ng-deep .selectcontrol nz-select{width:100%}::ng-deep .selectcontrol nz-select .ant-select-selector{background:transparent!important;border:none!important;padding:.275rem 1.25rem!important;box-shadow:none!important;height:auto!important}::ng-deep .selectcontrol nz-select .anticon-search,::ng-deep .selectcontrol nz-select .anticon-down{display:none}::ng-deep .selectcontrol .ant-select-multiple .ant-select-selection-item{max-width:40%!important}::ng-deep .was-validated .form-select-multiple{border-color:#4fbf67;padding-right:calc(1.5em + 1.35rem);background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%234fbf67' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");background-repeat:no-repeat;background-position:right calc(.375em + .3375rem) center;background-size:calc(.75em + .675rem) calc(.75em + .675rem)}\n"] }]
1019
+ args: [{ selector: 'df-select-control', template: "<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\" class=\"selectcontrol\">\n <div class=\"mb-3\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <ng-container *ngIf=\"formConfiguration['Select.Multiple']; else elseTemplate\">\n <nz-select class=\"form-select form-select-multiple\" [nzMaxTagCount]=\"1\"\n nzShowSearch nzMode=\"multiple\"\n formControlName=\"{{_fields.field.name}}\">\n <nz-option *ngFor=\"let item of _fields.field.formConfiguration['Select.Options']\"\n [nzLabel]=\"item.Text\" [nzValue]=\"item.Value\"></nz-option>\n </nz-select>\n </ng-container>\n <ng-template #elseTemplate>\n <select class=\"form-select\" [multiple]=\"false\" formControlName=\"{{_fields.field.name}}\">\n <option [value]=\"\">{{formConfiguration['Select.NullText']}}</option>\n <ng-container *ngFor=\"let item of _fields.field.formConfiguration['Select.Options'];let i =index\">\n <option [value]=\"item.Value\">{{item.Text}}</option>\n </ng-container>\n </select>\n </ng-template>\n <small class=\"form-text text-muted d-block\"\n *ngIf=\"_fields.field.description\">{{_fields.field.description}}</small>\n </div>\n\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>", styles: ["::ng-deep .selectcontrol nz-select{width:100%}::ng-deep .selectcontrol nz-select .ant-select-selector{background:transparent!important;border:none!important;padding:.275rem 1.25rem!important;box-shadow:none!important;height:auto!important}::ng-deep .selectcontrol nz-select .anticon-search,::ng-deep .selectcontrol nz-select .anticon-down{display:none}::ng-deep .selectcontrol .ant-select-multiple .ant-select-selection-item{max-width:40%!important}::ng-deep .was-validated .form-select-multiple{border-color:#4fbf67;padding-right:calc(1.5em + 1.35rem);background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%234fbf67' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");background-repeat:no-repeat;background-position:right calc(.375em + .3375rem) center;background-size:calc(.75em + .675rem) calc(.75em + .675rem)}\n"] }]
948
1020
  }], ctorParameters: () => [{ type: i1.FormBuilder }], propDecorators: { fields: [{
949
1021
  type: Input
950
1022
  }], parentFiledName: [{
@@ -958,6 +1030,119 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
958
1030
  args: ['submitclick', { static: true }]
959
1031
  }] } });
960
1032
 
1033
+ class SelectViewComponent {
1034
+ constructor() {
1035
+ /**展示则内容 */
1036
+ this.showValue = '';
1037
+ /**是否显示再列表 */
1038
+ this.showInList = false;
1039
+ /**表单控件Value */
1040
+ this._value = '';
1041
+ }
1042
+ set value(v) {
1043
+ this._value = v;
1044
+ }
1045
+ async ngAfterContentInit() {
1046
+ //Called after ngOnInit when the component's or directive's content has been initialized.
1047
+ //Add 'implements AfterContentInit' to the class.
1048
+ let valueOptions = this._value;
1049
+ if (this.type && valueOptions) {
1050
+ if (Array.isArray(valueOptions)) {
1051
+ this.showValue = valueOptions.join(',');
1052
+ }
1053
+ else {
1054
+ this.showValue = valueOptions;
1055
+ }
1056
+ }
1057
+ }
1058
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: SelectViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1059
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.5", type: SelectViewComponent, selector: "df-select-view", inputs: { showInList: "showInList", fields: "fields", type: "type", value: "value" }, ngImport: i0, template: "@if(showInList){\r\n{{showValue}}\r\n} @else{\r\n<div class=\"mb-3\">\r\n <label class=\"form-label\" *ngIf=\"fields.displayName\">{{ fields.displayName }}</label>\r\n <div>\r\n {{showValue}}\r\n </div>\r\n</div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
1060
+ }
1061
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: SelectViewComponent, decorators: [{
1062
+ type: Component,
1063
+ args: [{ selector: 'df-select-view', template: "@if(showInList){\r\n{{showValue}}\r\n} @else{\r\n<div class=\"mb-3\">\r\n <label class=\"form-label\" *ngIf=\"fields.displayName\">{{ fields.displayName }}</label>\r\n <div>\r\n {{showValue}}\r\n </div>\r\n</div>\r\n}" }]
1064
+ }], propDecorators: { showInList: [{
1065
+ type: Input
1066
+ }], fields: [{
1067
+ type: Input
1068
+ }], type: [{
1069
+ type: Input
1070
+ }], value: [{
1071
+ type: Input
1072
+ }] } });
1073
+
1074
+ class SwitchViewComponent {
1075
+ constructor() {
1076
+ /**展示则内容 */
1077
+ this.showValue = '';
1078
+ /**是否显示再列表 */
1079
+ this.showInList = false;
1080
+ /**表单控件Value */
1081
+ this._value = '';
1082
+ }
1083
+ set value(v) {
1084
+ this._value = v;
1085
+ }
1086
+ async ngAfterContentInit() {
1087
+ //Called after ngOnInit when the component's or directive's content has been initialized.
1088
+ //Add 'implements AfterContentInit' to the class.
1089
+ let valueOptions = this._value;
1090
+ if (this.type && valueOptions) {
1091
+ this.showValue = valueOptions;
1092
+ }
1093
+ }
1094
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: SwitchViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1095
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.5", type: SwitchViewComponent, selector: "df-switch-view", inputs: { showInList: "showInList", fields: "fields", type: "type", value: "value" }, ngImport: i0, template: "@if(showInList){\r\n {{'AbpUi::'+(showValue ? 'Yes' : 'No') | abpLocalization}}\r\n} @else{\r\n<div class=\"mb-3\">\r\n <label class=\"form-label\" *ngIf=\"fields.displayName\">{{ fields.displayName }}</label>\r\n <div>\r\n {{'AbpUi::'+(showValue ? 'Yes' : 'No') | abpLocalization}}\r\n </div>\r\n</div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.LocalizationPipe, name: "abpLocalization" }] }); }
1096
+ }
1097
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: SwitchViewComponent, decorators: [{
1098
+ type: Component,
1099
+ args: [{ selector: 'df-switch-view', template: "@if(showInList){\r\n {{'AbpUi::'+(showValue ? 'Yes' : 'No') | abpLocalization}}\r\n} @else{\r\n<div class=\"mb-3\">\r\n <label class=\"form-label\" *ngIf=\"fields.displayName\">{{ fields.displayName }}</label>\r\n <div>\r\n {{'AbpUi::'+(showValue ? 'Yes' : 'No') | abpLocalization}}\r\n </div>\r\n</div>\r\n}" }]
1100
+ }], propDecorators: { showInList: [{
1101
+ type: Input
1102
+ }], fields: [{
1103
+ type: Input
1104
+ }], type: [{
1105
+ type: Input
1106
+ }], value: [{
1107
+ type: Input
1108
+ }] } });
1109
+
1110
+ class TextEditViewComponent {
1111
+ constructor() {
1112
+ /**展示则内容 */
1113
+ this.showValue = '';
1114
+ /**是否显示再列表 */
1115
+ this.showInList = false;
1116
+ /**表单控件Value */
1117
+ this._value = '';
1118
+ }
1119
+ set value(v) {
1120
+ this._value = v;
1121
+ }
1122
+ async ngAfterContentInit() {
1123
+ //Called after ngOnInit when the component's or directive's content has been initialized.
1124
+ //Add 'implements AfterContentInit' to the class.
1125
+ let valueOptions = this._value;
1126
+ if (this.type && valueOptions) {
1127
+ this.showValue = valueOptions;
1128
+ }
1129
+ }
1130
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: TextEditViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1131
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.5", type: TextEditViewComponent, selector: "df-text-edit-view", inputs: { showInList: "showInList", fields: "fields", type: "type", value: "value" }, ngImport: i0, template: "@if(showInList){\r\n{{showValue}}\r\n} @else{\r\n<div class=\"mb-3\">\r\n <label class=\"form-label\" *ngIf=\"fields.displayName\">{{ fields.displayName }}</label>\r\n <div>\r\n {{showValue}}\r\n </div>\r\n</div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
1132
+ }
1133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: TextEditViewComponent, decorators: [{
1134
+ type: Component,
1135
+ args: [{ selector: 'df-text-edit-view', template: "@if(showInList){\r\n{{showValue}}\r\n} @else{\r\n<div class=\"mb-3\">\r\n <label class=\"form-label\" *ngIf=\"fields.displayName\">{{ fields.displayName }}</label>\r\n <div>\r\n {{showValue}}\r\n </div>\r\n</div>\r\n}" }]
1136
+ }], propDecorators: { showInList: [{
1137
+ type: Input
1138
+ }], fields: [{
1139
+ type: Input
1140
+ }], type: [{
1141
+ type: Input
1142
+ }], value: [{
1143
+ type: Input
1144
+ }] } });
1145
+
961
1146
  // import { CkEditorConfigComponent, CkEditorControlComponent } from "./ck-editor";
962
1147
  /**
963
1148
  * 表单控件分组-包含配置,控件,显示的数组
@@ -968,35 +1153,35 @@ const FieldControlGroup = [
968
1153
  name: 'TextEdit',
969
1154
  fieldConfigComponent: TextEditConfigComponent,
970
1155
  fieldComponent: TextEditComponent,
971
- // fieldViewComponent:TextBoxViewComponent,
1156
+ fieldViewComponent: TextEditViewComponent,
972
1157
  },
973
1158
  {
974
1159
  displayName: '开关',
975
1160
  name: 'Switch',
976
1161
  fieldConfigComponent: SwitchConfigComponent,
977
1162
  fieldComponent: SwitchControlComponent,
978
- // fieldViewComponent:TextBoxViewComponent,
1163
+ fieldViewComponent: SwitchViewComponent,
979
1164
  },
980
1165
  {
981
1166
  displayName: '选择',
982
1167
  name: 'Select',
983
1168
  fieldConfigComponent: SelectConfigComponent,
984
1169
  fieldComponent: SelectControlComponent,
985
- // fieldViewComponent:TextBoxViewComponent,
1170
+ fieldViewComponent: SelectViewComponent,
986
1171
  },
987
1172
  {
988
1173
  displayName: '数字',
989
1174
  name: 'NumericEdit',
990
1175
  fieldConfigComponent: NumbericEditConfigComponent,
991
1176
  fieldComponent: NumbericEditControlComponent,
992
- // fieldViewComponent:TextBoxViewComponent,
1177
+ fieldViewComponent: NumericEditViewComponent,
993
1178
  },
994
1179
  {
995
1180
  displayName: '日期',
996
1181
  name: 'DateEdit',
997
1182
  fieldConfigComponent: DateEditConfigComponent,
998
1183
  fieldComponent: DateEditControlComponent,
999
- // fieldViewComponent:TextBoxViewComponent,
1184
+ fieldViewComponent: DateEditViewComponent,
1000
1185
  },
1001
1186
  ];
1002
1187
  function AddFieldControlGroup(array = []) {
@@ -1114,6 +1299,108 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
1114
1299
  args: ['FormComponentsRef', { read: ViewContainerRef, static: true }]
1115
1300
  }] } });
1116
1301
 
1302
+ class FormControlService {
1303
+ constructor(mergedConfig) {
1304
+ this.mergedConfig = mergedConfig;
1305
+ this._FieldControlGroup = FieldControlGroup;
1306
+ }
1307
+ AddFieldControlGroup() {
1308
+ let array = this.mergedConfig;
1309
+ for (const element of array) {
1310
+ let find = FieldControlGroup.find(control => {
1311
+ return control.name === element.name;
1312
+ });
1313
+ if (!find) {
1314
+ FieldControlGroup.push(element);
1315
+ }
1316
+ }
1317
+ return FieldControlGroup;
1318
+ }
1319
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: FormControlService, deps: [{ token: 'MERGED_FORM_CONFIG' }], target: i0.ɵɵFactoryTarget.Injectable }); }
1320
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: FormControlService, providedIn: 'root' }); }
1321
+ }
1322
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: FormControlService, decorators: [{
1323
+ type: Injectable,
1324
+ args: [{
1325
+ providedIn: 'root',
1326
+ }]
1327
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
1328
+ type: Inject,
1329
+ args: ['MERGED_FORM_CONFIG']
1330
+ }] }] });
1331
+
1332
+ class DynamicViewComponent {
1333
+ constructor(_FormControlService) {
1334
+ this._FormControlService = _FormControlService;
1335
+ /**是否显示再列表 */
1336
+ this.showInList = false;
1337
+ /**表单控件Value */
1338
+ this._value = '';
1339
+ }
1340
+ set value(v) {
1341
+ this._value = v;
1342
+ // if(this._value) this.dataLoaded();
1343
+ }
1344
+ ngAfterContentInit() {
1345
+ //Called after ngOnInit when the component's or directive's content has been initialized.
1346
+ //Add 'implements AfterContentInit' to the class.
1347
+ if (this.type && this._value) {
1348
+ let _fieldControlGroup = this._FormControlService.AddFieldControlGroup();
1349
+ let fieldControlItem = _fieldControlGroup.find(el => el.name === this.type);
1350
+ this.loadViewComponent(fieldControlItem);
1351
+ }
1352
+ }
1353
+ /**加载动态展示组件 */
1354
+ loadViewComponent(FieldControlItem) {
1355
+ //清空了容器中的所有组件
1356
+ this.FormTemplateRef?.clear();
1357
+ if (!FieldControlItem || !FieldControlItem.fieldViewComponent)
1358
+ return;
1359
+ //在容器中创建组件
1360
+ const { instance } = this.FormTemplateRef?.createComponent(FieldControlItem.fieldViewComponent); //创建组件模板
1361
+ /**向创建的组件模板中传值 */
1362
+ instance.type = this.type;
1363
+ instance.value = this._value;
1364
+ instance.fields = this.fields;
1365
+ instance.showInList = this.showInList;
1366
+ }
1367
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: DynamicViewComponent, deps: [{ token: FormControlService }], target: i0.ɵɵFactoryTarget.Component }); }
1368
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.5", type: DynamicViewComponent, selector: "df-dynamic-view", inputs: { showInList: "showInList", fields: "fields", type: "type", value: "value" }, viewQueries: [{ propertyName: "FormTemplateRef", first: true, predicate: ["FormTemplateRef"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<template #FormTemplateRef></template>", styles: [""] }); }
1369
+ }
1370
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: DynamicViewComponent, decorators: [{
1371
+ type: Component,
1372
+ args: [{ selector: 'df-dynamic-view', template: "<template #FormTemplateRef></template>" }]
1373
+ }], ctorParameters: () => [{ type: FormControlService }], propDecorators: { showInList: [{
1374
+ type: Input
1375
+ }], fields: [{
1376
+ type: Input
1377
+ }], type: [{
1378
+ type: Input
1379
+ }], value: [{
1380
+ type: Input
1381
+ }], FormTemplateRef: [{
1382
+ type: ViewChild,
1383
+ args: ['FormTemplateRef', { read: ViewContainerRef, static: true }]
1384
+ }] } });
1385
+
1386
+ class DynamicConfigComponent {
1387
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: DynamicConfigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1388
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.5", type: DynamicConfigComponent, selector: "df-dynamic-config", ngImport: i0, template: "<p>dynamic-config works!</p>\r\n", styles: [""] }); }
1389
+ }
1390
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: DynamicConfigComponent, decorators: [{
1391
+ type: Component,
1392
+ args: [{ selector: 'df-dynamic-config', template: "<p>dynamic-config works!</p>\r\n" }]
1393
+ }] });
1394
+
1395
+ class DynamicControlComponent {
1396
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: DynamicControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1397
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.5", type: DynamicControlComponent, selector: "df-dynamic-control", ngImport: i0, template: "<p>dynamic-control works!</p>\r\n", styles: [""] }); }
1398
+ }
1399
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: DynamicControlComponent, decorators: [{
1400
+ type: Component,
1401
+ args: [{ selector: 'df-dynamic-control', template: "<p>dynamic-control works!</p>\r\n" }]
1402
+ }] });
1403
+
1117
1404
  class DynamicFormModule {
1118
1405
  static forRoot(config) {
1119
1406
  return {
@@ -1132,7 +1419,15 @@ class DynamicFormModule {
1132
1419
  DateEditControlComponent,
1133
1420
  SelectConfigComponent,
1134
1421
  SelectControlComponent,
1135
- DynamicComponent], imports: [FormsModule,
1422
+ DynamicComponent,
1423
+ DynamicConfigComponent,
1424
+ DynamicViewComponent,
1425
+ DynamicControlComponent,
1426
+ SelectViewComponent,
1427
+ SwitchViewComponent,
1428
+ TextEditViewComponent,
1429
+ DateEditViewComponent,
1430
+ NumericEditViewComponent], imports: [FormsModule,
1136
1431
  CoreModule,
1137
1432
  ThemeSharedModule,
1138
1433
  ReactiveFormsModule,
@@ -1147,7 +1442,10 @@ class DynamicFormModule {
1147
1442
  DateEditControlComponent,
1148
1443
  SelectConfigComponent,
1149
1444
  SelectControlComponent,
1150
- DynamicComponent] }); }
1445
+ DynamicComponent,
1446
+ DynamicConfigComponent,
1447
+ DynamicViewComponent,
1448
+ DynamicControlComponent] }); }
1151
1449
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: DynamicFormModule, imports: [FormsModule,
1152
1450
  CoreModule,
1153
1451
  ThemeSharedModule,
@@ -1170,6 +1468,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
1170
1468
  SelectConfigComponent,
1171
1469
  SelectControlComponent,
1172
1470
  DynamicComponent,
1471
+ DynamicConfigComponent,
1472
+ DynamicViewComponent,
1473
+ DynamicControlComponent,
1474
+ SelectViewComponent,
1475
+ SwitchViewComponent,
1476
+ TextEditViewComponent,
1477
+ DateEditViewComponent,
1478
+ NumericEditViewComponent,
1173
1479
  ],
1174
1480
  imports: [
1175
1481
  FormsModule,
@@ -1192,6 +1498,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
1192
1498
  SelectConfigComponent,
1193
1499
  SelectControlComponent,
1194
1500
  DynamicComponent,
1501
+ DynamicConfigComponent,
1502
+ DynamicViewComponent,
1503
+ DynamicControlComponent,
1195
1504
  ],
1196
1505
  providers: [],
1197
1506
  }]
@@ -1205,5 +1514,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
1205
1514
  * Generated bundle index. Do not edit.
1206
1515
  */
1207
1516
 
1208
- export { AddFieldControlGroup, DateEditConfigComponent, DateEditControlComponent, DynamicComponent, DynamicFormModule, FieldControlGroup, NumbericEditConfigComponent, NumbericEditControlComponent, SelectConfigComponent, SelectControlComponent, SwitchConfigComponent, SwitchControlComponent, TextEditComponent, TextEditConfig, TextEditConfigComponent, maxDecimalPlacesValidator };
1517
+ export { AddFieldControlGroup, DateEditConfigComponent, DateEditControlComponent, DynamicComponent, DynamicConfigComponent, DynamicControlComponent, DynamicFormModule, DynamicViewComponent, FieldControlGroup, NumbericEditConfigComponent, NumbericEditControlComponent, SelectConfigComponent, SelectControlComponent, SwitchConfigComponent, SwitchControlComponent, TextEditComponent, TextEditConfig, TextEditConfigComponent, maxDecimalPlacesValidator };
1209
1518
  //# sourceMappingURL=dignite-ng-expand.dynamic-form.mjs.map