Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 | 1x 1x 8x 2x 2x 2x 2x 1x 2x 8x 1x 3x 3x 1x 2x 2x 1x 2x 2x 1x 1x 1x 1x 1x | import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; import { ReactiveFormsModule } from '@angular/forms'; import { DynamicFormAction } from '../dynamic-form-action/dynamic-form-action'; import { DynamicFormActionHandler } from '../dynamic-form-action/dynamic-form-action-handler'; import { DynamicFormActionModule } from '../dynamic-form-action/dynamic-form-action.module'; import { DynamicFormConfigModule } from '../dynamic-form-config/dynamic-form-config.module'; import { DynamicFormElementModule } from '../dynamic-form-element/dynamic-form-element.module'; import { DynamicFormField } from '../dynamic-form-field/dynamic-form-field'; import { DynamicFormFieldType } from '../dynamic-form-field/dynamic-form-field-type'; import { DynamicFormFieldModule } from '../dynamic-form-field/dynamic-form-field.module'; import { dynamicFormLibrary } from '../dynamic-form-library/dynamic-form-library'; import { DynamicFormValidationModule } from '../dynamic-form-validation/dynamic-form-validation.module'; import { DynamicFormBuilder } from '../dynamic-form/dynamic-form.builder'; import { DynamicFormDictionary } from './dynamic-form-dictionary'; import { dynamicFormDictionaryFactory } from './dynamic-form-dictionary-factory'; import { dynamicFormDictionaryValidatorTypes } from './dynamic-form-dictionary-validator-type'; import { DynamicFormDictionaryComponent } from './dynamic-form-dictionary.component'; export const dynamicFormDictionaryType: DynamicFormFieldType = { type: 'dictionary', factory: dynamicFormDictionaryFactory, component: DynamicFormDictionaryComponent, libraryName: dynamicFormLibrary.name, }; export const dynamicFormDictionaryRegisterFieldHandlerFactory = ( formBuilder: DynamicFormBuilder, ): DynamicFormActionHandler<DynamicFormDictionary> => { const func = (field: DynamicFormDictionary, action: DynamicFormAction) => { const parent = action.parent as DynamicFormAction; const key = parent.dialog ? parent.dialog.model.key : formBuilder.createId(); const element = formBuilder.createFormDictionaryField(field, key); if (parent.dialog) { parent.closeDialog(); } return field.registerField(element); }; return { type: 'registerDictionaryField', elementFunc: getDynamicFormDictionary, func, libraryName: dynamicFormLibrary.name, }; }; export const getDynamicFormDictionary = (action: DynamicFormAction): DynamicFormDictionary => { const field = action.parent as DynamicFormField; if (field.fieldClassType === 'dictionary') { return field as DynamicFormDictionary; } const parentField = field.parent as DynamicFormField; return parentField && parentField.fieldClassType === 'dictionary' ? parentField as DynamicFormDictionary : undefined; }; export const dynamicFormDictionaryRemoveField = (field: DynamicFormDictionary, action: DynamicFormAction): void => { const childField = action.parent as DynamicFormField; if (field && childField && childField.key) { field.removeField(childField.key); } }; export const dynamicFormDictionaryRemoveFieldHandler: DynamicFormActionHandler<DynamicFormDictionary> = { type: 'removeDictionaryField', elementFunc: getDynamicFormDictionary, func: dynamicFormDictionaryRemoveField, libraryName: dynamicFormLibrary.name, }; export const dynamicFormDictionaryClearFields = (field: DynamicFormDictionary): void => field.clearFields(); export const dynamicFormDictionaryClearFieldsHandler: DynamicFormActionHandler<DynamicFormDictionary> = { type: 'clearDictionaryFields', func: dynamicFormDictionaryClearFields, libraryName: dynamicFormLibrary.name, }; @NgModule({ imports: [ CommonModule, ReactiveFormsModule, DynamicFormElementModule, DynamicFormFieldModule, DynamicFormConfigModule.withField(dynamicFormDictionaryType), DynamicFormValidationModule.withDictionaryValidators(dynamicFormDictionaryValidatorTypes), DynamicFormActionModule.withHandlers([ dynamicFormDictionaryRemoveFieldHandler, dynamicFormDictionaryClearFieldsHandler, ]), DynamicFormActionModule.withHandlerFactory(dynamicFormDictionaryRegisterFieldHandlerFactory, [ DynamicFormBuilder, ]), ], declarations: [ DynamicFormDictionaryComponent, ], exports: [ DynamicFormConfigModule, DynamicFormActionModule, DynamicFormDictionaryComponent, ], }) export class DynamicFormDictionaryModule {} |