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
JavaScript
/**
* @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==