@stemy/ngx-dynamic-form 13.3.2 → 13.3.3
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.
- package/esm2020/ngx-dynamic-form/common-types.mjs +1 -1
- package/esm2020/ngx-dynamic-form/components/base/dynamic-base-form-control-container.component.mjs +7 -5
- package/esm2020/ngx-dynamic-form/utils/customizer.mjs +15 -2
- package/esm2020/public_api.mjs +2 -2
- package/fesm2015/stemy-ngx-dynamic-form.mjs +21 -7
- package/fesm2015/stemy-ngx-dynamic-form.mjs.map +1 -1
- package/fesm2020/stemy-ngx-dynamic-form.mjs +21 -6
- package/fesm2020/stemy-ngx-dynamic-form.mjs.map +1 -1
- package/ngx-dynamic-form/common-types.d.ts +1 -1
- package/ngx-dynamic-form/components/base/dynamic-base-form-control-container.component.d.ts +3 -2
- package/ngx-dynamic-form/utils/customizer.d.ts +7 -3
- package/package.json +1 -1
- package/public_api.d.ts +1 -1
|
@@ -288,7 +288,20 @@ function createFormFile(id, config, layout) {
|
|
|
288
288
|
return new DynamicFileUploadModel(res, layout);
|
|
289
289
|
}
|
|
290
290
|
|
|
291
|
-
function
|
|
291
|
+
function getFormComponent(...types) {
|
|
292
|
+
const factory = cachedFactory(types);
|
|
293
|
+
return (model, injector) => {
|
|
294
|
+
const customizers = factory(injector);
|
|
295
|
+
for (const customizer of customizers) {
|
|
296
|
+
const component = customizer.getFormComponent(model);
|
|
297
|
+
if (component) {
|
|
298
|
+
return component;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
return null;
|
|
302
|
+
};
|
|
303
|
+
}
|
|
304
|
+
function customizeFormModel(...types) {
|
|
292
305
|
const factory = cachedFactory(types);
|
|
293
306
|
return async (property, schema, model, config, injector) => {
|
|
294
307
|
const customizers = factory(injector);
|
|
@@ -1334,17 +1347,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
1334
1347
|
}] } });
|
|
1335
1348
|
|
|
1336
1349
|
class DynamicBaseFormControlContainerComponent extends DynamicFormControlContainerComponent {
|
|
1337
|
-
constructor(form, cdr, cfr, layoutService, validationService, componentService, relationService) {
|
|
1350
|
+
constructor(form, cdr, injector, cfr, layoutService, validationService, componentService, relationService) {
|
|
1338
1351
|
super(cdr, cfr, layoutService, validationService, componentService, relationService);
|
|
1339
1352
|
this.form = form;
|
|
1340
1353
|
this.cdr = cdr;
|
|
1354
|
+
this.injector = injector;
|
|
1341
1355
|
this.context = null;
|
|
1342
1356
|
this.blur = new EventEmitter();
|
|
1343
1357
|
this.change = new EventEmitter();
|
|
1344
1358
|
this.focus = new EventEmitter();
|
|
1345
1359
|
}
|
|
1346
1360
|
get componentType() {
|
|
1347
|
-
return this.form.getComponentType(this.model
|
|
1361
|
+
return this.form.getComponentType?.(this.model, this.injector)
|
|
1362
|
+
?? this.componentService.getCustomComponentType(this.model);
|
|
1348
1363
|
}
|
|
1349
1364
|
get startTemplate() {
|
|
1350
1365
|
return (this.model.type == DYNAMIC_FORM_CONTROL_TYPE_ARRAY)
|
|
@@ -1403,7 +1418,7 @@ class DynamicBaseFormControlContainerComponent extends DynamicFormControlContain
|
|
|
1403
1418
|
component.initialize(this.changeDetectorRef);
|
|
1404
1419
|
}
|
|
1405
1420
|
}
|
|
1406
|
-
DynamicBaseFormControlContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DynamicBaseFormControlContainerComponent, deps: [{ token: DynamicBaseFormComponent }, { token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: i1.DynamicFormLayoutService }, { token: i1.DynamicFormValidationService }, { token: i1.DynamicFormComponentService }, { token: i1.DynamicFormRelationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1421
|
+
DynamicBaseFormControlContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DynamicBaseFormControlContainerComponent, deps: [{ token: DynamicBaseFormComponent }, { token: i0.ChangeDetectorRef }, { token: i0.Injector }, { token: i0.ComponentFactoryResolver }, { token: i1.DynamicFormLayoutService }, { token: i1.DynamicFormValidationService }, { token: i1.DynamicFormComponentService }, { token: i1.DynamicFormRelationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1407
1422
|
DynamicBaseFormControlContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: DynamicBaseFormControlContainerComponent, selector: "dynamic-base-form-control", inputs: { context: "context", group: "group", hostClass: "hostClass", inputTemplateList: ["templates", "inputTemplateList"], layout: "layout", model: "model" }, outputs: { blur: "blur", change: "change", focus: "focus" }, host: { properties: { "class": "this.klass" } }, providers: [
|
|
1408
1423
|
{ provide: DynamicFormControlContainerComponent, useExisting: DynamicBaseFormControlContainerComponent }
|
|
1409
1424
|
], queries: [{ propertyName: "contentTemplateList", predicate: DynamicTemplateDirective }], viewQueries: [{ propertyName: "componentViewContainerRef", first: true, predicate: ["componentViewContainer"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "", isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
@@ -1417,7 +1432,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
1417
1432
|
{ provide: DynamicFormControlContainerComponent, useExisting: DynamicBaseFormControlContainerComponent }
|
|
1418
1433
|
]
|
|
1419
1434
|
}]
|
|
1420
|
-
}], ctorParameters: function () { return [{ type: DynamicBaseFormComponent }, { type: i0.ChangeDetectorRef }, { type: i0.ComponentFactoryResolver }, { type: i1.DynamicFormLayoutService }, { type: i1.DynamicFormValidationService }, { type: i1.DynamicFormComponentService }, { type: i1.DynamicFormRelationService }]; }, propDecorators: { contentTemplateList: [{
|
|
1435
|
+
}], ctorParameters: function () { return [{ type: DynamicBaseFormComponent }, { type: i0.ChangeDetectorRef }, { type: i0.Injector }, { type: i0.ComponentFactoryResolver }, { type: i1.DynamicFormLayoutService }, { type: i1.DynamicFormValidationService }, { type: i1.DynamicFormComponentService }, { type: i1.DynamicFormRelationService }]; }, propDecorators: { contentTemplateList: [{
|
|
1421
1436
|
type: ContentChildren,
|
|
1422
1437
|
args: [DynamicTemplateDirective]
|
|
1423
1438
|
}], klass: [{
|
|
@@ -1849,5 +1864,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
1849
1864
|
* Generated bundle index. Do not edit.
|
|
1850
1865
|
*/
|
|
1851
1866
|
|
|
1852
|
-
export { AsyncSubmitDirective, DynamicBaseFormArrayComponent, DynamicBaseFormComponent, DynamicBaseFormControlComponent, DynamicBaseFormControlContainerComponent, DynamicBaseFormGroupComponent, DynamicBaseSelectComponent, DynamicEditorModel, DynamicFormArrayGroupModel, DynamicFormArrayModel, DynamicFormGroupModel, DynamicFormOption, DynamicFormService, DynamicSelectModel, EDITOR_FORMATS, FormSelectSubject, FormSubject, MAX_INPUT_NUM, MIN_INPUT_NUM, NgxDynamicFormModule, createFormArray, createFormCheckbox, createFormDate, createFormEditor, createFormFile, createFormGroup, createFormInput, createFormSelect, createFormTextarea,
|
|
1867
|
+
export { AsyncSubmitDirective, DynamicBaseFormArrayComponent, DynamicBaseFormComponent, DynamicBaseFormControlComponent, DynamicBaseFormControlContainerComponent, DynamicBaseFormGroupComponent, DynamicBaseSelectComponent, DynamicEditorModel, DynamicFormArrayGroupModel, DynamicFormArrayModel, DynamicFormGroupModel, DynamicFormOption, DynamicFormService, DynamicSelectModel, EDITOR_FORMATS, FormSelectSubject, FormSubject, MAX_INPUT_NUM, MIN_INPUT_NUM, NgxDynamicFormModule, createFormArray, createFormCheckbox, createFormDate, createFormEditor, createFormFile, createFormGroup, createFormInput, createFormSelect, createFormTextarea, customizeFormModel, getFormComponent, mergeFormModels, replaceSpecialChars, validateItemsMaxLength, validateItemsMaxValue, validateItemsMinLength, validateItemsMinValue, validateJSON, validatePhone, validateRequiredTranslation };
|
|
1853
1868
|
//# sourceMappingURL=stemy-ngx-dynamic-form.mjs.map
|