@dignite-ng/expand.dynamic-form 0.0.10 → 0.0.12

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 (62) hide show
  1. package/esm2022/lib/components/dynamic/dynamic.component.mjs +1 -1
  2. package/esm2022/lib/components/from/ck-editor/ck-editor-config.component.mjs +1 -1
  3. package/esm2022/lib/components/from/ck-editor/ck-editor-control.component.mjs +20 -23
  4. package/esm2022/lib/components/from/date-edit/date-edit-config.component.mjs +1 -1
  5. package/esm2022/lib/components/from/date-edit/date-edit-control.component.mjs +1 -1
  6. package/esm2022/lib/components/from/file-explorer/file-explorer-config.component.mjs +1 -1
  7. package/esm2022/lib/components/from/file-explorer/file-explorer-control.component.mjs +1 -1
  8. package/esm2022/lib/components/from/numeric-edit/numberic-edit-config.component.mjs +1 -1
  9. package/esm2022/lib/components/from/numeric-edit/numberic-edit-control.component.mjs +1 -1
  10. package/esm2022/lib/components/from/select/select-control.component.mjs +1 -1
  11. package/esm2022/lib/components/from/switch/switch-config.component.mjs +1 -1
  12. package/esm2022/lib/components/from/switch/switch-control.component.mjs +1 -1
  13. package/esm2022/lib/components/from/text-edit/text-edit-config.component.mjs +1 -1
  14. package/esm2022/lib/components/from/text-edit/text-edit.component.mjs +1 -1
  15. package/esm2022/lib/interfaces/form-config-interfaces.mjs +1 -1
  16. package/esm2022/lib/services/index.mjs +1 -2
  17. package/esm2022/public-api.mjs +1 -4
  18. package/fesm2022/dignite-ng-expand.dynamic-form.mjs +15 -238
  19. package/fesm2022/dignite-ng-expand.dynamic-form.mjs.map +1 -1
  20. package/lib/components/from/ck-editor/ck-editor-control.component.d.ts +6 -7
  21. package/lib/components/from/date-edit/date-edit-control.component.d.ts +1 -2
  22. package/lib/services/index.d.ts +0 -1
  23. package/package.json +1 -1
  24. package/public-api.d.ts +0 -3
  25. package/esm2022/lib/enums/index.mjs +0 -3
  26. package/esm2022/lib/proxy/dignite/file-explorer/directories/file-descriptor.service.mjs +0 -48
  27. package/esm2022/lib/proxy/dignite/file-explorer/directories/index.mjs +0 -3
  28. package/esm2022/lib/proxy/dignite/file-explorer/directories/models.mjs +0 -2
  29. package/esm2022/lib/proxy/dignite/file-explorer/index.mjs +0 -4
  30. package/esm2022/lib/proxy/dignite/index.mjs +0 -3
  31. package/esm2022/lib/proxy/index.mjs +0 -5
  32. package/esm2022/lib/proxy/microsoft/asp-net-core/index.mjs +0 -3
  33. package/esm2022/lib/proxy/microsoft/asp-net-core/mvc/index.mjs +0 -2
  34. package/esm2022/lib/proxy/microsoft/extensions/index.mjs +0 -3
  35. package/esm2022/lib/proxy/microsoft/extensions/primitives/index.mjs +0 -2
  36. package/esm2022/lib/proxy/microsoft/index.mjs +0 -5
  37. package/esm2022/lib/proxy/microsoft/net/http/headers/index.mjs +0 -2
  38. package/esm2022/lib/proxy/microsoft/net/http/index.mjs +0 -3
  39. package/esm2022/lib/proxy/microsoft/net/index.mjs +0 -3
  40. package/esm2022/lib/proxy/volo/abp/content/index.mjs +0 -2
  41. package/esm2022/lib/proxy/volo/abp/index.mjs +0 -3
  42. package/esm2022/lib/proxy/volo/index.mjs +0 -3
  43. package/esm2022/lib/services/create-dynamic-components.service.mjs +0 -51
  44. package/lib/enums/index.d.ts +0 -2
  45. package/lib/proxy/dignite/file-explorer/directories/file-descriptor.service.d.ts +0 -17
  46. package/lib/proxy/dignite/file-explorer/directories/index.d.ts +0 -2
  47. package/lib/proxy/dignite/file-explorer/directories/models.d.ts +0 -29
  48. package/lib/proxy/dignite/file-explorer/index.d.ts +0 -3
  49. package/lib/proxy/dignite/index.d.ts +0 -2
  50. package/lib/proxy/index.d.ts +0 -4
  51. package/lib/proxy/microsoft/asp-net-core/index.d.ts +0 -2
  52. package/lib/proxy/microsoft/asp-net-core/mvc/index.d.ts +0 -1
  53. package/lib/proxy/microsoft/extensions/index.d.ts +0 -2
  54. package/lib/proxy/microsoft/extensions/primitives/index.d.ts +0 -1
  55. package/lib/proxy/microsoft/index.d.ts +0 -4
  56. package/lib/proxy/microsoft/net/http/headers/index.d.ts +0 -1
  57. package/lib/proxy/microsoft/net/http/index.d.ts +0 -2
  58. package/lib/proxy/microsoft/net/index.d.ts +0 -2
  59. package/lib/proxy/volo/abp/content/index.d.ts +0 -1
  60. package/lib/proxy/volo/abp/index.d.ts +0 -2
  61. package/lib/proxy/volo/index.d.ts +0 -2
  62. package/lib/services/create-dynamic-components.service.d.ts +0 -13
@@ -1 +1 @@
1
- {"version":3,"file":"dignite-ng-expand.dynamic-form.mjs","sources":["../../../projects/dynamic-form/src/lib/components/from/text-edit/text-edit-config.ts","../../../projects/dynamic-form/src/lib/enums/text-edit-mode.ts","../../../projects/dynamic-form/src/lib/components/from/text-edit/text-edit-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/text-edit/text-edit-config.component.html","../../../projects/dynamic-form/src/lib/components/from/text-edit/text-edit.component.ts","../../../projects/dynamic-form/src/lib/components/from/text-edit/text-edit.component.html","../../../projects/dynamic-form/src/lib/components/from/switch/switch-config.ts","../../../projects/dynamic-form/src/lib/components/from/switch/switch-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/switch/switch-config.component.html","../../../projects/dynamic-form/src/lib/components/from/switch/switch-control.component.ts","../../../projects/dynamic-form/src/lib/components/from/switch/switch-control.component.html","../../../projects/dynamic-form/src/lib/components/from/numeric-edit/numberic-edit-config.ts","../../../projects/dynamic-form/src/lib/components/from/numeric-edit/numberic-edit-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/numeric-edit/numberic-edit-config.component.html","../../../projects/dynamic-form/src/lib/components/from/numeric-edit/numberic-edit-control.component.ts","../../../projects/dynamic-form/src/lib/components/from/numeric-edit/numberic-edit-control.component.html","../../../projects/dynamic-form/src/lib/components/from/ck-editor/ck-editor-config.ts","../../../projects/dynamic-form/src/lib/components/from/ck-editor/ck-editor-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/ck-editor/ck-editor-config.component.html","../../../projects/dynamic-form/src/lib/components/from/ck-editor/ckEditorUpload.ts","../../../projects/dynamic-form/src/lib/components/from/ck-editor/ck-editor-control.component.ts","../../../projects/dynamic-form/src/lib/components/from/ck-editor/ck-editor-control.component.html","../../../projects/dynamic-form/src/lib/enums/date-edit-interfaces.ts","../../../projects/dynamic-form/src/lib/components/from/date-edit/date-edit-config.ts","../../../projects/dynamic-form/src/lib/components/from/date-edit/date-edit-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/date-edit/date-edit-config.component.html","../../../projects/dynamic-form/src/lib/components/from/date-edit/date-edit-control.component.ts","../../../projects/dynamic-form/src/lib/components/from/date-edit/date-edit-control.component.html","../../../projects/dynamic-form/src/lib/components/from/file-explorer/file-explorer-config.ts","../../../projects/dynamic-form/src/lib/components/from/file-explorer/file-explorer-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/file-explorer/file-explorer-config.component.html","../../../projects/dynamic-form/src/lib/components/from/file-explorer/file-explorer-control.component.ts","../../../projects/dynamic-form/src/lib/components/from/file-explorer/file-explorer-control.component.html","../../../projects/dynamic-form/src/lib/components/from/select/select-config.ts","../../../projects/dynamic-form/src/lib/services/df-api.service.ts","../../../projects/dynamic-form/src/lib/services/create-dynamic-components.service.ts","../../../projects/dynamic-form/src/lib/components/from/select/select-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/select/select-config.component.html","../../../projects/dynamic-form/src/lib/components/from/select/select-control.component.ts","../../../projects/dynamic-form/src/lib/components/from/select/select-control.component.html","../../../projects/dynamic-form/src/lib/components/from/form-control-group.ts","../../../projects/dynamic-form/src/lib/components/dynamic/dynamic.component.ts","../../../projects/dynamic-form/src/lib/components/dynamic/dynamic.component.html","../../../projects/dynamic-form/src/lib/dynamic-form.module.ts","../../../projects/dynamic-form/src/lib/proxy/dignite/file-explorer/directories/file-descriptor.service.ts","../../../projects/dynamic-form/src/lib/proxy/dignite/file-explorer/files/file-descriptor.service.ts","../../../projects/dynamic-form/src/public-api.ts","../../../projects/dynamic-form/src/dignite-ng-expand.dynamic-form.ts"],"sourcesContent":["import { FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class TextEditConfig {\r\n\r\n\r\n /**占位符 */\r\n 'TextEdit.Placeholder': any = ['', []];\r\n //字段类型,单行文本,多行文本\r\n 'TextEdit.Mode': any = [0, []];\r\n // 字数限制\r\n 'TextEdit.CharLimit': any = ['265', []];\r\n\r\n constructor(data?: TextEditConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","export enum TextEditMode {\n // 简单类型\n SingleLine,\n // 复合类型;\n MultipleLine,\n \n}\n","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { TextEditConfig } from './text-edit-config';\nimport { TextEditMode } from '../../../enums/text-edit-mode';\n\n@Component({\n selector: 'df-text-edit-config',\n templateUrl: './text-edit-config.component.html',\n styleUrls: ['./text-edit-config.component.scss']\n})\nexport class TextEditConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n _TextEditMode=TextEditMode\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new TextEditConfig()))\n if (this._selected&&this._selected.formControlName==this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n\n\n\n}\n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::Placeholder' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"TextEdit.Placeholder\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::TextEditMode' | abpLocalization}}</label>\n <div>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"radio\" [value]=\"_TextEditMode.SingleLine\" formControlName=\"TextEdit.Mode\"\n id=\"flexRadioDefault1\">\n <label class=\"form-check-label\" for=\"flexRadioDefault1\">\n {{'DigniteAbpForms::SingleLine' | abpLocalization}}\n </label>\n </div>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"radio\" [value]=\"_TextEditMode.MultipleLine\" formControlName=\"TextEdit.Mode\"\n id=\"flexRadioDefault2\">\n <label class=\"form-check-label\" for=\"flexRadioDefault2\">\n {{'DigniteAbpForms::MultipleLine' | abpLocalization}}\n </label>\n </div>\n </div>\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::CharLimit' | abpLocalization}}</label>\n <input type=\"number\" class=\"form-control\" formControlName=\"TextEdit.CharLimit\">\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\" #submitclick></button>\n </div>\n</form>","import { Component, ElementRef, Input, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { TextEditMode } from '../../../enums/text-edit-mode';\nimport { TextEditConfig } from './text-edit-config';\n\n@Component({\n selector: 'df-text-edit',\n templateUrl: './text-edit.component.html',\n styleUrls: ['./text-edit.component.scss']\n})\nexport class TextEditComponent {\n\n constructor(\n private fb: FormBuilder,\n ) {\n\n }\n\n _TextEditMode = TextEditMode\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n if (v) this.dataLoaded()\n }\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n if (v) this.dataLoaded()\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n if (v) this.dataLoaded()\n }\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v || '';\n if (v) this.dataLoaded()\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n extraProperties: FormGroup | undefined\n async dataLoaded() {\n if (this._fields && this._entity && this._parentFiledName) {\n this.extraProperties = this._entity.get(this._parentFiledName) as FormGroup\n await this.AfterInit()\n this.submitclick?.nativeElement?.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n this._fields.field.formConfiguration={\n ...this.fb.group(new TextEditConfig()).value,\n ...this._fields.field.formConfiguration\n }\n if (this._fields.field.formConfiguration['TextEdit.CharLimit']) {\n ValidatorsArray.push(Validators.maxLength(this._fields.field.formConfiguration['TextEdit.CharLimit']))\n }\n \n let newControl = this.fb.control(this._selected, ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n resolve(true)\n })\n }\n\n isObjEmpty = (obj) => Object.keys(obj).length === 0\n}\n","<form [formGroup]=\"_entity\">\n <div [formGroupName]=\"_parentFiledName\">\n <div class=\"mb-2\">\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 <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","import { FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class SwitchConfig {\r\n\r\n\r\n /**默认值 */\r\n 'Switch.Default': any = [false, []];\r\n constructor(data?: SwitchConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n }\r\n}","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { SwitchConfig } from './switch-config';\n@Component({\n selector: 'df-switch-config',\n templateUrl: './switch-config.component.html',\n styleUrls: ['./switch-config.component.scss']\n})\nexport class SwitchConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new SwitchConfig()))\n if (this._selected&&this._selected.formControlName==this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n\n}\n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <div>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"checkbox\" formControlName=\"Switch.Default\"\n id=\"flexRadioDefault1\">\n <label class=\"form-check-label\" for=\"flexRadioDefault1\">\n {{'DigniteAbpForms::DefaultValue' | abpLocalization}}\n </label>\n </div>\n \n </div>\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\" #submitclick></button>\n </div>\n</form>","import { Component, ElementRef, Input, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\n\n@Component({\n selector: 'df-switch-control',\n templateUrl: './switch-control.component.html',\n styleUrls: ['./switch-control.component.scss']\n})\nexport class SwitchControlComponent {\n\n constructor(\n private fb: FormBuilder,\n ) {\n\n }\n\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n this.dataLoaded()\n }\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n this.dataLoaded()\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n this.dataLoaded()\n }\n /** */\n _selected: any\n @Input()\n public set selected(v: any) {\n // ?v:false;\n this._selected = v\n \n this.dataLoaded()\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup\n }\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n let newControl = this.fb.control(this._selected?this._selected:this._selected===false?this._selected:this._fields.field.formConfiguration['Switch.Default'], ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n resolve(true)\n })\n }\n}\n","<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-2\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <div class=\"form-check form-switch\">\n <input class=\"form-check-input\" type=\"checkbox\" role=\"switch\" formControlName=\"{{_fields.field.name}}\">\n </div>\n <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","import { FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class NumbericEditConfig {\r\n /**占位符 */\r\n 'NumericEditField.Placeholder': any = ['', []];\r\n /**最小值 */\r\n 'NumericEditField.Min': any = ['', []];\r\n //最大值\r\n 'NumericEditField.Max': any = ['', []];\r\n // 小数位数\r\n 'NumericEditField.Decimals': any = [2, []];\r\n //步长\r\n 'NumericEditField.Step': any = ['', []];\r\n //格式说明符\r\n 'FormatSpecifier': any = ['', []];\r\n\r\n constructor(data?: NumbericEditConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","import { Component, ElementRef, Input, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { NumbericEditConfig } from './numberic-edit-config';\n\n@Component({\n selector: 'df-numberic-edit-config',\n templateUrl: './numberic-edit-config.component.html',\n styleUrls: ['./numberic-edit-config.component.scss']\n})\nexport class NumbericEditConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v?v:v==false?v:''\n\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new NumbericEditConfig()))\n if (this._selected&&this._selected.formControlName==this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n}\n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::Placeholder' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"NumericEditField.Placeholder\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::Min' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"NumericEditField.Min\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::Max' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"NumericEditField.Max\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::NumericDecimals' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"NumericEditField.Decimals\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::NumericStep' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"NumericEditField.Step\">\n <div class=\"form-text\">{{'DigniteAbpForms::NumericStepHelp'}}</div>\n </div>\n \n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::FormatSpecifier' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"FormatSpecifier\">\n <div class=\"form-text\">See:<a href=\"https://docs.microsoft.com/zh-cn/dotnet/standard/base-types/standard-numeric-format-strings\" target=\"_blank\">https://docs.microsoft.com/zh-cn/dotnet/standard/base-types/standard-numeric-format-strings</a></div>\n </div>\n \n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\" #submitclick></button>\n </div>\n</form>","import { Component, ElementRef, Input, ViewChild, ViewContainerRef, ChangeDetectionStrategy ,ChangeDetectorRef } from '@angular/core';\nimport { FormBuilder, FormGroup, ValidatorFn, Validators } from '@angular/forms';\nimport { AbstractControl, ValidationErrors } from '@angular/forms'; \n \nexport function maxDecimalPlacesValidator(maxDecimalPlaces: number): ValidatorFn { \n return (control: AbstractControl): ValidationErrors | null => { \n const value = control.value; \n if (typeof value === 'number' && isNaN(value) === false) { \n const decimalPart = value.toString().split('.')[1]; \n if (decimalPart && decimalPart.length > maxDecimalPlaces) { \n return { 'maxDecimalPlaces': { actual: decimalPart.length, max: maxDecimalPlaces } }; \n } \n } \n return null; \n }; \n}\n@Component({\n selector: 'df-numberic-edit-control',\n templateUrl: './numberic-edit-control.component.html',\n styleUrls: ['./numberic-edit-control.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class NumbericEditControlComponent {\n\n constructor(\n private fb: FormBuilder,\n private cdr: ChangeDetectorRef \n ) {\n\n }\n\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n this.dataLoaded()\n }\n\n public get entity(): any {\n return this._entity\n }\n\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n this.dataLoaded()\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n this.dataLoaded()\n }\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v ;\n this.dataLoaded()\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup\n }\n get fieldInput() { return this.extraProperties.get(this._fields.field.name); }\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity) {\n await this.AfterInit()\n this.cdr.detectChanges(); \n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n let formConfiguration=this._fields.field.formConfiguration\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n if (formConfiguration['NumericEditField.Min']) {\n ValidatorsArray.push(Validators.min(formConfiguration['NumericEditField.Min']))\n }\n if (formConfiguration['NumericEditField.Max']) {\n ValidatorsArray.push(Validators.max(formConfiguration['NumericEditField.Max']))\n }\n let newControl = this.fb.control(this._selected, ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n\n resolve(true)\n })\n }\n\n /**数字框输入 */\n inputchange(event){\n let val=event.target.value\n const decimalPart = val.toString().split('.')[1]||'';\n let formConfiguration=this._fields.field.formConfiguration\n let Decimals=formConfiguration['NumericEditField.Decimals']\n if(decimalPart.length>Decimals){\n this.fieldInput.patchValue(val.slice(0,val.length-(decimalPart.length-2)))\n }\n }\n}\n","<form [formGroup]=\"_entity\">\n <div [formGroupName]=\"_parentFiledName\">\n <div class=\"mb-2\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <input type=\"number\" class=\"form-control\" formControlName=\"{{_fields.field.name}}\"\n [placeholder]=\"_fields.field.formConfiguration['NumericEditField.Placeholder']||''\"\n [min]=\"_fields.field.formConfiguration['NumericEditField.Min']\"\n [max]=\"_fields.field.formConfiguration['NumericEditField.Max']\"\n [step]=\"_fields.field.formConfiguration['NumericEditField.Step']\" (input)=\"inputchange($event)\" />\n <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","import { FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class CkEditorConfig {\r\n\r\n\r\n /**文件容器名称 */\r\n // placeholder: any = new FormControl('', Validators.required);\r\n 'Ckeditor.ImagesContainerName': any = ['', []];\r\n /**多选 */\r\n // placeholder: any = new FormControl('', Validators.required);\r\n 'Ckeditor.InitialContent': any = ['', []];\r\n \r\n\r\n constructor(data?: CkEditorConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { CkEditorConfig } from './ck-editor-config';\n\n@Component({\n selector: 'df-ck-editor-config',\n templateUrl: './ck-editor-config.component.html',\n styleUrls: ['./ck-editor-config.component.scss']\n})\nexport class CkEditorConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n /**表单实体 */\n @Input() Entity: FormGroup | undefined\n\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v ||''\n\n this.dataLoaded()\n }\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n get formConfiguration() {\n return this.Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n // if (this.Entity && (this._selected || this._selected === '')) {\n if (this.Entity && this._type){\n await this.AfterInit()\n // this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this.Entity.setControl('formConfiguration', this.fb.group(new CkEditorConfig()))\n if (this._selected&&this._selected.formControlName==this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n}\n","<form [formGroup]=\"Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::ImagesContainerName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.ImagesContainerName\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::InitialContent' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.InitialContent\">\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>","import { Rest, RestService } from \"@abp/ng.core\";\r\nimport { FileDescriptorDto } from \"../../../proxy/dignite/file-explorer/files\";\r\n\r\nexport class isBase64UploadAdapter {\r\n public reader = new FileReader();\r\n restService:RestService\r\n loader: any;\r\n ImagesContainerName: any;\r\n Base64: boolean = false\r\n constructor(\r\n loader: any,\r\n ImagesContainerName: any,\r\n restService: RestService\r\n ) {\r\n this.loader = loader;\r\n this.ImagesContainerName = ImagesContainerName\r\n this.restService=restService\r\n }\r\n\r\n public upload() {\r\n\r\n return new Promise((resolve, reject) => {\r\n const reader = this.reader;\r\n\r\n if (this.Base64) {\r\n reader.addEventListener('load', () => {\r\n resolve({ default: reader.result });\r\n });\r\n\r\n reader.addEventListener('error', err => {\r\n reject(err);\r\n });\r\n\r\n reader.addEventListener('abort', () => {\r\n reject();\r\n });\r\n\r\n this.loader.file.then((file: Blob) => {\r\n reader.readAsDataURL(file);\r\n });\r\n } else {\r\n this.loader.file.then((file: File) => {\r\n var formData = new FormData();\r\n formData.append('file', file, file.name);\r\n this.createFile({\r\n file: formData,\r\n containerName: this.ImagesContainerName,\r\n directoryId: '',\r\n entityId: ''\r\n }).subscribe((response:any)=>{\r\n resolve({ default: response.url })\r\n },(error)=>{\r\n reject(error);\r\n })\r\n });\r\n }\r\n\r\n });\r\n }\r\n\r\n createFile = (input: any, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileDescriptorDto>({\r\n method: 'POST',\r\n url: '/api/file-explorer/files',\r\n params: { containerName: input.containerName, cellName: input.cellName, directoryId: input.directoryId, entityId: input.entityId },\r\n body: input.file,\r\n },\r\n { apiName: 'FileExplorer', ...config });\r\n\r\n}","import { Component, ElementRef, Input, Renderer2, RendererFactory2, ViewChild, ViewContainerRef, inject } from '@angular/core';\nimport { FormBuilder, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';\nimport ClassicEditor from '@ckeditor/ckeditor5-build-classic';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/zh-cn.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/zh.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/de.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/de-ch.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/ar';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/cs.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/hi.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/fi.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/hu.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/fr.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/it.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/en-gb.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/pt-br.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/sk';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/ja.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/es.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/vi.js';\nimport { isBase64UploadAdapter } from './ckEditorUpload';\nimport { CKEditorModule } from '@ckeditor/ckeditor5-angular';\nimport { ConfigStateService, CoreModule, RestService } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\n\n\n@Component({\n selector: 'df-ck-editor-control',\n templateUrl: './ck-editor-control.component.html',\n styleUrls: ['./ck-editor-control.component.scss'],\n standalone: true,\n imports: [\n CKEditorModule,\n FormsModule,\n CoreModule,\n ThemeSharedModule,\n ReactiveFormsModule,\n ]\n})\nexport class CkEditorControlComponent {\n\n languagesMap={\n ar:'ar',\n cs:'cs',\n en:'en',\n hi:'hi',\n fi:'fi',\n hu:'hu',\n fr:'fr',\n it:'it',\n 'en-GB':'en-gb',\n 'pt-BR':'pt-br',\n 'zh-Hant':'zh',\n 'zh-Hans':'zh-cn',\n tr:'tr',\n sk:'sk',\n 'de-DE':'de',\n es:'es',\n ja:'ja',\n vi:'vi',\n }\n\n\n constructor(\n private fb: FormBuilder,\n private restService: RestService,\n private config: ConfigStateService\n ) {\n const currentCulture = this.config.getOne(\"localization\")?.currentCulture?.name;\n this.editorConfig={\n language: this.languagesMap[currentCulture],\n placeholder: '',\n toolbar: {\n removeItems: ['mediaEmbed'],\n shouldNotGroupWhenFull: true\n },\n styles: [\n 'alignCenter',\n 'alignLeft',\n 'alignRight'\n ],\n image: {\n toolbar: [\n 'imageTextAlternative', 'toggleImageCaption', '|',\n 'imageStyle:inline', 'imageStyle:wrapText', 'imageStyle:breakText', 'imageStyle:side', '|',\n , 'resizeImage'\n ],\n insert: {\n integrations: [\n 'insertImageViaUrl'\n ]\n }\n \n }\n }\n }\n public Editor = ClassicEditor;\n\n /**富文本配置 */\n editorConfig = {}\n //**富文本加载完成 */\n public onReady(editor: any): void {\n let that = this\n editor.plugins.get('FileRepository').createUploadAdapter = function (loader: any) {\n return new isBase64UploadAdapter(loader, that.imagesContainerName,that.restService);\n };\n }\n /**富文本内容改变 */\n public onChange({ editor }: any) {\n }\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n this.dataLoaded()\n }\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n this.dataLoaded()\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n this.dataLoaded()\n }\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v;\n this.dataLoaded()\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup\n }\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n /**图片容器名称 */\n imagesContainerName: any\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n let newControl = this.fb.control(this._selected ? this._selected : this._fields.field.formConfiguration['Ckeditor.InitialContent'], ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n this.imagesContainerName = this._fields.field.formConfiguration['Ckeditor.ImagesContainerName']\n resolve(true)\n })\n }\n}\n","<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-2\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <ckeditor [editor]=\"Editor\" [config]=\"editorConfig\" formControlName=\"{{_fields.field.name}}\"\n (ready)=\"onReady($event)\" (change)=\"onChange($event)\" required=\"\" name=\"overview\"></ckeditor>\n <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","export enum DateEditInterfaces {\n /// <summary>\n /// Only date is allowed to be entered.\n /// </summary>\n Date = 0,\n\n /// <summary>\n /// Both date and time are allowed to be entered.\n /// </summary>\n DateTime = 1,\n\n /// <summary>\n /// Allowed to select only year and month.\n /// </summary>\n Month = 2\n}\n","import { FormControl, Validators } from \"@angular/forms\";\r\nimport { DateEditInterfaces } from \"../../../enums/date-edit-interfaces\";\r\n\r\nexport class DateEditConfig {\r\n\r\n\r\n\r\n /**日期格式 */\r\n 'DateEdit.InputMode': any = [DateEditInterfaces.Date, []];\r\n /**最小值 */\r\n 'DateEdit.Min': any = ['', []];\r\n /**最大值 */\r\n 'DateEdit.Max': any = ['', []];\r\n\r\n constructor(data?: DateEditConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { DateEditConfig } from './date-edit-config';\nimport { DateEditInterfaces } from '../../../enums/date-edit-interfaces';\n\n@Component({\n selector: 'df-date-edit-config',\n templateUrl: './date-edit-config.component.html',\n styleUrls: ['./date-edit-config.component.scss']\n})\nexport class DateEditConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n _DateEditInterfaces=DateEditInterfaces\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new DateEditConfig()))\n if (this._selected&&this._selected.formControlName==this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n\n} \n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::DateEditMode' | abpLocalization}}</label>\n <div>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"radio\" [value]=\"_DateEditInterfaces.Date\"\n formControlName=\"DateEdit.InputMode\" id=\"flexRadioDefault1\">\n <label class=\"form-check-label\" for=\"flexRadioDefault1\">\n {{'DigniteAbpForms::Date' | abpLocalization}}\n </label>\n </div>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"radio\" [value]=\"_DateEditInterfaces.DateTime\"\n formControlName=\"DateEdit.InputMode\" id=\"flexRadioDefault2\">\n <label class=\"form-check-label\" for=\"flexRadioDefault2\">\n {{'DigniteAbpForms::DateTime' | abpLocalization}}\n </label>\n </div>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"radio\" [value]=\"_DateEditInterfaces.Month\"\n formControlName=\"DateEdit.InputMode\" id=\"flexRadioDefault3\">\n <label class=\"form-check-label\" for=\"flexRadioDefault3\">\n {{'DigniteAbpForms::Month' | abpLocalization}}\n </label>\n </div>\n </div>\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::Min' | abpLocalization}}</label>\n <input type=\"datetime-local\" class=\"form-control\" step=\"1\" formControlName=\"DateEdit.Min\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::Max' | abpLocalization}}</label>\n <input type=\"datetime-local\" class=\"form-control\" step=\"1\" formControlName=\"DateEdit.Max\">\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>","import { Component, ElementRef, Input, ViewChild, ViewContainerRef, ChangeDetectionStrategy ,ChangeDetectorRef } from '@angular/core';\nimport { FormBuilder, FormGroup, ValidatorFn, Validators } from '@angular/forms';\nimport { AbstractControl, ValidationErrors } from '@angular/forms'; \nimport { DateEditInterfaces } from '../../../enums/date-edit-interfaces';\n \n@Component({\n selector: 'df-date-edit-control',\n templateUrl: './date-edit-control.component.html',\n styleUrls: ['./date-edit-control.component.scss']\n})\nexport class DateEditControlComponent {\n\n constructor(\n private fb: FormBuilder,\n private cdr: ChangeDetectorRef \n ) {\n\n }\n _DateEditInterfaces=DateEditInterfaces\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n this.dataLoaded()\n }\n\n public get entity(): any {\n return this._entity\n }\n\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n this.dataLoaded()\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n this.dataLoaded()\n }\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v ;\n this.dataLoaded()\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup\n }\n get fieldInput() { return this.extraProperties.get(this._fields.field.name); }\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity) {\n await this.AfterInit()\n this.cdr.detectChanges(); \n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n let formConfiguration=this._fields.field.formConfiguration\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n if (formConfiguration['DateEdit.Min']) {\n ValidatorsArray.push(Validators.min(formConfiguration['DateEdit.Min']))\n }\n if (formConfiguration['DateEdit.Max']) {\n ValidatorsArray.push(Validators.max(formConfiguration['DateEdit.Max']))\n }\n \n let newControl = this.fb.control(this._selected, ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n\n resolve(true)\n })\n }\n}","<form [formGroup]=\"_entity\">\n <div [formGroupName]=\"_parentFiledName\">\n <div class=\"mb-2\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n\n <ng-container *ngIf=\"_fields.field.formConfiguration['DateEdit.InputMode'] === _DateEditInterfaces.Date\">\n <input type=\"date\" class=\"form-control\" step=\"1\" formControlName=\"{{_fields.field.name}}\"\n [min]=\"_fields.field.formConfiguration['DateEdit.Min']\"\n [max]=\"_fields.field.formConfiguration['DateEdit.Max']\" />\n </ng-container>\n <ng-container\n *ngIf=\"_fields.field.formConfiguration['DateEdit.InputMode'] === _DateEditInterfaces.DateTime\">\n <input type=\"datetime-local\" class=\"form-control\" step=\"1\" formControlName=\"{{_fields.field.name}}\"\n [min]=\"_fields.field.formConfiguration['DateEdit.Min']\"\n [max]=\"_fields.field.formConfiguration['DateEdit.Max']\" />\n </ng-container>\n <ng-container *ngIf=\"_fields.field.formConfiguration['DateEdit.InputMode'] === _DateEditInterfaces.Month\">\n <input type=\"month\" class=\"form-control\" step=\"1\" formControlName=\"{{_fields.field.name}}\"\n [min]=\"_fields.field.formConfiguration['DateEdit.Min']\"\n [max]=\"_fields.field.formConfiguration['DateEdit.Max']\" />\n </ng-container>\n <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","import { FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class FileExplorerConfig {\r\n\r\n\r\n /**文件容器名称 */\r\n 'FileExplorer.FileContainerName': any = ['', [Validators.required]];\r\n /**多选 */\r\n 'FileExplorer.UploadFileMultiple': any = [false, []];\r\n \r\n\r\n constructor(data?: FileExplorerConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { FileExplorerConfig } from './file-explorer-config';\n\n@Component({\n selector: 'df-file-explorer-config',\n templateUrl: './file-explorer-config.component.html',\n styleUrls: ['./file-explorer-config.component.scss']\n})\nexport class FileExplorerConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit()\n this.submitclick?.nativeElement?.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new FileExplorerConfig()))\n if (this._selected && this._selected.formControlName == this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n}\n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsFileExplorer::FileContainerName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"FileExplorer.FileContainerName\">\n </div>\n <div class=\"mb-2\">\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"checkbox\" formControlName=\"FileExplorer.UploadFileMultiple\" id=\"flexRadioDefault1\">\n <label class=\"form-check-label\" for=\"flexRadioDefault1\">\n {{'DigniteAbpDynamicFormsFileExplorer::UploadFileMultiple' | abpLocalization}}\n </label>\n </div>\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>","import { Component, ElementRef, Input, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport * as DescriptorService from '../../../proxy/dignite/file-explorer/directories';\nimport * as FileService from '../../../proxy/dignite/file-explorer/files';\n\n\n@Component({\n selector: 'df-file-explorer-control',\n templateUrl: './file-explorer-control.component.html',\n styleUrls: ['./file-explorer-control.component.scss']\n})\nexport class FileExplorerControlComponent {\n\n constructor(\n private fb: FormBuilder,\n ) {\n\n }\n\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n if(v) this.dataLoaded();\n }\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n if(v) this.dataLoaded();\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n if(v) this.dataLoaded();\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n if(v&&v.length>0) this.dataLoaded();\n }\n\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup\n }\n\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity&&this._parentFiledName) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n /**字段配置 */\n formConfiguration: any = ''\n /**文件容器名称 */\n FileContainerName: any = ''\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n this.formConfiguration = this._fields.field.formConfiguration\n this.FileContainerName = this.formConfiguration['FileExplorer.FileContainerName']\n if(this._selected&&this._selected.length>0){\n this.selectedFileGroup=this._selected\n }\n let newControl = this.fb.control(this._selected, ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n resolve(true)\n })\n }\n\n\n /**选择文件-弹窗的-已选定的文件 */\n selectedFileGroup:any[]=[]\n\n /**_selectedFile改变回调 */\n _selectedFileChange(event) {\n this.selectedFileGroup = event\n let fieldName=this._fields.field.name\n let obj={}\n obj[fieldName]=event\n this.extraProperties.patchValue(obj)\n }\n\n}\n","<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-2\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <fe-file-picker [selectFormFile]=\"selectedFileGroup\" [multiple]=\"formConfiguration['FileExplorer.UploadFileMultiple']\"\n (selectedFileChange)=\"_selectedFileChange($event)\"></fe-file-picker>\n <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","import { FormArray, FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class SelectConfig {\r\n\r\n\r\n /**空值文本 */\r\n 'Select.NullText': any = ['', []];\r\n //多选\r\n 'Select.Multiple': any = [false, []];\r\n // 选项\r\n 'Select.Options': any = new FormArray([])\r\n\r\n constructor(data?: SelectConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","import { Injectable } from '@angular/core';\nimport { pinyin } from 'pinyin-pro';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DfApiService {\n\n constructor() { }\n\n /**\n * 识别中文转化为拼音,固定返回类型\n * 汉字转拼音\n * 大写转小写\n * \n * */\n chineseToPinyin(value: any) {\n //去除字符串中所有的空格\n // let val = value\n let val = value.replaceAll(' ', \"-\")\n let array = val.split('')\n let newArray = []\n array.forEach((el: any, index: any) => {\n //转化为小写\n let elChange = el.toLowerCase()\n let isChinese = (str) => {\n return /^[\\u4e00-\\u9fa5]+$/.test(str);\n }\n if (isChinese(elChange)) {\n const resultWithoutTone = pinyin(elChange, { toneType: 'none', type: 'array' });\n elChange = resultWithoutTone.toString() \n if (index < array.length - 1) elChange+='-'\n };\n newArray.push(elChange)\n });\n let pinyinstr = newArray.join('')\n return pinyinstr || val\n }\n\n /**获取图片的本地连接 */\n getImageLacolBase64Url(file: File) {\n return new Promise((resolve, rejects) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = (e: any) => {\n resolve(e.target.result)\n };\n reader.onerror = error => rejects(error);\n })\n }\n\n /**\n * 深拷贝--方法 */\n deepClone(obj) {\n if (typeof obj !== 'object' || obj === null) return obj;\n const result = Array.isArray(obj) ? [] : {};\n for (let key in obj) {\n if (obj.hasOwnProperty(key)) {\n if (typeof obj[key] === 'object' && obj[key] !== null) {\n if (obj[key] instanceof Date) {\n result[key] = new Date(obj[key].getTime());\n } else if (obj[key] instanceof RegExp) {\n result[key] = new RegExp(obj[key]);\n } else {\n result[key] = this.deepClone(obj[key]);\n }\n } else {\n result[key] = obj[key];\n }\n }\n }\n return result;\n }\n\n}\n","import { Injectable, Input } from '@angular/core';\nimport { FieldControlGroupInterfaces } from '../interfaces';\nimport { FieldControlGroup } from '../components';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CreateDynamicComponentsService {\n\n constructor() { }\n\n /**表单控件组 */\n _fieldControlGroup: FieldControlGroupInterfaces[] = FieldControlGroup\n\n /**加载动态表单配置组件 */\n loadfieldConfigComponent(input: any) {\n \n \n \n let { configRef, type, entity, selected } = input\n let fieldControlItem = this._fieldControlGroup.find(el => el.name === type)\n //清空了容器中的所有组件\n configRef?.clear();\n if (!fieldControlItem || !fieldControlItem.fieldConfigComponent) return\n //在容器中创建组件\n const { instance } = configRef?.createComponent(fieldControlItem.fieldConfigComponent);//创建组件模板\n console.log('加载动态表单配置组件',input,instance);\n /**向创建的组件模板中传值 */\n instance.Entity = entity\n instance.selected = selected\n instance.type = type\n }\n\n /**加载动态表单组件 */\n loadfieldComponent(input: any){\n let { controlRef, entity,fields,parentFiledName, selected,culture } = input\n let fieldControlItem = this._fieldControlGroup.find(el => el.name === fields.field.formControlName)\n //清空了容器中的所有组件\n controlRef?.clear();\n if (!fieldControlItem || !fieldControlItem.fieldComponent) return\n //在容器中创建组件\n const { instance } = controlRef?.createComponent(fieldControlItem.fieldComponent);//创建组件模板\n /**向创建的组件模板中传值 */\n instance.entity = entity\n instance.fields = fields\n instance.parentFiledName = parentFiledName\n instance.selected = selected\n instance.culture = culture\n }\n\n}\n","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormArray, FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { SelectConfig } from './select-config';\nimport { DfApiService } from '../../../services';\n\n@Component({\n selector: 'df-select-config',\n\n templateUrl: './select-config.component.html',\n styleUrls: ['./select-config.component.scss']\n})\nexport class SelectConfigComponent {\n constructor(\n private fb: FormBuilder,\n private _DfApiService: DfApiService,\n ) { }\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n get SelectOptions() {\n return this.formConfiguration.controls['Select.Options'] as FormArray\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n\n }\n }\n /**增加选项 */\n addSelectOptions() {\n this.SelectOptions.push(new FormGroup({\n Text: new FormControl('', Validators.required),\n Value: new FormControl('', Validators.required),\n Selected: new FormControl(false)\n }))\n }\n /**删除某个选项 */\n deleteSelectOptions(index) {\n this.SelectOptions.removeAt(index)\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new SelectConfig()))\n if (this._selected && this._selected.formControlName == this._type) {\n this._selected.formConfiguration['Select.Options']?.forEach(el => {\n this.addSelectOptions()\n });\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration,\n })\n } else {\n this.addSelectOptions()\n }\n resolve(true)\n })\n }\n\n textChange(event,index){\n let SelectOptionsItem=this.SelectOptions.at(index)\n let value=event.target.value\n if(SelectOptionsItem.get('Value').value) return\n SelectOptionsItem.patchValue({\n Value:this._DfApiService.chineseToPinyin(value)\n })\n }\n}\n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::SelectListItem' | abpLocalization}}</label>\n <table class=\"table\">\n <thead>\n <tr>\n <th scope=\"col\">{{'DigniteAbpForms::SelectListItemText' | abpLocalization}}</th>\n <th scope=\"col\">{{'DigniteAbpForms::SelectListItemValue' | abpLocalization}}</th>\n <th scope=\"col\">{{'DigniteAbpForms::SelectListItemValue' | abpLocalization}}</th>\n <th scope=\"col\" style=\"width: 1%;\">\n <button class=\"btn btn-light btn-sm\" (click.stop)=\"addSelectOptions()\">\n <i class=\"fas fa-plus-circle\"></i>\n </button>\n </th>\n </tr>\n </thead>\n <tbody formArrayName=\"Select.Options\">\n <ng-container *ngFor=\"let item of SelectOptions.controls;let i=index\">\n <tr [formGroupName]=\"i\">\n <td><input type=\"text\" class=\"form-control\" formControlName=\"Text\" (change)=\"textChange($event,i)\"></td>\n <td><input type=\"text\" class=\"form-control\" formControlName=\"Value\"></td>\n <td>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"checkbox\" formControlName=\"Selected\" id=\"selected\">\n </div>\n </td>\n <td scope=\"row\" style=\"width: 1%;\">\n <button class=\"btn btn-light btn-sm\" (click.stop)=\"deleteSelectOptions(i)\">\n <i class=\"fas fa-minus\"></i>\n </button>\n </td>\n </tr> \n </ng-container>\n \n \n </tbody>\n </table>\n </div>\n\n\n\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::NullText' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Select.NullText\">\n </div>\n <div class=\"mb-2\">\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"checkbox\" formControlName=\"Select.Multiple\"\n id=\"Multiple\">\n <label class=\"form-check-label\" for=\"Multiple\">\n {{'DigniteAbpForms::Multiple' | abpLocalization}}\n </label>\n </div>\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>","import { Component, ElementRef, Input, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\n\n@Component({\n selector: 'df-select-control',\n templateUrl: './select-control.component.html',\n styleUrls: ['./select-control.component.scss']\n})\nexport class SelectControlComponent {\n\n constructor(\n private fb: FormBuilder,\n ) {\n }\n\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n this.dataLoaded()\n }\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n this.dataLoaded()\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n this.dataLoaded()\n }\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n this.dataLoaded()\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup\n }\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n\n\n }\n }\n formConfiguration: any = ''\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n this.formConfiguration = this._fields.field.formConfiguration\n if (!this._selected) {\n const isMultiple = this.formConfiguration['Select.Multiple'];\n\n let selectValue = isMultiple ? [] : ''\n this.formConfiguration['Select.Options'].forEach(el => {\n if (el.Selected) {\n selectValue = isMultiple ? [...selectValue, el.value] : [el.value];\n }\n });\n\n this._selected = selectValue;\n }\n let newControl = this.fb.control(this._selected, ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n resolve(true)\n })\n }\n\n\n}\n","<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-2\">\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 </ng-container>\n <ng-template #elseTemplate>\n <select class=\"form-select\" [multiple]=\"false\"\n formControlName=\"{{_fields.field.name}}\">\n <option>{{formConfiguration['Select.NullText']}}</option>\n <ng-container *ngFor=\"let item of formConfiguration['Select.Options'];let i =index\">\n <option [value]=\"item.Value\" >{{item.Text}}</option>\n </ng-container>\n </select>\n </ng-template>\n <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","// import { TableConfigComponent, TableControlComponent, MatrixConfigComponent, MatrixControlComponent } from \"@dignite-ng/expand.cms\";\r\nimport { FieldControlGroupInterfaces } from \"../../interfaces\";\r\nimport { CkEditorConfigComponent, CkEditorControlComponent } from \"./ck-editor\";\r\nimport { DateEditConfigComponent } from \"./date-edit/date-edit-config.component\";\r\nimport { DateEditControlComponent } from \"./date-edit/date-edit-control.component\";\r\nimport { FileExplorerConfigComponent, FileExplorerControlComponent } from \"./file-explorer\";\r\nimport { NumbericEditConfigComponent } from \"./numeric-edit/numberic-edit-config.component\";\r\nimport { NumbericEditControlComponent } from \"./numeric-edit/numberic-edit-control.component\";\r\nimport { SelectConfigComponent, SelectControlComponent } from \"./select\";\r\nimport { SwitchConfigComponent, SwitchControlComponent } from \"./switch\";\r\nimport { TextEditComponent, TextEditConfigComponent } from \"./text-edit\";\r\n\r\n/**\r\n * 表单控件分组-包含配置,控件,显示的数组\r\n */\r\nexport const FieldControlGroup: FieldControlGroupInterfaces[] = [\r\n {\r\n displayName: '文本框',\r\n name: 'TextEdit',\r\n fieldConfigComponent: TextEditConfigComponent,\r\n fieldComponent: TextEditComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n }, {\r\n displayName: '开关',\r\n name: 'Switch',\r\n fieldConfigComponent: SwitchConfigComponent,\r\n fieldComponent: SwitchControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n }, {\r\n displayName: '选择',\r\n name: 'Select',\r\n fieldConfigComponent: SelectConfigComponent,\r\n fieldComponent: SelectControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n }, {\r\n displayName: '数字',\r\n name: 'NumericEdit',\r\n fieldConfigComponent: NumbericEditConfigComponent,\r\n fieldComponent: NumbericEditControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n }, {\r\n displayName: '日期',\r\n name: 'DateEdit',\r\n fieldConfigComponent: DateEditConfigComponent,\r\n fieldComponent: DateEditControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n },\r\n {\r\n displayName: '文件管理',\r\n name: 'FileExplorer',\r\n fieldConfigComponent: FileExplorerConfigComponent,\r\n fieldComponent: FileExplorerControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n }, {\r\n displayName: 'CkEditor',\r\n name: 'CkEditor',\r\n fieldConfigComponent: CkEditorConfigComponent,\r\n fieldComponent: CkEditorControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n },\r\n];\r\nexport function getExcludeAssignControl(typeName) {\r\n // return FieldControlGroup.filter(el => el.name !== typeName)\r\n return FieldControlGroup\r\n}\r\n\r\nexport function AddFieldControlGroup(array=[]) {\r\n FieldControlGroup.push(...array)\r\n}","import {Component, Inject, Input, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport type{ FieldControlGroupInterfaces } from '../../interfaces';\nimport { FieldControlGroup } from '../from';\n\n@Component({\n selector: 'df-dynamic',\n templateUrl: './dynamic.component.html',\n styleUrls: ['./dynamic.component.scss']\n})\nexport class DynamicComponent {\n\n\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v || '';\n \n if(v) this.dataLoaded(1)\n }\n\n\n /**表单控件类型 */\n _type: string\n @Input()\n public set type(v: string) {\n this._type = v;\n if(v) this.dataLoaded(2)\n }\n\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n if(v) {\n this._entity = v;\n this.dataLoaded(3)\n }\n }\n /**语言 */\n _culture: FormGroup | undefined\n @Input()\n public set culture(v: any) {\n this._culture = v;\n if(v) this.dataLoaded(6)\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n if(v) this.dataLoaded(4)\n }\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n if(v) this.dataLoaded(5)\n }\n\n\n /**表单控件模板-动态表单配置组件 */\n @ViewChild('FormControlRef', { read: ViewContainerRef, static: true }) FormControlRef: ViewContainerRef;\n\n /**表单控件模板-动态表单组件 */\n @ViewChild('FormComponentsRef', { read: ViewContainerRef, static: true }) FormComponentsRef: ViewContainerRef;\n\n /**表单控件组 */\n _fieldControlGroup: FieldControlGroupInterfaces[] = FieldControlGroup\n\n\n /**数据加载完成 */\n dataLoaded(val) {\n if (this._entity) {\n if (this._type) {\n let fieldControlItem = this._fieldControlGroup.find(el => el.name === this._type)\n this.loadfieldConfigComponent(fieldControlItem)\n }\n if (this._fields && this._parentFiledName) {\n /**表单控件组中的项 */\n let fieldControlItem = this._fieldControlGroup.find(el => el.name === this._fields.field.formControlName)\n this.loadfieldComponent(fieldControlItem)\n }\n }\n }\n\n\n\n /**加载动态表单配置组件 */\n loadfieldConfigComponent(FieldControlItem?: FieldControlGroupInterfaces) {\n //清空了容器中的所有组件\n this.FormControlRef?.clear();\n if (!FieldControlItem || !FieldControlItem.fieldConfigComponent) return\n //在容器中创建组件\n const { instance } = this.FormControlRef?.createComponent(FieldControlItem.fieldConfigComponent);//创建组件模板\n /**向创建的组件模板中传值 */\n instance.Entity = this._entity\n instance.selected = this._selected\n instance.type = this._type\n }\n\n /**加载动态表单组件 */\n loadfieldComponent(FieldControlItem?: FieldControlGroupInterfaces) {\n // this.FormControlRef.clear\n //清空了容器中的所有组件\n this.FormComponentsRef?.clear();\n if (!FieldControlItem || !FieldControlItem.fieldComponent) return\n //在容器中创建组件\n const { instance } = this.FormComponentsRef?.createComponent(FieldControlItem.fieldComponent);//创建组件模板\n \n // this.formConfigCompoent = instance\n /**向创建的组件模板中传值 */\n instance.entity = this._entity\n instance.fields = this._fields\n instance.parentFiledName = this._parentFiledName\n instance.selected = this._selected\n instance.culture = this._culture\n }\n}\n","<template #FormControlRef></template>\n<template #FormComponentsRef></template>","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NzTreeModule } from 'ng-zorro-antd/tree';\nimport { FileExplorerModule } from '@dignite-ng/expand.file-explorer';\nimport {\n TextEditConfigComponent,\n TextEditComponent,\n SwitchConfigComponent,\n SwitchControlComponent,\n NumbericEditConfigComponent,\n NumbericEditControlComponent,\n DateEditConfigComponent,\n DateEditControlComponent,\n FileExplorerConfigComponent,\n FileExplorerControlComponent,\n CkEditorConfigComponent,\n SelectConfigComponent,\n SelectControlComponent,\n AddFieldControlGroup,\n DynamicComponent,\n} from './components';\n\n\n\n@NgModule({\n declarations: [\n TextEditConfigComponent,\n TextEditComponent,\n SwitchConfigComponent,\n SwitchControlComponent,\n NumbericEditConfigComponent,\n NumbericEditControlComponent,\n DateEditConfigComponent,\n DateEditControlComponent,\n FileExplorerConfigComponent,\n FileExplorerControlComponent,\n CkEditorConfigComponent,\n SelectConfigComponent,\n SelectControlComponent,\n DynamicComponent,\n\n ],\n imports: [\n FormsModule,\n CoreModule,\n ThemeSharedModule,\n ReactiveFormsModule,\n NgbDropdownModule,\n NzTreeModule,\n FileExplorerModule,\n // DynamicComponent\n ],\n exports: [\n TextEditConfigComponent,\n TextEditComponent,\n SwitchConfigComponent,\n SwitchControlComponent,\n NumbericEditConfigComponent,\n NumbericEditControlComponent,\n DateEditConfigComponent,\n DateEditControlComponent,\n FileExplorerConfigComponent,\n FileExplorerControlComponent,\n CkEditorConfigComponent,\n SelectConfigComponent,\n SelectControlComponent,\n DynamicComponent,\n ],\n})\nexport class DynamicFormModule {\n static forRoot(config?: any): ModuleWithProviders<DynamicFormModule> {\n AddFieldControlGroup(config.cmsFieldControlGroup)\n return {\n ngModule: DynamicFormModule,\n providers: []\n };\n }\n}\n","import type { CreateDirectoryInput, DirectoryDescriptorDto, DirectoryDescriptorInfoDto, GetDirectoriesInput, MoveDirectoryInput, UpdateDirectoryInput } from './models';\r\nimport { RestService, Rest } from '@abp/ng.core';\r\nimport type { PagedResultDto } from '@abp/ng.core';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FileDescriptorService {\r\n apiName = 'FileExplorer';\r\n \r\n\r\n create = (input: CreateDirectoryInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, DirectoryDescriptorDto>({\r\n method: 'POST',\r\n url: '/api/file-explorer/directories',\r\n body: input,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n delete = (id: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, void>({\r\n method: 'DELETE',\r\n url: `/api/file-explorer/directories/${id}`,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n get = (id: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, DirectoryDescriptorDto>({\r\n method: 'GET',\r\n url: `/api/file-explorer/directories/${id}`,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n getList = (input: GetDirectoriesInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, PagedResultDto<DirectoryDescriptorInfoDto>>({\r\n method: 'GET',\r\n url: '/api/file-explorer/directories',\r\n params: { containerName: input.containerName },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n move = (id: string, input: MoveDirectoryInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, DirectoryDescriptorDto>({\r\n method: 'PUT',\r\n url: `/api/file-explorer/directories/${id}/move`,\r\n body: input,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n update = (id: string, input: UpdateDirectoryInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, DirectoryDescriptorDto>({\r\n method: 'PUT',\r\n url: `/api/file-explorer/directories/${id}`,\r\n body: input,\r\n },\r\n { apiName: this.apiName,...config });\r\n\r\n constructor(private restService: RestService) {}\r\n}\r\n","import type { CreateFileInput, FileContainerConfigurationDto, FileDescriptorDto, GetFilesInput, ImageResizeInput, UpdateFileInput } from './models';\r\nimport { RestService, Rest } from '@abp/ng.core';\r\nimport type { PagedResultDto } from '@abp/ng.core';\r\nimport { Injectable } from '@angular/core';\r\nimport type { FileResult } from '../../../microsoft/asp-net-core/mvc/models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FileDescriptorService {\r\n apiName = 'FileExplorer';\r\n \r\n\r\n create = (input: CreateFileInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileDescriptorDto>({\r\n method: 'POST',\r\n url: '/api/file-explorer/files',\r\n params: { containerName: input.containerName, cellName: input.cellName, directoryId: input.directoryId, entityId: input.entityId },\r\n body: input.file,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n delete = (id: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, void>({\r\n method: 'DELETE',\r\n url: `/api/file-explorer/files/${id}`,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n download = (containerName: string, blobName: string, fileName: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileResult>({\r\n method: 'GET',\r\n url: `/api/file-explorer/files/download/${containerName}/${blobName}`,\r\n params: { fileName },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n get = (id: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileDescriptorDto>({\r\n method: 'GET',\r\n url: `/api/file-explorer/files/${id}`,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n getFileContainerConfiguration = (containerName: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileContainerConfigurationDto>({\r\n method: 'GET',\r\n url: '/api/file-explorer/files/configuration',\r\n params: { containerName },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n getList = (input: GetFilesInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, PagedResultDto<FileDescriptorDto>>({\r\n method: 'GET',\r\n url: '/api/file-explorer/files',\r\n params: { containerName: input.containerName, directoryId: input.directoryId, creatorId: input.creatorId, filter: input.filter, entityId: input.entityId, sorting: input.sorting, skipCount: input.skipCount, maxResultCount: input.maxResultCount },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n getStream = (containerName: string, blobName: string, imageResize?: ImageResizeInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, Blob>({\r\n method: 'GET',\r\n responseType: 'blob',\r\n url: `/api/file-explorer/files/${containerName}/${blobName}`,\r\n params: { width: imageResize.width, height: imageResize.height },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n update = (id: string, input: UpdateFileInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileDescriptorDto>({\r\n method: 'PUT',\r\n url: `/api/file-explorer/files/${id}`,\r\n body: input,\r\n },\r\n { apiName: this.apiName,...config });\r\n\r\n constructor(private restService: RestService) {}\r\n}\r\n","/*\n * Public API Surface of dynamic-form\n */\n\nexport * from './lib/dynamic-form.module';\nexport * from './lib/components';\nexport * from './lib/interfaces';\nexport * from './lib/enums';\nexport * from './lib/proxy';\nexport * from './lib/services';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i3","i4","i5","i2.DfApiService","i1","FileDescriptorService"],"mappings":"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"}
1
+ {"version":3,"file":"dignite-ng-expand.dynamic-form.mjs","sources":["../../../projects/dynamic-form/src/lib/components/from/text-edit/text-edit-config.ts","../../../projects/dynamic-form/src/lib/enums/text-edit-mode.ts","../../../projects/dynamic-form/src/lib/components/from/text-edit/text-edit-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/text-edit/text-edit-config.component.html","../../../projects/dynamic-form/src/lib/components/from/text-edit/text-edit.component.ts","../../../projects/dynamic-form/src/lib/components/from/text-edit/text-edit.component.html","../../../projects/dynamic-form/src/lib/components/from/switch/switch-config.ts","../../../projects/dynamic-form/src/lib/components/from/switch/switch-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/switch/switch-config.component.html","../../../projects/dynamic-form/src/lib/components/from/switch/switch-control.component.ts","../../../projects/dynamic-form/src/lib/components/from/switch/switch-control.component.html","../../../projects/dynamic-form/src/lib/components/from/numeric-edit/numberic-edit-config.ts","../../../projects/dynamic-form/src/lib/components/from/numeric-edit/numberic-edit-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/numeric-edit/numberic-edit-config.component.html","../../../projects/dynamic-form/src/lib/components/from/numeric-edit/numberic-edit-control.component.ts","../../../projects/dynamic-form/src/lib/components/from/numeric-edit/numberic-edit-control.component.html","../../../projects/dynamic-form/src/lib/components/from/ck-editor/ck-editor-config.ts","../../../projects/dynamic-form/src/lib/components/from/ck-editor/ck-editor-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/ck-editor/ck-editor-config.component.html","../../../projects/dynamic-form/src/lib/components/from/ck-editor/ckEditorUpload.ts","../../../projects/dynamic-form/src/lib/components/from/ck-editor/ck-editor-control.component.ts","../../../projects/dynamic-form/src/lib/components/from/ck-editor/ck-editor-control.component.html","../../../projects/dynamic-form/src/lib/enums/date-edit-interfaces.ts","../../../projects/dynamic-form/src/lib/components/from/date-edit/date-edit-config.ts","../../../projects/dynamic-form/src/lib/components/from/date-edit/date-edit-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/date-edit/date-edit-config.component.html","../../../projects/dynamic-form/src/lib/components/from/date-edit/date-edit-control.component.ts","../../../projects/dynamic-form/src/lib/components/from/date-edit/date-edit-control.component.html","../../../projects/dynamic-form/src/lib/components/from/file-explorer/file-explorer-config.ts","../../../projects/dynamic-form/src/lib/components/from/file-explorer/file-explorer-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/file-explorer/file-explorer-config.component.html","../../../projects/dynamic-form/src/lib/components/from/file-explorer/file-explorer-control.component.ts","../../../projects/dynamic-form/src/lib/components/from/file-explorer/file-explorer-control.component.html","../../../projects/dynamic-form/src/lib/components/from/select/select-config.ts","../../../projects/dynamic-form/src/lib/services/df-api.service.ts","../../../projects/dynamic-form/src/lib/components/from/select/select-config.component.ts","../../../projects/dynamic-form/src/lib/components/from/select/select-config.component.html","../../../projects/dynamic-form/src/lib/components/from/select/select-control.component.ts","../../../projects/dynamic-form/src/lib/components/from/select/select-control.component.html","../../../projects/dynamic-form/src/lib/components/from/form-control-group.ts","../../../projects/dynamic-form/src/lib/components/dynamic/dynamic.component.ts","../../../projects/dynamic-form/src/lib/components/dynamic/dynamic.component.html","../../../projects/dynamic-form/src/lib/dynamic-form.module.ts","../../../projects/dynamic-form/src/public-api.ts","../../../projects/dynamic-form/src/dignite-ng-expand.dynamic-form.ts"],"sourcesContent":["import { FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class TextEditConfig {\r\n\r\n\r\n /**占位符 */\r\n 'TextEdit.Placeholder': any = ['', []];\r\n //字段类型,单行文本,多行文本\r\n 'TextEdit.Mode': any = [0, []];\r\n // 字数限制\r\n 'TextEdit.CharLimit': any = ['265', []];\r\n\r\n constructor(data?: TextEditConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","export enum TextEditMode {\n // 简单类型\n SingleLine,\n // 复合类型;\n MultipleLine,\n \n}\n","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup} from '@angular/forms';\nimport { TextEditConfig } from './text-edit-config';\nimport { TextEditMode } from '../../../enums/text-edit-mode';\n\n@Component({\n selector: 'df-text-edit-config',\n templateUrl: './text-edit-config.component.html',\n styleUrls: ['./text-edit-config.component.scss']\n})\nexport class TextEditConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n _TextEditMode=TextEditMode\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new TextEditConfig()))\n if (this._selected&&this._selected.formControlName==this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n\n\n\n}\n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::Placeholder' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"TextEdit.Placeholder\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::TextEditMode' | abpLocalization}}</label>\n <div>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"radio\" [value]=\"_TextEditMode.SingleLine\" formControlName=\"TextEdit.Mode\"\n id=\"flexRadioDefault1\">\n <label class=\"form-check-label\" for=\"flexRadioDefault1\">\n {{'DigniteAbpForms::SingleLine' | abpLocalization}}\n </label>\n </div>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"radio\" [value]=\"_TextEditMode.MultipleLine\" formControlName=\"TextEdit.Mode\"\n id=\"flexRadioDefault2\">\n <label class=\"form-check-label\" for=\"flexRadioDefault2\">\n {{'DigniteAbpForms::MultipleLine' | abpLocalization}}\n </label>\n </div>\n </div>\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::CharLimit' | abpLocalization}}</label>\n <input type=\"number\" class=\"form-control\" formControlName=\"TextEdit.CharLimit\">\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\" #submitclick></button>\n </div>\n</form>","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { TextEditMode } from '../../../enums/text-edit-mode';\nimport { TextEditConfig } from './text-edit-config';\n\n@Component({\n selector: 'df-text-edit',\n templateUrl: './text-edit.component.html',\n styleUrls: ['./text-edit.component.scss']\n})\nexport class TextEditComponent {\n\n constructor(\n private fb: FormBuilder,\n ) {\n\n }\n\n _TextEditMode = TextEditMode\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n if (v) this.dataLoaded()\n }\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n if (v) this.dataLoaded()\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n if (v) this.dataLoaded()\n }\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v || '';\n if (v) this.dataLoaded()\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n extraProperties: FormGroup | undefined\n async dataLoaded() {\n if (this._fields && this._entity && this._parentFiledName) {\n this.extraProperties = this._entity.get(this._parentFiledName) as FormGroup\n await this.AfterInit()\n this.submitclick?.nativeElement?.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n this._fields.field.formConfiguration={\n ...this.fb.group(new TextEditConfig()).value,\n ...this._fields.field.formConfiguration\n }\n if (this._fields.field.formConfiguration['TextEdit.CharLimit']) {\n ValidatorsArray.push(Validators.maxLength(this._fields.field.formConfiguration['TextEdit.CharLimit']))\n }\n \n let newControl = this.fb.control(this._selected, ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n resolve(true)\n })\n }\n\n isObjEmpty = (obj) => Object.keys(obj).length === 0\n}\n","<form [formGroup]=\"_entity\">\n <div [formGroupName]=\"_parentFiledName\">\n <div class=\"mb-2\">\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 <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","import { FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class SwitchConfig {\r\n\r\n\r\n /**默认值 */\r\n 'Switch.Default': any = [false, []];\r\n constructor(data?: SwitchConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n }\r\n}","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup } from '@angular/forms';\nimport { SwitchConfig } from './switch-config';\n@Component({\n selector: 'df-switch-config',\n templateUrl: './switch-config.component.html',\n styleUrls: ['./switch-config.component.scss']\n})\nexport class SwitchConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new SwitchConfig()))\n if (this._selected&&this._selected.formControlName==this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n\n}\n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <div>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"checkbox\" formControlName=\"Switch.Default\"\n id=\"flexRadioDefault1\">\n <label class=\"form-check-label\" for=\"flexRadioDefault1\">\n {{'DigniteAbpForms::DefaultValue' | abpLocalization}}\n </label>\n </div>\n \n </div>\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\" #submitclick></button>\n </div>\n</form>","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\n\n@Component({\n selector: 'df-switch-control',\n templateUrl: './switch-control.component.html',\n styleUrls: ['./switch-control.component.scss']\n})\nexport class SwitchControlComponent {\n\n constructor(\n private fb: FormBuilder,\n ) {\n\n }\n\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n this.dataLoaded()\n }\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n this.dataLoaded()\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n this.dataLoaded()\n }\n /** */\n _selected: any\n @Input()\n public set selected(v: any) {\n // ?v:false;\n this._selected = v\n \n this.dataLoaded()\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup\n }\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n let newControl = this.fb.control(this._selected?this._selected:this._selected===false?this._selected:this._fields.field.formConfiguration['Switch.Default'], ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n resolve(true)\n })\n }\n}\n","<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-2\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <div class=\"form-check form-switch\">\n <input class=\"form-check-input\" type=\"checkbox\" role=\"switch\" formControlName=\"{{_fields.field.name}}\">\n </div>\n <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","import { FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class NumbericEditConfig {\r\n /**占位符 */\r\n 'NumericEditField.Placeholder': any = ['', []];\r\n /**最小值 */\r\n 'NumericEditField.Min': any = ['', []];\r\n //最大值\r\n 'NumericEditField.Max': any = ['', []];\r\n // 小数位数\r\n 'NumericEditField.Decimals': any = [2, []];\r\n //步长\r\n 'NumericEditField.Step': any = ['', []];\r\n //格式说明符\r\n 'FormatSpecifier': any = ['', []];\r\n\r\n constructor(data?: NumbericEditConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup } from '@angular/forms';\nimport { NumbericEditConfig } from './numberic-edit-config';\n\n@Component({\n selector: 'df-numberic-edit-config',\n templateUrl: './numberic-edit-config.component.html',\n styleUrls: ['./numberic-edit-config.component.scss']\n})\nexport class NumbericEditConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v?v:v==false?v:''\n\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new NumbericEditConfig()))\n if (this._selected&&this._selected.formControlName==this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n}\n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::Placeholder' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"NumericEditField.Placeholder\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::Min' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"NumericEditField.Min\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::Max' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"NumericEditField.Max\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::NumericDecimals' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"NumericEditField.Decimals\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::NumericStep' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"NumericEditField.Step\">\n <div class=\"form-text\">{{'DigniteAbpForms::NumericStepHelp'}}</div>\n </div>\n \n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::FormatSpecifier' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"FormatSpecifier\">\n <div class=\"form-text\">See:<a href=\"https://docs.microsoft.com/zh-cn/dotnet/standard/base-types/standard-numeric-format-strings\" target=\"_blank\">https://docs.microsoft.com/zh-cn/dotnet/standard/base-types/standard-numeric-format-strings</a></div>\n </div>\n \n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\" #submitclick></button>\n </div>\n</form>","import { Component, ElementRef, Input, ViewChild, ChangeDetectionStrategy ,ChangeDetectorRef } from '@angular/core';\nimport { FormBuilder, FormGroup, ValidatorFn, Validators } from '@angular/forms';\nimport { AbstractControl, ValidationErrors } from '@angular/forms'; \n \nexport function maxDecimalPlacesValidator(maxDecimalPlaces: number): ValidatorFn { \n return (control: AbstractControl): ValidationErrors | null => { \n const value = control.value; \n if (typeof value === 'number' && isNaN(value) === false) { \n const decimalPart = value.toString().split('.')[1]; \n if (decimalPart && decimalPart.length > maxDecimalPlaces) { \n return { 'maxDecimalPlaces': { actual: decimalPart.length, max: maxDecimalPlaces } }; \n } \n } \n return null; \n }; \n}\n@Component({\n selector: 'df-numberic-edit-control',\n templateUrl: './numberic-edit-control.component.html',\n styleUrls: ['./numberic-edit-control.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class NumbericEditControlComponent {\n\n constructor(\n private fb: FormBuilder,\n private cdr: ChangeDetectorRef \n ) {\n\n }\n\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n this.dataLoaded()\n }\n\n public get entity(): any {\n return this._entity\n }\n\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n this.dataLoaded()\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n this.dataLoaded()\n }\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v ;\n this.dataLoaded()\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup\n }\n get fieldInput() { return this.extraProperties.get(this._fields.field.name); }\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity) {\n await this.AfterInit()\n this.cdr.detectChanges(); \n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n let formConfiguration=this._fields.field.formConfiguration\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n if (formConfiguration['NumericEditField.Min']) {\n ValidatorsArray.push(Validators.min(formConfiguration['NumericEditField.Min']))\n }\n if (formConfiguration['NumericEditField.Max']) {\n ValidatorsArray.push(Validators.max(formConfiguration['NumericEditField.Max']))\n }\n let newControl = this.fb.control(this._selected, ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n\n resolve(true)\n })\n }\n\n /**数字框输入 */\n inputchange(event){\n let val=event.target.value\n const decimalPart = val.toString().split('.')[1]||'';\n let formConfiguration=this._fields.field.formConfiguration\n let Decimals=formConfiguration['NumericEditField.Decimals']\n if(decimalPart.length>Decimals){\n this.fieldInput.patchValue(val.slice(0,val.length-(decimalPart.length-2)))\n }\n }\n}\n","<form [formGroup]=\"_entity\">\n <div [formGroupName]=\"_parentFiledName\">\n <div class=\"mb-2\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <input type=\"number\" class=\"form-control\" formControlName=\"{{_fields.field.name}}\"\n [placeholder]=\"_fields.field.formConfiguration['NumericEditField.Placeholder']||''\"\n [min]=\"_fields.field.formConfiguration['NumericEditField.Min']\"\n [max]=\"_fields.field.formConfiguration['NumericEditField.Max']\"\n [step]=\"_fields.field.formConfiguration['NumericEditField.Step']\" (input)=\"inputchange($event)\" />\n <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","import { FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class CkEditorConfig {\r\n\r\n\r\n /**文件容器名称 */\r\n // placeholder: any = new FormControl('', Validators.required);\r\n 'Ckeditor.ImagesContainerName': any = ['', []];\r\n /**多选 */\r\n // placeholder: any = new FormControl('', Validators.required);\r\n 'Ckeditor.InitialContent': any = ['', []];\r\n \r\n\r\n constructor(data?: CkEditorConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup } from '@angular/forms';\nimport { CkEditorConfig } from './ck-editor-config';\n\n@Component({\n selector: 'df-ck-editor-config',\n templateUrl: './ck-editor-config.component.html',\n styleUrls: ['./ck-editor-config.component.scss']\n})\nexport class CkEditorConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n /**表单实体 */\n @Input() Entity: FormGroup | undefined\n\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v || ''\n\n this.dataLoaded()\n }\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n get formConfiguration() {\n return this.Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n // if (this.Entity && (this._selected || this._selected === '')) {\n if (this.Entity && this._type) {\n await this.AfterInit()\n // this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this.Entity.setControl('formConfiguration', this.fb.group(new CkEditorConfig()))\n if (this._selected && this._selected.formControlName == this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n}\n","<form [formGroup]=\"Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::ImagesContainerName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.ImagesContainerName\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsCkEditor::InitialContent' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Ckeditor.InitialContent\">\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>","import { Rest, RestService } from \"@abp/ng.core\";\r\nimport { FileDescriptorDto } from \"../../../proxy/dignite/file-explorer/files\";\r\n\r\nexport class isBase64UploadAdapter {\r\n public reader = new FileReader();\r\n restService:RestService\r\n loader: any;\r\n ImagesContainerName: any;\r\n Base64: boolean = false\r\n constructor(\r\n loader: any,\r\n ImagesContainerName: any,\r\n restService: RestService\r\n ) {\r\n this.loader = loader;\r\n this.ImagesContainerName = ImagesContainerName\r\n this.restService=restService\r\n }\r\n\r\n public upload() {\r\n\r\n return new Promise((resolve, reject) => {\r\n const reader = this.reader;\r\n\r\n if (this.Base64) {\r\n reader.addEventListener('load', () => {\r\n resolve({ default: reader.result });\r\n });\r\n\r\n reader.addEventListener('error', err => {\r\n reject(err);\r\n });\r\n\r\n reader.addEventListener('abort', () => {\r\n reject();\r\n });\r\n\r\n this.loader.file.then((file: Blob) => {\r\n reader.readAsDataURL(file);\r\n });\r\n } else {\r\n this.loader.file.then((file: File) => {\r\n var formData = new FormData();\r\n formData.append('file', file, file.name);\r\n this.createFile({\r\n file: formData,\r\n containerName: this.ImagesContainerName,\r\n directoryId: '',\r\n entityId: ''\r\n }).subscribe((response:any)=>{\r\n resolve({ default: response.url })\r\n },(error)=>{\r\n reject(error);\r\n })\r\n });\r\n }\r\n\r\n });\r\n }\r\n\r\n createFile = (input: any, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileDescriptorDto>({\r\n method: 'POST',\r\n url: '/api/file-explorer/files',\r\n params: { containerName: input.containerName, cellName: input.cellName, directoryId: input.directoryId, entityId: input.entityId },\r\n body: input.file,\r\n },\r\n { apiName: 'FileExplorer', ...config });\r\n\r\n}","import { Component, ElementRef, Input, ViewChild, inject, } from '@angular/core';\nimport { FormBuilder, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';\nimport { isBase64UploadAdapter } from './ckEditorUpload';\nimport { ConfigStateService, CoreModule, RestService } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport ClassicEditor from '@ckeditor/ckeditor5-build-classic';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/zh-cn.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/zh.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/de.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/de-ch.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/ar';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/cs.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/hi.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/fi.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/hu.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/fr.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/it.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/en-gb.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/pt-br.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/sk';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/ja.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/es.js';\nimport '@ckeditor/ckeditor5-build-classic/build/translations/vi.js';\nimport { CKEditorModule } from '@ckeditor/ckeditor5-angular';\n\n\n@Component({\n selector: 'df-ck-editor-control',\n templateUrl: './ck-editor-control.component.html',\n styleUrls: ['./ck-editor-control.component.scss'],\n standalone: true,\n imports: [\n CKEditorModule,\n FormsModule,\n CoreModule,\n ThemeSharedModule,\n ReactiveFormsModule,\n ]\n})\nexport class CkEditorControlComponent {\n // public Editor ;\n public Editor = ClassicEditor;\n languagesMap = {\n ar: 'ar',\n cs: 'cs',\n en: 'en',\n hi: 'hi',\n fi: 'fi',\n hu: 'hu',\n fr: 'fr',\n it: 'it',\n 'en-GB': 'en-gb',\n 'pt-BR': 'pt-br',\n 'zh-Hant': 'zh',\n 'zh-Hans': 'zh-cn',\n tr: 'tr',\n sk: 'sk',\n 'de-DE': 'de',\n es: 'es',\n ja: 'ja',\n vi: 'vi',\n }\n\n private fb = inject(FormBuilder)\n private restService: RestService = inject(RestService)\n private config: ConfigStateService = inject(ConfigStateService)\n\n\n\n constructor() {\n const currentCulture = this.config.getOne(\"localization\")?.currentCulture?.name;\n this.editorConfig = {\n language: this.languagesMap[currentCulture],\n placeholder: '',\n toolbar: {\n removeItems: ['mediaEmbed','insertTable','undo','redo'],\n shouldNotGroupWhenFull: true\n },\n styles: [\n 'alignCenter',\n 'alignLeft',\n 'alignRight'\n ],\n image: {\n toolbar: [\n 'imageTextAlternative', 'toggleImageCaption', '|',\n 'imageStyle:inline', 'imageStyle:wrapText', 'imageStyle:breakText', 'imageStyle:side', '|',\n , 'resizeImage'\n ],\n insert: {\n integrations: [\n 'insertImageViaUrl'\n ]\n }\n }\n }\n }\n\n\n /**富文本配置 */\n editorConfig = {}\n //**富文本加载完成 */\n public onReady(editor: any): void {\n let that = this\n editor.plugins.get('FileRepository').createUploadAdapter = function (loader: any) {\n return new isBase64UploadAdapter(loader, that.imagesContainerName, that.restService);\n };\n\n }\n /**富文本内容改变 */\n public onChange({ editor }: any) {\n }\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n this.dataLoaded()\n }\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n this.dataLoaded()\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n this.dataLoaded()\n }\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v;\n this.dataLoaded()\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup\n }\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n /**图片容器名称 */\n imagesContainerName: any\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n let newControl = this.fb.control(this._selected ? this._selected : this._fields.field.formConfiguration['Ckeditor.InitialContent'], ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n this.imagesContainerName = this._fields.field.formConfiguration['Ckeditor.ImagesContainerName']\n resolve(true)\n })\n }\n}\n","<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-2\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <ckeditor [editor]=\"Editor\" [config]=\"editorConfig\" formControlName=\"{{_fields.field.name}}\"\n (ready)=\"onReady($event)\" (change)=\"onChange($event)\" required=\"\" name=\"overview\"></ckeditor>\n <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","export enum DateEditInterfaces {\n /// <summary>\n /// Only date is allowed to be entered.\n /// </summary>\n Date = 0,\n\n /// <summary>\n /// Both date and time are allowed to be entered.\n /// </summary>\n DateTime = 1,\n\n /// <summary>\n /// Allowed to select only year and month.\n /// </summary>\n Month = 2\n}\n","import { FormControl, Validators } from \"@angular/forms\";\r\nimport { DateEditInterfaces } from \"../../../enums/date-edit-interfaces\";\r\n\r\nexport class DateEditConfig {\r\n\r\n\r\n\r\n /**日期格式 */\r\n 'DateEdit.InputMode': any = [DateEditInterfaces.Date, []];\r\n /**最小值 */\r\n 'DateEdit.Min': any = ['', []];\r\n /**最大值 */\r\n 'DateEdit.Max': any = ['', []];\r\n\r\n constructor(data?: DateEditConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, } from '@angular/forms';\nimport { DateEditConfig } from './date-edit-config';\nimport { DateEditInterfaces } from '../../../enums/date-edit-interfaces';\n\n@Component({\n selector: 'df-date-edit-config',\n templateUrl: './date-edit-config.component.html',\n styleUrls: ['./date-edit-config.component.scss']\n})\nexport class DateEditConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n _DateEditInterfaces=DateEditInterfaces\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new DateEditConfig()))\n if (this._selected&&this._selected.formControlName==this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n\n} \n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::DateEditMode' | abpLocalization}}</label>\n <div>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"radio\" [value]=\"_DateEditInterfaces.Date\"\n formControlName=\"DateEdit.InputMode\" id=\"flexRadioDefault1\">\n <label class=\"form-check-label\" for=\"flexRadioDefault1\">\n {{'DigniteAbpForms::Date' | abpLocalization}}\n </label>\n </div>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"radio\" [value]=\"_DateEditInterfaces.DateTime\"\n formControlName=\"DateEdit.InputMode\" id=\"flexRadioDefault2\">\n <label class=\"form-check-label\" for=\"flexRadioDefault2\">\n {{'DigniteAbpForms::DateTime' | abpLocalization}}\n </label>\n </div>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"radio\" [value]=\"_DateEditInterfaces.Month\"\n formControlName=\"DateEdit.InputMode\" id=\"flexRadioDefault3\">\n <label class=\"form-check-label\" for=\"flexRadioDefault3\">\n {{'DigniteAbpForms::Month' | abpLocalization}}\n </label>\n </div>\n </div>\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::Min' | abpLocalization}}</label>\n <input type=\"datetime-local\" class=\"form-control\" step=\"1\" formControlName=\"DateEdit.Min\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::Max' | abpLocalization}}</label>\n <input type=\"datetime-local\" class=\"form-control\" step=\"1\" formControlName=\"DateEdit.Max\">\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>","import { Component, ElementRef, Input, ViewChild,ChangeDetectorRef } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { DateEditInterfaces } from '../../../enums/date-edit-interfaces';\n \n@Component({\n selector: 'df-date-edit-control',\n templateUrl: './date-edit-control.component.html',\n styleUrls: ['./date-edit-control.component.scss']\n})\nexport class DateEditControlComponent {\n\n constructor(\n private fb: FormBuilder,\n private cdr: ChangeDetectorRef \n ) {\n\n }\n _DateEditInterfaces=DateEditInterfaces\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n this.dataLoaded()\n }\n\n public get entity(): any {\n return this._entity\n }\n\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n this.dataLoaded()\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n this.dataLoaded()\n }\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v ;\n this.dataLoaded()\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup\n }\n get fieldInput() { return this.extraProperties.get(this._fields.field.name); }\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity) {\n await this.AfterInit()\n this.cdr.detectChanges(); \n this.submitclick.nativeElement.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n let formConfiguration=this._fields.field.formConfiguration\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n if (formConfiguration['DateEdit.Min']) {\n ValidatorsArray.push(Validators.min(formConfiguration['DateEdit.Min']))\n }\n if (formConfiguration['DateEdit.Max']) {\n ValidatorsArray.push(Validators.max(formConfiguration['DateEdit.Max']))\n }\n \n let newControl = this.fb.control(this._selected, ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n\n resolve(true)\n })\n }\n}","<form [formGroup]=\"_entity\">\n <div [formGroupName]=\"_parentFiledName\">\n <div class=\"mb-2\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n\n <ng-container *ngIf=\"_fields.field.formConfiguration['DateEdit.InputMode'] === _DateEditInterfaces.Date\">\n <input type=\"date\" class=\"form-control\" step=\"1\" formControlName=\"{{_fields.field.name}}\"\n [min]=\"_fields.field.formConfiguration['DateEdit.Min']\"\n [max]=\"_fields.field.formConfiguration['DateEdit.Max']\" />\n </ng-container>\n <ng-container\n *ngIf=\"_fields.field.formConfiguration['DateEdit.InputMode'] === _DateEditInterfaces.DateTime\">\n <input type=\"datetime-local\" class=\"form-control\" step=\"1\" formControlName=\"{{_fields.field.name}}\"\n [min]=\"_fields.field.formConfiguration['DateEdit.Min']\"\n [max]=\"_fields.field.formConfiguration['DateEdit.Max']\" />\n </ng-container>\n <ng-container *ngIf=\"_fields.field.formConfiguration['DateEdit.InputMode'] === _DateEditInterfaces.Month\">\n <input type=\"month\" class=\"form-control\" step=\"1\" formControlName=\"{{_fields.field.name}}\"\n [min]=\"_fields.field.formConfiguration['DateEdit.Min']\"\n [max]=\"_fields.field.formConfiguration['DateEdit.Max']\" />\n </ng-container>\n <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","import { FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class FileExplorerConfig {\r\n\r\n\r\n /**文件容器名称 */\r\n 'FileExplorer.FileContainerName': any = ['', [Validators.required]];\r\n /**多选 */\r\n 'FileExplorer.UploadFileMultiple': any = [false, []];\r\n \r\n\r\n constructor(data?: FileExplorerConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup } from '@angular/forms';\nimport { FileExplorerConfig } from './file-explorer-config';\n\n@Component({\n selector: 'df-file-explorer-config',\n templateUrl: './file-explorer-config.component.html',\n styleUrls: ['./file-explorer-config.component.scss']\n})\nexport class FileExplorerConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit()\n this.submitclick?.nativeElement?.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new FileExplorerConfig()))\n if (this._selected && this._selected.formControlName == this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n}\n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsFileExplorer::FileContainerName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"FileExplorer.FileContainerName\">\n </div>\n <div class=\"mb-2\">\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"checkbox\" formControlName=\"FileExplorer.UploadFileMultiple\" id=\"flexRadioDefault1\">\n <label class=\"form-check-label\" for=\"flexRadioDefault1\">\n {{'DigniteAbpDynamicFormsFileExplorer::UploadFileMultiple' | abpLocalization}}\n </label>\n </div>\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\n\n\n@Component({\n selector: 'df-file-explorer-control',\n templateUrl: './file-explorer-control.component.html',\n styleUrls: ['./file-explorer-control.component.scss']\n})\nexport class FileExplorerControlComponent {\n\n constructor(\n private fb: FormBuilder,\n ) {\n\n }\n\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n if(v) this.dataLoaded();\n }\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n if(v) this.dataLoaded();\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n if(v) this.dataLoaded();\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n if(v&&v.length>0) this.dataLoaded();\n }\n\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup\n }\n\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity&&this._parentFiledName) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n /**字段配置 */\n formConfiguration: any = ''\n /**文件容器名称 */\n FileContainerName: any = ''\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n this.formConfiguration = this._fields.field.formConfiguration\n this.FileContainerName = this.formConfiguration['FileExplorer.FileContainerName']\n if(this._selected&&this._selected.length>0){\n this.selectedFileGroup=this._selected\n }\n let newControl = this.fb.control(this._selected, ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n resolve(true)\n })\n }\n\n\n /**选择文件-弹窗的-已选定的文件 */\n selectedFileGroup:any[]=[]\n\n /**_selectedFile改变回调 */\n _selectedFileChange(event) {\n this.selectedFileGroup = event\n let fieldName=this._fields.field.name\n let obj={}\n obj[fieldName]=event\n this.extraProperties.patchValue(obj)\n }\n\n}\n","<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-2\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <fe-file-picker [selectFormFile]=\"selectedFileGroup\" [multiple]=\"formConfiguration['FileExplorer.UploadFileMultiple']\"\n (selectedFileChange)=\"_selectedFileChange($event)\"></fe-file-picker>\n <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","import { FormArray, FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class SelectConfig {\r\n\r\n\r\n /**空值文本 */\r\n 'Select.NullText': any = ['', []];\r\n //多选\r\n 'Select.Multiple': any = [false, []];\r\n // 选项\r\n 'Select.Options': any = new FormArray([])\r\n\r\n constructor(data?: SelectConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","import { Injectable } from '@angular/core';\nimport { pinyin } from 'pinyin-pro';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DfApiService {\n\n constructor() { }\n\n /**\n * 识别中文转化为拼音,固定返回类型\n * 汉字转拼音\n * 大写转小写\n * \n * */\n chineseToPinyin(value: any) {\n //去除字符串中所有的空格\n // let val = value\n let val = value.replaceAll(' ', \"-\")\n let array = val.split('')\n let newArray = []\n array.forEach((el: any, index: any) => {\n //转化为小写\n let elChange = el.toLowerCase()\n let isChinese = (str) => {\n return /^[\\u4e00-\\u9fa5]+$/.test(str);\n }\n if (isChinese(elChange)) {\n const resultWithoutTone = pinyin(elChange, { toneType: 'none', type: 'array' });\n elChange = resultWithoutTone.toString() \n if (index < array.length - 1) elChange+='-'\n };\n newArray.push(elChange)\n });\n let pinyinstr = newArray.join('')\n return pinyinstr || val\n }\n\n /**获取图片的本地连接 */\n getImageLacolBase64Url(file: File) {\n return new Promise((resolve, rejects) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = (e: any) => {\n resolve(e.target.result)\n };\n reader.onerror = error => rejects(error);\n })\n }\n\n /**\n * 深拷贝--方法 */\n deepClone(obj) {\n if (typeof obj !== 'object' || obj === null) return obj;\n const result = Array.isArray(obj) ? [] : {};\n for (let key in obj) {\n if (obj.hasOwnProperty(key)) {\n if (typeof obj[key] === 'object' && obj[key] !== null) {\n if (obj[key] instanceof Date) {\n result[key] = new Date(obj[key].getTime());\n } else if (obj[key] instanceof RegExp) {\n result[key] = new RegExp(obj[key]);\n } else {\n result[key] = this.deepClone(obj[key]);\n }\n } else {\n result[key] = obj[key];\n }\n }\n }\n return result;\n }\n\n}\n","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormArray, FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { SelectConfig } from './select-config';\nimport { DfApiService } from '../../../services';\n\n@Component({\n selector: 'df-select-config',\n\n templateUrl: './select-config.component.html',\n styleUrls: ['./select-config.component.scss']\n})\nexport class SelectConfigComponent {\n constructor(\n private fb: FormBuilder,\n private _DfApiService: DfApiService,\n ) { }\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n get SelectOptions() {\n return this.formConfiguration.controls['Select.Options'] as FormArray\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n\n }\n }\n /**增加选项 */\n addSelectOptions() {\n this.SelectOptions.push(new FormGroup({\n Text: new FormControl('', Validators.required),\n Value: new FormControl('', Validators.required),\n Selected: new FormControl(false)\n }))\n }\n /**删除某个选项 */\n deleteSelectOptions(index) {\n this.SelectOptions.removeAt(index)\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new SelectConfig()))\n if (this._selected && this._selected.formControlName == this._type) {\n this._selected.formConfiguration['Select.Options']?.forEach(el => {\n this.addSelectOptions()\n });\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration,\n })\n } else {\n this.addSelectOptions()\n }\n resolve(true)\n })\n }\n\n textChange(event,index){\n let SelectOptionsItem=this.SelectOptions.at(index)\n let value=event.target.value\n if(SelectOptionsItem.get('Value').value) return\n SelectOptionsItem.patchValue({\n Value:this._DfApiService.chineseToPinyin(value)\n })\n }\n}\n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::SelectListItem' | abpLocalization}}</label>\n <table class=\"table\">\n <thead>\n <tr>\n <th scope=\"col\">{{'DigniteAbpForms::SelectListItemText' | abpLocalization}}</th>\n <th scope=\"col\">{{'DigniteAbpForms::SelectListItemValue' | abpLocalization}}</th>\n <th scope=\"col\">{{'DigniteAbpForms::SelectListItemValue' | abpLocalization}}</th>\n <th scope=\"col\" style=\"width: 1%;\">\n <button class=\"btn btn-light btn-sm\" (click.stop)=\"addSelectOptions()\">\n <i class=\"fas fa-plus-circle\"></i>\n </button>\n </th>\n </tr>\n </thead>\n <tbody formArrayName=\"Select.Options\">\n <ng-container *ngFor=\"let item of SelectOptions.controls;let i=index\">\n <tr [formGroupName]=\"i\">\n <td><input type=\"text\" class=\"form-control\" formControlName=\"Text\" (change)=\"textChange($event,i)\"></td>\n <td><input type=\"text\" class=\"form-control\" formControlName=\"Value\"></td>\n <td>\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"checkbox\" formControlName=\"Selected\" id=\"selected\">\n </div>\n </td>\n <td scope=\"row\" style=\"width: 1%;\">\n <button class=\"btn btn-light btn-sm\" (click.stop)=\"deleteSelectOptions(i)\">\n <i class=\"fas fa-minus\"></i>\n </button>\n </td>\n </tr> \n </ng-container>\n \n \n </tbody>\n </table>\n </div>\n\n\n\n <div class=\"mb-2\">\n <label class=\"form-label\">{{'DigniteAbpForms::NullText' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"Select.NullText\">\n </div>\n <div class=\"mb-2\">\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"checkbox\" formControlName=\"Select.Multiple\"\n id=\"Multiple\">\n <label class=\"form-check-label\" for=\"Multiple\">\n {{'DigniteAbpForms::Multiple' | abpLocalization}}\n </label>\n </div>\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\n\n@Component({\n selector: 'df-select-control',\n templateUrl: './select-control.component.html',\n styleUrls: ['./select-control.component.scss']\n})\nexport class SelectControlComponent {\n\n constructor(\n private fb: FormBuilder,\n ) {\n }\n\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n this.dataLoaded()\n }\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n this.dataLoaded()\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n this.dataLoaded()\n }\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n this.dataLoaded()\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup\n }\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n\n\n }\n }\n formConfiguration: any = ''\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n this.formConfiguration = this._fields.field.formConfiguration\n if (!this._selected) {\n const isMultiple = this.formConfiguration['Select.Multiple'];\n\n let selectValue = isMultiple ? [] : ''\n this.formConfiguration['Select.Options'].forEach(el => {\n if (el.Selected) {\n selectValue = isMultiple ? [...selectValue, el.value] : [el.value];\n }\n });\n\n this._selected = selectValue;\n }\n let newControl = this.fb.control(this._selected, ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n resolve(true)\n })\n }\n\n\n}\n","<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-2\">\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 </ng-container>\n <ng-template #elseTemplate>\n <select class=\"form-select\" [multiple]=\"false\"\n formControlName=\"{{_fields.field.name}}\">\n <option>{{formConfiguration['Select.NullText']}}</option>\n <ng-container *ngFor=\"let item of formConfiguration['Select.Options'];let i =index\">\n <option [value]=\"item.Value\" >{{item.Text}}</option>\n </ng-container>\n </select>\n </ng-template>\n <div class=\"form-text\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</div>\n </div>\n\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","// import { TableConfigComponent, TableControlComponent, MatrixConfigComponent, MatrixControlComponent } from \"@dignite-ng/expand.cms\";\r\nimport { FieldControlGroupInterfaces } from \"../../interfaces\";\r\nimport { CkEditorConfigComponent, CkEditorControlComponent } from \"./ck-editor\";\r\nimport { DateEditConfigComponent } from \"./date-edit/date-edit-config.component\";\r\nimport { DateEditControlComponent } from \"./date-edit/date-edit-control.component\";\r\nimport { FileExplorerConfigComponent, FileExplorerControlComponent } from \"./file-explorer\";\r\nimport { NumbericEditConfigComponent } from \"./numeric-edit/numberic-edit-config.component\";\r\nimport { NumbericEditControlComponent } from \"./numeric-edit/numberic-edit-control.component\";\r\nimport { SelectConfigComponent, SelectControlComponent } from \"./select\";\r\nimport { SwitchConfigComponent, SwitchControlComponent } from \"./switch\";\r\nimport { TextEditComponent, TextEditConfigComponent } from \"./text-edit\";\r\n\r\n/**\r\n * 表单控件分组-包含配置,控件,显示的数组\r\n */\r\nexport const FieldControlGroup: FieldControlGroupInterfaces[] = [\r\n {\r\n displayName: '文本框',\r\n name: 'TextEdit',\r\n fieldConfigComponent: TextEditConfigComponent,\r\n fieldComponent: TextEditComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n }, {\r\n displayName: '开关',\r\n name: 'Switch',\r\n fieldConfigComponent: SwitchConfigComponent,\r\n fieldComponent: SwitchControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n }, {\r\n displayName: '选择',\r\n name: 'Select',\r\n fieldConfigComponent: SelectConfigComponent,\r\n fieldComponent: SelectControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n }, {\r\n displayName: '数字',\r\n name: 'NumericEdit',\r\n fieldConfigComponent: NumbericEditConfigComponent,\r\n fieldComponent: NumbericEditControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n }, {\r\n displayName: '日期',\r\n name: 'DateEdit',\r\n fieldConfigComponent: DateEditConfigComponent,\r\n fieldComponent: DateEditControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n },\r\n {\r\n displayName: '文件管理',\r\n name: 'FileExplorer',\r\n fieldConfigComponent: FileExplorerConfigComponent,\r\n fieldComponent: FileExplorerControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n }, {\r\n displayName: 'CkEditor',\r\n name: 'CkEditor',\r\n fieldConfigComponent: CkEditorConfigComponent,\r\n fieldComponent: CkEditorControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n },\r\n];\r\nexport function getExcludeAssignControl(typeName) {\r\n // return FieldControlGroup.filter(el => el.name !== typeName)\r\n return FieldControlGroup\r\n}\r\n\r\nexport function AddFieldControlGroup(array=[]) {\r\n FieldControlGroup.push(...array)\r\n}","import {Component,Input, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport type{ FieldControlGroupInterfaces } from '../../interfaces';\nimport { FieldControlGroup } from '../from';\n\n@Component({\n selector: 'df-dynamic',\n templateUrl: './dynamic.component.html',\n styleUrls: ['./dynamic.component.scss']\n})\nexport class DynamicComponent {\n\n\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v || '';\n \n if(v) this.dataLoaded(1)\n }\n\n\n /**表单控件类型 */\n _type: string\n @Input()\n public set type(v: string) {\n this._type = v;\n if(v) this.dataLoaded(2)\n }\n\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n if(v) {\n this._entity = v;\n this.dataLoaded(3)\n }\n }\n /**语言 */\n _culture: FormGroup | undefined\n @Input()\n public set culture(v: any) {\n this._culture = v;\n if(v) this.dataLoaded(6)\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n if(v) this.dataLoaded(4)\n }\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n if(v) this.dataLoaded(5)\n }\n\n\n /**表单控件模板-动态表单配置组件 */\n @ViewChild('FormControlRef', { read: ViewContainerRef, static: true }) FormControlRef: ViewContainerRef;\n\n /**表单控件模板-动态表单组件 */\n @ViewChild('FormComponentsRef', { read: ViewContainerRef, static: true }) FormComponentsRef: ViewContainerRef;\n\n /**表单控件组 */\n _fieldControlGroup: FieldControlGroupInterfaces[] = FieldControlGroup\n\n\n /**数据加载完成 */\n dataLoaded(val) {\n if (this._entity) {\n if (this._type) {\n let fieldControlItem = this._fieldControlGroup.find(el => el.name === this._type)\n this.loadfieldConfigComponent(fieldControlItem)\n }\n if (this._fields && this._parentFiledName) {\n /**表单控件组中的项 */\n let fieldControlItem = this._fieldControlGroup.find(el => el.name === this._fields.field.formControlName)\n this.loadfieldComponent(fieldControlItem)\n }\n }\n }\n\n\n\n /**加载动态表单配置组件 */\n loadfieldConfigComponent(FieldControlItem?: FieldControlGroupInterfaces) {\n //清空了容器中的所有组件\n this.FormControlRef?.clear();\n if (!FieldControlItem || !FieldControlItem.fieldConfigComponent) return\n //在容器中创建组件\n const { instance } = this.FormControlRef?.createComponent(FieldControlItem.fieldConfigComponent);//创建组件模板\n /**向创建的组件模板中传值 */\n instance.Entity = this._entity\n instance.selected = this._selected\n instance.type = this._type\n }\n\n /**加载动态表单组件 */\n loadfieldComponent(FieldControlItem?: FieldControlGroupInterfaces) {\n // this.FormControlRef.clear\n //清空了容器中的所有组件\n this.FormComponentsRef?.clear();\n if (!FieldControlItem || !FieldControlItem.fieldComponent) return\n //在容器中创建组件\n const { instance } = this.FormComponentsRef?.createComponent(FieldControlItem.fieldComponent);//创建组件模板\n \n // this.formConfigCompoent = instance\n /**向创建的组件模板中传值 */\n instance.entity = this._entity\n instance.fields = this._fields\n instance.parentFiledName = this._parentFiledName\n instance.selected = this._selected\n instance.culture = this._culture\n }\n}\n","<template #FormControlRef></template>\n<template #FormComponentsRef></template>","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NzTreeModule } from 'ng-zorro-antd/tree';\nimport { FileExplorerModule } from '@dignite-ng/expand.file-explorer';\nimport {\n TextEditConfigComponent,\n TextEditComponent,\n SwitchConfigComponent,\n SwitchControlComponent,\n NumbericEditConfigComponent,\n NumbericEditControlComponent,\n DateEditConfigComponent,\n DateEditControlComponent,\n FileExplorerConfigComponent,\n FileExplorerControlComponent,\n CkEditorConfigComponent,\n SelectConfigComponent,\n SelectControlComponent,\n AddFieldControlGroup,\n DynamicComponent,\n} from './components';\n\n\n\n@NgModule({\n declarations: [\n TextEditConfigComponent,\n TextEditComponent,\n SwitchConfigComponent,\n SwitchControlComponent,\n NumbericEditConfigComponent,\n NumbericEditControlComponent,\n DateEditConfigComponent,\n DateEditControlComponent,\n FileExplorerConfigComponent,\n FileExplorerControlComponent,\n CkEditorConfigComponent,\n SelectConfigComponent,\n SelectControlComponent,\n DynamicComponent,\n\n ],\n imports: [\n FormsModule,\n CoreModule,\n ThemeSharedModule,\n ReactiveFormsModule,\n NgbDropdownModule,\n NzTreeModule,\n FileExplorerModule,\n // DynamicComponent\n ],\n exports: [\n TextEditConfigComponent,\n TextEditComponent,\n SwitchConfigComponent,\n SwitchControlComponent,\n NumbericEditConfigComponent,\n NumbericEditControlComponent,\n DateEditConfigComponent,\n DateEditControlComponent,\n FileExplorerConfigComponent,\n FileExplorerControlComponent,\n CkEditorConfigComponent,\n SelectConfigComponent,\n SelectControlComponent,\n DynamicComponent,\n ],\n})\nexport class DynamicFormModule {\n static forRoot(config?: any): ModuleWithProviders<DynamicFormModule> {\n AddFieldControlGroup(config.cmsFieldControlGroup)\n return {\n ngModule: DynamicFormModule,\n providers: []\n };\n }\n}\n","/*\n * Public API Surface of dynamic-form\n */\n\nexport * from './lib/dynamic-form.module';\nexport * from './lib/components';\nexport * from './lib/interfaces';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i1","i3","i4","i2.DfApiService","i5"],"mappings":"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"}