UNPKG

ngx-schema-forms

Version:

New features: - Ajv schema validator. - Angular forms compatible: Property tree is created using FormGroup, FormArray and FormControl classes. - Array now properly loads initial data from model. - WidgetTyep: WidgetRegistry now supports WidgetType, now wo

129 lines (128 loc) 14 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc */ import * as tslib_1 from "tslib"; import { NgModule } from '@angular/core'; import { CommonModule } from '@angular/common'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { FormElementComponent } from './form/form-element.component'; import { FormComponent } from './form/form.component'; import { FormPropertyWidgetChooserDirective } from './form/form-property-widget-chooser.directive'; import { FormFieldsetWidgetChooserDirective } from './form/form-fieldset-widget-chooser.directive'; import { FormButtonWidgetChooserDirective } from './form/form-button-widget-chooser.directive'; import { FormFieldComponent } from './form/form-field.component'; import { ArrayComponent } from './widgets/defaults/array/array.component'; import { ButtonComponent } from './widgets/defaults/button/button.component'; import { ObjectComponent } from './widgets/defaults/object/object.component'; import { CheckboxComponent } from './widgets/defaults/checkbox/checkbox.component'; import { FileComponent } from './widgets/defaults/file/file.component'; import { IntegerComponent } from './widgets/defaults/integer/integer.component'; import { TextAreaComponent } from './widgets/defaults/textarea/textarea.component'; import { RadioComponent } from './widgets/defaults/radio/radio.component'; import { RangeComponent } from './widgets/defaults/range/range.component'; import { SelectComponent } from './widgets/defaults/select/select.component'; import { StringComponent } from './widgets/defaults/string/string.component'; import { FieldsetComponent } from './widgets/defaults/fieldset/fieldset.component'; import { TabsComponent } from './widgets/defaults/tabs/tabs.component'; import { DefaultWidgetRegistry } from './widgets/defaults/defaultwidgetregistry'; import { DefaultWidget } from './default.widget'; import { WidgetRegistry } from './widgetregistry'; import { SchemaValidatorFactory } from './schemavalidatorfactory'; import { AjvSchemaValidatorFactory } from './ajv-schema-validator-factory'; /** @type {?} */ var moduleProviders = [ { provide: WidgetRegistry, useClass: DefaultWidgetRegistry }, { provide: SchemaValidatorFactory, useClass: AjvSchemaValidatorFactory } ]; var SchemaFormModule = /** @class */ (function () { function SchemaFormModule() { } /** * @return {?} */ SchemaFormModule.forRoot = /** * @return {?} */ function () { return { ngModule: SchemaFormModule, providers: tslib_1.__spread(moduleProviders) }; }; SchemaFormModule.decorators = [ { type: NgModule, args: [{ imports: [CommonModule, FormsModule, ReactiveFormsModule], declarations: [ FormElementComponent, FormButtonWidgetChooserDirective, FormComponent, FormPropertyWidgetChooserDirective, FormFieldsetWidgetChooserDirective, DefaultWidget, ArrayComponent, ButtonComponent, ObjectComponent, CheckboxComponent, FileComponent, IntegerComponent, TextAreaComponent, RadioComponent, RangeComponent, SelectComponent, StringComponent, FieldsetComponent, FormFieldComponent, TabsComponent ], entryComponents: [ FormElementComponent, FormComponent, FormFieldComponent, ArrayComponent, ButtonComponent, ObjectComponent, CheckboxComponent, FileComponent, IntegerComponent, TextAreaComponent, RadioComponent, RangeComponent, SelectComponent, StringComponent, FieldsetComponent, TabsComponent ], exports: [ FormComponent, FormElementComponent, FormButtonWidgetChooserDirective, FormFieldComponent, FormPropertyWidgetChooserDirective, ArrayComponent, ButtonComponent, ObjectComponent, CheckboxComponent, FileComponent, IntegerComponent, TextAreaComponent, RadioComponent, RangeComponent, SelectComponent, StringComponent, FieldsetComponent, FormFieldsetWidgetChooserDirective, TabsComponent ] },] } ]; return SchemaFormModule; }()); export { SchemaFormModule }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLWZvcm0ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LXNjaGVtYS1mb3Jtcy8iLCJzb3VyY2VzIjpbImxpYi9zY2hlbWEtZm9ybS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUF1QixNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQ0wsa0NBQWtDLEVBQ25DLE1BQU0sK0NBQStDLENBQUM7QUFDdkQsT0FBTyxFQUNMLGtDQUFrQyxFQUNuQyxNQUFNLCtDQUErQyxDQUFDO0FBQ3ZELE9BQU8sRUFDTCxnQ0FBZ0MsRUFDakMsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNuRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbkYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ25GLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNqRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFakQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQUUzRSxJQUFNLGVBQWUsR0FBRztJQUN0QjtRQUNFLE9BQU8sRUFBRSxjQUFjO1FBQ3ZCLFFBQVEsRUFBRSxxQkFBcUI7S0FDaEM7SUFDRDtRQUNFLE9BQU8sRUFBRSxzQkFBc0I7UUFDL0IsUUFBUSxFQUFFLHlCQUF5QjtLQUNwQztDQUNGLENBQUM7Ozs7Ozs7SUFtRU8sd0JBQU87OztJQUFkO1FBQ0UsTUFBTSxDQUFDO1lBQ0wsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQixTQUFTLG1CQUFNLGVBQWUsQ0FBQztTQUNoQyxDQUFDO0tBQ0g7O2dCQXRFRixRQUFRLFNBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsQ0FBQztvQkFDekQsWUFBWSxFQUFFO3dCQUNaLG9CQUFvQjt3QkFDcEIsZ0NBQWdDO3dCQUNoQyxhQUFhO3dCQUNiLGtDQUFrQzt3QkFDbEMsa0NBQWtDO3dCQUNsQyxhQUFhO3dCQUNiLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsY0FBYzt3QkFDZCxjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsYUFBYTtxQkFDZDtvQkFDRCxlQUFlLEVBQUU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixhQUFhO3dCQUNiLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQixjQUFjO3dCQUNkLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsYUFBYTtxQkFDZDtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsYUFBYTt3QkFDYixvQkFBb0I7d0JBQ3BCLGdDQUFnQzt3QkFDaEMsa0JBQWtCO3dCQUNsQixrQ0FBa0M7d0JBQ2xDLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsY0FBYzt3QkFDZCxjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixpQkFBaUI7d0JBQ2pCLGtDQUFrQzt3QkFDbEMsYUFBYTtxQkFDZDtpQkFDRjs7MkJBOUdEOztTQStHYSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBGb3JtRWxlbWVudENvbXBvbmVudCB9IGZyb20gJy4vZm9ybS9mb3JtLWVsZW1lbnQuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1Db21wb25lbnQgfSBmcm9tICcuL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgRm9ybVByb3BlcnR5V2lkZ2V0Q2hvb3NlckRpcmVjdGl2ZVxufSBmcm9tICcuL2Zvcm0vZm9ybS1wcm9wZXJ0eS13aWRnZXQtY2hvb3Nlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHtcbiAgRm9ybUZpZWxkc2V0V2lkZ2V0Q2hvb3NlckRpcmVjdGl2ZVxufSBmcm9tICcuL2Zvcm0vZm9ybS1maWVsZHNldC13aWRnZXQtY2hvb3Nlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHtcbiAgRm9ybUJ1dHRvbldpZGdldENob29zZXJEaXJlY3RpdmVcbn0gZnJvbSAnLi9mb3JtL2Zvcm0tYnV0dG9uLXdpZGdldC1jaG9vc2VyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0vZm9ybS1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXJyYXlDb21wb25lbnQgfSBmcm9tICcuL3dpZGdldHMvZGVmYXVsdHMvYXJyYXkvYXJyYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vd2lkZ2V0cy9kZWZhdWx0cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPYmplY3RDb21wb25lbnQgfSBmcm9tICcuL3dpZGdldHMvZGVmYXVsdHMvb2JqZWN0L29iamVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuL3dpZGdldHMvZGVmYXVsdHMvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcbmltcG9ydCB7IEZpbGVDb21wb25lbnQgfSBmcm9tICcuL3dpZGdldHMvZGVmYXVsdHMvZmlsZS9maWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbnRlZ2VyQ29tcG9uZW50IH0gZnJvbSAnLi93aWRnZXRzL2RlZmF1bHRzL2ludGVnZXIvaW50ZWdlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dEFyZWFDb21wb25lbnQgfSBmcm9tICcuL3dpZGdldHMvZGVmYXVsdHMvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50JztcbmltcG9ydCB7IFJhZGlvQ29tcG9uZW50IH0gZnJvbSAnLi93aWRnZXRzL2RlZmF1bHRzL3JhZGlvL3JhZGlvLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSYW5nZUNvbXBvbmVudCB9IGZyb20gJy4vd2lkZ2V0cy9kZWZhdWx0cy9yYW5nZS9yYW5nZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi93aWRnZXRzL2RlZmF1bHRzL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7IFN0cmluZ0NvbXBvbmVudCB9IGZyb20gJy4vd2lkZ2V0cy9kZWZhdWx0cy9zdHJpbmcvc3RyaW5nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWVsZHNldENvbXBvbmVudCB9IGZyb20gJy4vd2lkZ2V0cy9kZWZhdWx0cy9maWVsZHNldC9maWVsZHNldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFic0NvbXBvbmVudCB9IGZyb20gJy4vd2lkZ2V0cy9kZWZhdWx0cy90YWJzL3RhYnMuY29tcG9uZW50JztcbmltcG9ydCB7IERlZmF1bHRXaWRnZXRSZWdpc3RyeSB9IGZyb20gJy4vd2lkZ2V0cy9kZWZhdWx0cy9kZWZhdWx0d2lkZ2V0cmVnaXN0cnknO1xuaW1wb3J0IHsgRGVmYXVsdFdpZGdldCB9IGZyb20gJy4vZGVmYXVsdC53aWRnZXQnO1xuXG5pbXBvcnQgeyBXaWRnZXRSZWdpc3RyeSB9IGZyb20gJy4vd2lkZ2V0cmVnaXN0cnknO1xuaW1wb3J0IHsgU2NoZW1hVmFsaWRhdG9yRmFjdG9yeSB9IGZyb20gJy4vc2NoZW1hdmFsaWRhdG9yZmFjdG9yeSc7XG5pbXBvcnQgeyBBanZTY2hlbWFWYWxpZGF0b3JGYWN0b3J5IH0gZnJvbSAnLi9hanYtc2NoZW1hLXZhbGlkYXRvci1mYWN0b3J5JztcblxuY29uc3QgbW9kdWxlUHJvdmlkZXJzID0gW1xuICB7XG4gICAgcHJvdmlkZTogV2lkZ2V0UmVnaXN0cnksXG4gICAgdXNlQ2xhc3M6IERlZmF1bHRXaWRnZXRSZWdpc3RyeVxuICB9LFxuICB7XG4gICAgcHJvdmlkZTogU2NoZW1hVmFsaWRhdG9yRmFjdG9yeSxcbiAgICB1c2VDbGFzczogQWp2U2NoZW1hVmFsaWRhdG9yRmFjdG9yeVxuICB9XG5dO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEZvcm1FbGVtZW50Q29tcG9uZW50LFxuICAgIEZvcm1CdXR0b25XaWRnZXRDaG9vc2VyRGlyZWN0aXZlLFxuICAgIEZvcm1Db21wb25lbnQsXG4gICAgRm9ybVByb3BlcnR5V2lkZ2V0Q2hvb3NlckRpcmVjdGl2ZSxcbiAgICBGb3JtRmllbGRzZXRXaWRnZXRDaG9vc2VyRGlyZWN0aXZlLFxuICAgIERlZmF1bHRXaWRnZXQsXG4gICAgQXJyYXlDb21wb25lbnQsXG4gICAgQnV0dG9uQ29tcG9uZW50LFxuICAgIE9iamVjdENvbXBvbmVudCxcbiAgICBDaGVja2JveENvbXBvbmVudCxcbiAgICBGaWxlQ29tcG9uZW50LFxuICAgIEludGVnZXJDb21wb25lbnQsXG4gICAgVGV4dEFyZWFDb21wb25lbnQsXG4gICAgUmFkaW9Db21wb25lbnQsXG4gICAgUmFuZ2VDb21wb25lbnQsXG4gICAgU2VsZWN0Q29tcG9uZW50LFxuICAgIFN0cmluZ0NvbXBvbmVudCxcbiAgICBGaWVsZHNldENvbXBvbmVudCxcbiAgICBGb3JtRmllbGRDb21wb25lbnQsXG4gICAgVGFic0NvbXBvbmVudFxuICBdLFxuICBlbnRyeUNvbXBvbmVudHM6IFtcbiAgICBGb3JtRWxlbWVudENvbXBvbmVudCxcbiAgICBGb3JtQ29tcG9uZW50LFxuICAgIEZvcm1GaWVsZENvbXBvbmVudCxcbiAgICBBcnJheUNvbXBvbmVudCxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgT2JqZWN0Q29tcG9uZW50LFxuICAgIENoZWNrYm94Q29tcG9uZW50LFxuICAgIEZpbGVDb21wb25lbnQsXG4gICAgSW50ZWdlckNvbXBvbmVudCxcbiAgICBUZXh0QXJlYUNvbXBvbmVudCxcbiAgICBSYWRpb0NvbXBvbmVudCxcbiAgICBSYW5nZUNvbXBvbmVudCxcbiAgICBTZWxlY3RDb21wb25lbnQsXG4gICAgU3RyaW5nQ29tcG9uZW50LFxuICAgIEZpZWxkc2V0Q29tcG9uZW50LFxuICAgIFRhYnNDb21wb25lbnRcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEZvcm1Db21wb25lbnQsXG4gICAgRm9ybUVsZW1lbnRDb21wb25lbnQsXG4gICAgRm9ybUJ1dHRvbldpZGdldENob29zZXJEaXJlY3RpdmUsXG4gICAgRm9ybUZpZWxkQ29tcG9uZW50LFxuICAgIEZvcm1Qcm9wZXJ0eVdpZGdldENob29zZXJEaXJlY3RpdmUsXG4gICAgQXJyYXlDb21wb25lbnQsXG4gICAgQnV0dG9uQ29tcG9uZW50LFxuICAgIE9iamVjdENvbXBvbmVudCxcbiAgICBDaGVja2JveENvbXBvbmVudCxcbiAgICBGaWxlQ29tcG9uZW50LFxuICAgIEludGVnZXJDb21wb25lbnQsXG4gICAgVGV4dEFyZWFDb21wb25lbnQsXG4gICAgUmFkaW9Db21wb25lbnQsXG4gICAgUmFuZ2VDb21wb25lbnQsXG4gICAgU2VsZWN0Q29tcG9uZW50LFxuICAgIFN0cmluZ0NvbXBvbmVudCxcbiAgICBGaWVsZHNldENvbXBvbmVudCxcbiAgICBGb3JtRmllbGRzZXRXaWRnZXRDaG9vc2VyRGlyZWN0aXZlLFxuICAgIFRhYnNDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTY2hlbWFGb3JtTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVycyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBTY2hlbWFGb3JtTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbLi4ubW9kdWxlUHJvdmlkZXJzXVxuICAgIH07XG4gIH1cbn1cbiJdfQ==