- Migration to Angular 16
- NG Dynamic Forms now exposes standalone components
- Kendo UI package is no longer supported
- Migration to Material 15 (MDC)
- Migration to Angular 15 (Untyped Forms)
- Migration to Material 15 (Legacy Components)
- Migration to Angular 13
- Migration to ng-bootstrap 10
- adds
distinctUntilChanged()operator inDynamicFormsRelationServiceto performance problems (closes #1060) - adds manual change detection when async validation resolves
- Migration to Angular 12
- Migration to TypeScript strict mode
- Removes non-critical circular dependency
- Migration to
karma-coveragefromkarma-coverage-instanbul-reporter
angular2-text-mask has finally been replaced with ngx-mask
This means from now text masking is only available to UI components that use a built-in
mask feature or do not already apply a custom ControlValueAccessor like Material.
In order to integrate ngx-mask properly, a maskConfig property has been added to DynamicInputModel while the type of mask has been
narrowed to string.
mask?: string;
maskConfig?: Partial<IConfig>;- Support for Angular 11
- Support for Angular 10
- fixes error on
DynamicFormService.detectChanges()(closes #1060)
- Support for Angular 9
Customizing the condition for displaying validation error messages can now be achieved by providing a
DynamicErrorMessagesMatcher via newly introduced injection token DYNAMIC_ERROR_MESSAGES_MATCHER:
function myCustomErrorMessagesMatcher (control: AbstractControl, model: DynamicFormControlModel, hasFocus: boolean) {
return //...
};
providers: [
{
provide: DYNAMIC_ERROR_MESSAGES_MATCHER,
useValue: myCustomErrorMessagesMatcher
},By default the DEFAULT_ERROR_STATE_MATCHER is active:
export const DEFAULT_ERROR_STATE_MATCHER: DynamicErrorMessagesMatcher =
(control: AbstractControl, model: DynamicFormControlModel, hasFocus: boolean) => {
return control.touched && !hasFocus;
};Please read the updated chapter on validation messaging
- Due to performance reasons NG Dynamic Forms from now on makes use of
ChangeDetectionStrategy.OnPushunder the hood. Whenever modifying aDynamicFormControlModel(except forvalueanddisabledsetters) that means you need to manually trigger change detection by simply callingdetectChanges()onDynamicFormService.
Please also read the new chapter on updating form controls.
BEFORE:
// Immeditialy triggers UI update
myModel.value = "New Value";
myModel.disabled = true;
myModel.label = "New Label";AFTER:
// This still works
myModel.value = "New Value";
myModel.disabled = true;
// This doesn't work automatically any more
myModel.label = "New Label";
// You need to manually trigger change detection
this.formService.detectChanges();findModelById<T>andfindControlByModel<T>now use a type variable so you don't need to cast its return value any more.DISABLED_MATCHERhas been renamed toDISABLED_MATCHER_PROVIDERHIDDEN_MATCHERhas been renamed toHIDDEN_MATCHER_PROVIDERREQUIRED_MATCHERhas been renamed toREQUIRED_MATCHER_PROVIDER
A new UI package @ng-dynamic-forms/ui-ngx-bootstrap has been released. This allows using ngx-bootstrap with Bootstrap 4 now.
Thus the package @ng-dynamic-forms/ui-bootstrap from now on is only recommended if still need to support Bootstrap 3.correctly
appendToinput now works in PrimeNG Dropdown and MultiselectdecimalSeparator,thousandSeparator,formatInputandsizeinputs now works in PrimeNG Spinner
Updating value and disabled properties of any DynamicFormControlModel is now possible via simple setters:
BEFORE:
myModel.valueUpdates.next("New Value");
myModel.disabledUpdates.next(true);AFTER:
myModel.value = "New Value";
myModel.disabled = true;Therefore both valueUpdates and disabledUpdates Subjects have been removed from DynamicFormControlModel.
You can still track changes via newly introduced valueChanges and disabledChanges Observables.
reflect-metadata is now directly imported by the library so there's no need to import it on your own in polyfills.ts any more.
- disable / enable now should be working on all components again (closes #993)
closedoutput now working correctly in ng-bootstrap datepicker (closes #994)
- Labels in Material form fields now support HTML (closes #966)
- PrimeNG editor now supports
modulescloses #996)
rootPathis now correctly processed for multiple related form controls (closes #990)- PrimeNG spinners now work when
min/maxproperties arenull(closes #989)
- update of ngx-bootstrap, Prime NG, NG Bootstrap and Kendo to new major versions
DynamicFormComponentServicenow gives warning instead of failing when called with index argument for non-array (closes #974)
- missing dash added to
DynamicFormControlContainerComponentmodel type css class
- Upgrade to Angular 8 & Angular Material 8
- Major refactoring and enhancement of Related Form Controls feature (see README)
DynamicFormLayoutnow supports selecting of form control types and multiple idsDynamicFormControlContainerComponenttemplates now render a css class by model typefindControlByModel()function added toDynamicFormServicefindByModel() function added toDynamicFormLayoutService`
relationproperty ofDynamicFormControlModelhas been renamed torelationsactionproperty onDynamicFormControlRelationhas been renamed tomatchconnectiveproperty onDynamicFormControlRelationhas been renamed tooperator
- Entire project has been switched to Angular CLI
DynamicFormInstancesServicenow working correctly (closes #933)autoWidthremoved fromDynamicPrimeNGDropdownComponent(closes #945)
- Templates now match
fullTemplateCheck(closes #884) DynamicPrimeNGCalendarComponentbug fixed (closes #921)
- Ionic package dependencies fixed
- support for Ionic 4
- Prime NG Dropdown and Multiselect now uses options Observable (closes #895)
- text masks now support functions (closes #885)
- package upgrades and bad
event-streamdependencies removed
@ng-bootstrap/ng-bootstrapdependency version has been corrected (closes #872)
- Material chips component now supports
MatAutocompletevialistproperty
- Angular 7
- TypeScript 3.1
- Angular Material 7
- ngx-bootstrap 3.1.1
- ng-bootstrap 4.0.0
- Prime NG 7.0.0 Beta.1
bindId@Input() has been completely removedDynamicIdDirectivehas been abandoned internally in favor of always setting an element id nowDynamicFormModelis now a type alias forDynamicFormControlModel[]- Importing
DynamicFormsCoreModuleviaforRoot()has been removed
- Library now makes use of Angular 6 tree-shakeable providers
- Importing
DynamicFormsCoreModuleviaforRootis now deprecated and will be removed in next major version
- PrimeNG UI package now uses prime icons instead of fontAwesome icons (closes #845)
childrenproperty added toDynamicFormControlLayoutConfig(closes #821)
onLabelandoffLabelinputs have been removed from Prime NG input switch component
compareWithFnsupport forDynamicSelectModel(closes #820)
ChangeDetection.OnPushremoved from Material UI components due to issues (closes #808)
cdkTextareaAutosizesupport for Material UI textarea component (closes #819)
- form field appearance for Material UI (closes #799)
- focus events now working again (closes #778)
DynamicMaterialChipsComponentnow correctly implements model value updates (closes #774)
- using Observables in
DynamicOptionControlModelworks again (closes #763)
DynamicKendoCheckboxGroupComponentandDynamicNGBootstrapCheckboxGroupComponentnow correctly update values on checkbox model (closes #744)
- Calendar component in Prime NG UI package now supports
showTimeinput (closes #723) - Upload component in Kendo UI package now supports all outputs
- Material UI now supports
MAT_RIPPLE_GLOBAL_OPTIONS,MAT_LABEL_GLOBAL_OPTIONS,MAT_CHIPS_DEFAULT_OPTIONSandMAT_AUTOCOMPLETE_DEFAULT_OPTIONS - NG Bootstrap UI now supports
DynamicRatingModel - NG Bootstrap UI now supports
NgbDatepickerConfig,NgbRatingConfigandNgbTimepickerConfig
Please note that there's currently no release for ui-ionic package due to build incompatibilities with Angular 6!
- Major refactoring to discard static templates in favor of dynamically loaded form control components
- Initial support for Custom Form Controls
- update to Angular 6 & RxJS 6
hasErrorMessaginginput has been completely removed in favor of solely relying onmodel.hasErrorMessagesgetterdfprefix has been removed from outputs in favor of simply using(blur),(change)and(focus)againDynamicFormControlValuetype has been completely removed in favor of simply usinganyDynamicFormControlComponenthas been renamed toDynamicFormControlContainerComponent
- NG Bootstrap UI package now correctly shows suffix on input fields
- NG Bootstrap UI package now fully supports Bootstrap
4.0.0stable (closes #687) valueproperty ofDynamicFormValueControlModelnow accepts0(closes #710)
- Properties for future tooltip support added (closes #700)
- Material template improvements (support for
coloranddisableRippleinputs viaadditional)
- full support for Angular Package Format v5.0
- upgrade to NG Bootstrap
1.0.0stable
- initial text mask support for Material UI package (closes #510)
patternbinding added to ion input (closes #645)- upgrade to ngx-bootstrap
2.0.0
maxLengthattribute added to Material textarea control- upgrade to NG Bootstrap
beta.9
- minlength and maxlength error messages are now created correctly (closes #647)
hiddenproperty added toDynamicFormControlModelfor hiding form controls
- new
InjectionTokenDYNAMIC_VALIDATORSfor entirely avoiding any mangling issues when using custom validators (see updated chapter on Custom Validators) - official support for JSON form models (see new chapter on JSON Form Models)
- major accessibility improvements for Material template (closes #630)
- upgrade to NG Bootstrap
beta.8
- initial support for ngx-bootstrap (
ngx-bootstrapis now a peer dependency of@ng-dynamic-forms/ui-bootstrap) - initial support for Prime NG color picker via new
DynamicColorPickerModel
additionalproperty added toDynamicFormValueControlModelfor individually configuring UI components (see new chapter on form component configuration)- upgrade to NG Bootstrap
beta.7
nameproperty can now be configured on anyDynamicFormControlModel(closes #600)- upgrade to Angular Material
5.0.0 - Material UI template improvements
- initial Chips support in Material UI package
hintsupport for Select in Material UI package (closes #608)- upgrade to Angular Material
5.0.0-rc.2 - upgrade to NG Bootstrap
beta.6
- packages now pass
strictNullChecksagain (closes #614)
- All new approach to custom form layouts (see updated README und sample code)
- using
clsConfigfor providing layout information is now deprecated
- upgrade to Angular Material
5.0.0-rc.1 - upgrade to Prime NG
5.0.0
- upgrade to Angular Material
5.0.0-rc0
blur,focusandchangeoutputs have been prefixed withdfto avoid any interference with native control events bubbling up (see updated README.md)asyncValidatorandvalidatorproperties fromDynamicFormGroupModelandDynamicFormArrayModelhave been removed and replaced byasyncValidatorsandvalidatorsgroupAsyncValidatorandgroupValidatorproperties fromDynamicFormArrayModelhave been removed and replaced bygroupAsyncValidatorsandgroupValidatorsgetAsyncValidator()andgetValidator()function signatures fromDynamicFormValidationServicehave been changedcreateFormGroup()function fromDynamicFormServicenow acceptsAbstractControlOptionsinstead ofextra
- upgrade to Angular 5 (closes #496)
- support for multiple
asyncValidatorsandvalidatorsonFormArrayandFormGroup - support for
FormHooksvia new propertyupdateOnonDynamicFormControlModel - support for applying both a start and end template to a
DynamicFormControlComponentinstead of either / or - support for updating
validatorsandasyncValidatorsat runtime via newupdateValidators()andupdateAsyncValidators()functions onDynamicFormValidationService(closes #342)
DynamicDateControlModelnow accepts date values of typeobjectin order to support proprietary date representations, e.g.NgbDateStructin NG Bootstrap (closes #556)
This will be the last release before Angular 5.
There'll be a major version incrementation to 5.0.0 to fully stay in sync with Angular version numbers in the future.
- major event handling enhancements (see new chapter on Form Control Events)
- update to @angular/material
beta.12
- major bundling bug fixed causing
@angular/commonto be bundled with*.es.jsfiles
- NG Dynamic Forms now matches Angular Package Format
- this resolves multiple flaws when using AoT build with Angular CLI or
@angular/compiler-cli(closes #514) - neither TypeScript nor JavaScript source code files are published anymore
- this resolves multiple flaws when using AoT build with Angular CLI or
- update to @angular/material
beta.11- "md" prefix has been replaced by "mat"
- see Material CHANGELOG.md and #7253 on how to upgrade properly
Please update your dependencies:
npm uninstall @ng2-dynamic-forms/core @ng2-dynamic-forms/ui-<package_name> -S
npm install @ng-dynamic-forms/core @ng-dynamic-forms/ui-<package_name> -S
- Minor template improvements:
- full support for grid classes in Basic, Material and Kendo
- class
k-requiredis now automatically added to error messages in Kendo for color styling <ng-content>has been removed as it has little benefit and never been officially documented
- Library code now passes
noUnusedParametersandstrictNullChecksTypeScript transpiler checks (closes #497)
DynamicValidationServicenow correctly resolves alternate validator notation
optionsproperty added toClsConfigfor applying CSS classes to a single option in a radio groups- brand new sample forms for Material, Kendo, ng-bootstrap and Prime NG
- major template improvements for Material, Kendo, ng-bootstrap and Prime NG
- initial support for Spinner and InputMask in
ui-primeng - update to ng-bootstrap
beta.4
- error messages working again on
FormGroups (closes #475)
- error messaging template improvements
indeterminatedsupport added forDynamicCheckboxModelin most UI templates- update to NG Bootstrap beta.1
- new
DynamicFormControlComponentselectors have been added- word order has been changed, e.g.
<dynamic-form-bootstrap-control>becomes<dynamic-bootstrap-form-control> - old selectors will still work but should be considered deprecated
- consult README.md of UI packages for usage
- word order has been changed, e.g.
- Introducing the all new
DynamicFormComponent- available for all UI packages, e.g
<dynamic-bootstrap-form> - makes form markup even more straightforward
- is now preferred over manually adding
DynamicFormControlComponentsvia*ngFor - consult updated sample code, README.md and API docs for proper usage
- available for all UI packages, e.g
- NG Bootstrap UI template improvements:
- initial support for native checkbox group via
DynamiCheckboxGroupModel - radio group is working again (closes #457)
- CSS class
btn-primaryis not applied automatically anymore
- initial support for native checkbox group via
- update to NG Bootstrap alpha.30
- initial support for Rating controls in Prime NG UI package via newly introduced model
DynamicRatingModel filterablesupport for dropdown and multiselect controls in Prime NG UI package (closes #448)- enhanced datepicker support in NG Bootstrap UI package (closes #447)
- flaws in path resolving and Kendo UI template finally fixed
- path resolving for nested form arrays from
1.4.17has been removed in favor of a more global approach due to impasses
- Kendo form array template bug fixed (closes #437)
parentproperty added forDynamicFormControlModelvia newly introduced interfaceDynamicPathablegetPath()method added toDynamicFormService(see #414)- a
DynamicFormArrayGroupModelcan now directly be referenced by a local default template variable (see updated README.md)
- property
createGroupofDynamicFormArrayModel**has been renamed togroupFactory(see updated README.md)
parentandpathgetter added toDynamicFormArrayGroupModel(closes #414- Bootstrap CSS class assignment adjusted for checkbox and radio control (closes #425
DynamicFormAutoFillServicehas been refactored to a simple utility classAutoFillUtils(see updated README.md)
- alternate custom validator notation to support production builds with Angular CLI (closes #424 - see updated README.md)
- new CSS class config properties
groupandhostadded for more flexible custom layouts - support for new Foundation XY Grid
- form array groups are now contained by a
<div>instead of<fieldset>due to CSS Flexbox bug
- custom
<ng-template>input propertytypehas been renamed toas(currently suported by Kendo UI and Prime NG - see updated README.md)
- Kendo custom templates now working again (closes #411)
- datepicker integration in Material UI package has been improved (closes #407)
- major internal component refactoring (part II of II)
- Buggy string enums reset (closes #409)
- Material template bug fixed
- major internal component refactoring (part I of II)
DynamicFormServiceimports cleaned up (closes #402)- missing text mask dependency added in
package.jsonfiles (closes #398)
- initial support for error messsaging in Kendo UI package (closes #386)
- initial text mask support for Basic, Bootstrap, Foundation, Ionic and NGBootstrap (closes #379)
DynamicFormControlEventhas been enhanced bygroupandcontextproperties (closes #378)disabledinput bindings have been completely removed from Kendo UI template
- missing
ofObservable operator import added (closes #372)
optionproperty ofDynamicOptionControlModelnow finally supportsObservables (closes #165)- NG Bootstrap UI template now correctly displays
NgbRadioGroup(closes #356) - update to @angular/material
beta.5 - initial datepicker support in Material UI package
- Kendo UI package updated to 1.0.0
- NG Bootstrap UI template now implements
NgbRadioGroup(closes #351)
- All single TypeScript files are now transpiled to and published in ES2015 module format(
**/bundles/*.umd.jsbundle files are not affected by this) - NG Bootstrap template improvements
tabIndexnow supported inui-primeng- build refactoring
- sample app now also bundles flawless with Rollup
FileListis now correctly read from file inputs (closes #304)
- initial UI support for NG Bootstrap (closes #278)
- npm packages now contain an additional ES bundle for tree-shaking improvements
- new
DynamicTimePickerModeladded - initial timepicker support in
ui-ionic,ui-ng-bootstrapandui-primeng - update to PrimeNG
4.0.0(closes #340) - Remaining
noImplicitAny: trueTypeScript errors have been removed (closes #345)
- initial checkbox, input, radio group and textarea support in
ui-kendo moveFormGroupControl()function added toDynamicFormService(closes #339)
DynamicDatepickerModel has been renamed to DynamicDatePickerModel
placeholderproperty added toDynamicDateControlModel- initial datepicker support in
ui-kendo
DynamicFormBootstrapComponentnow has new@Input() asBootstrapFormGroup: This is a major improvement to make complex form layouts more easy to achieve. By defaultform-groupCSS class now is not set for nested form models anymore.
- Initial UI support for Ionic 2
README.mdfiles of UI packages now contain form control overview
- update to Angular Material beta.3
multiplenow working forDynamicSelectModelinui-materialmd-erroradded forDynamicInputModelandDynamicTextareaModelinui-material
- inital support for
DynamicEditorModelinui-primeng(closes #317) formatproperty added toDynamicDateControl(closes #318)- checkbox and radio button labels are now clickable in
ui-primeng(closes #319) - inital support for
Dateinputinui-kendo
[controlGroup]input binding ofDynamicFormControlComponentis now deprecated! Use[group]instead!
moduleIdis now removed from distributed component *.ts files (closes #301)
- Update to Angular 4 (closes #292)
- validation messages now working in nested form groups in
ui-materialandui-primeng(closes #294)
- added
moduleandtypingsproperties topackage.jsonto fix Rollup "MISSING IMPORTS" error (probably closes #267) DynamicFormArrayModeltypings adjusted (closes #289)
- custom template support in
ui-primeng(see example)
- custom templates are now working in deep nested dynamic form control components (closes #280)
findById()function ofDynamicFormServiceis now capable of looking up nested form group models (closes #286)- initial support for
Chipsinui-primeng(closes #275) - example code refactored
- custom
NG_VALIDATORSnow working when using Angular CLI withoutwebpack.config(closes #271) - initial addition of file control models
- initial support for
Uploadinui-kendo - update to Angular
2.4.8 - update to
@angular/material beta.2
- Template alignment can now be determined by
alignproperty (closes #264) - Templates can now be reused by using
modelTypeproperty (closes #265)
- dev mode template change detection bug fixed (closes #266)
- update to Angular
2.4.7 - update to Prime NG
2.0.0
- AoT-Compiling is now officially supported
- major template refactoring in all UI modules
maxandminsupport for calendar inui-kendo- update to Angular
2.4.6
- initial addition of date control models
- initial support for
Calendarinui-kendoandui-primeng fromJSON(json: string | Object[])function refactored to accept raw JSON strings and to reviveDateobjects- update to Angular
2.4.5
- functions to add and remove form controls after initialization added in
DynamicFormService(closes #252) - initial support for
AutoComplete,MaskedTextBoxandNumericTextBoxinui-kendo - update to Angular
2.4.4
- support for Kendo UI template directives added (see README.md, closes #247)
- initial multi select support added in
ui-kendo - update to Angular
2.4.3
- error messaging enabled in
ui-materialandui-primeng(closes #240) - update to Angular
2.4.2
- Caret now visible in Firefox (closes #237)
- validator properties can now be referenced in error messages (see README.md)
DynamicFormServicehas now a functionmoveFormArrayGroup(index: number, step: number, formArray: FormArray, model: DynamicFormArrayModel)to dynamically move form array elements (see updated live example)get(index: number)function added toDynamicFormArrayGroupModel[(ngModel)]could be completely removed fromui-primengtemplate at last
!!! IMPORTANT !!!
Adding custom templates has become more powerful!
You now need to assign a modelId attribute to any of your custom templates.
Please see new chapter in README.md and updated examples!
- update to
@angular 2.4.1 - update to
@angular/material beta.1 @Input() showCharacterHintadded inDynamicFormMaterialComponentDynamicSelectModelnow enabled inui-kendo
DynamicFormsCoreModulenow working when used in async routes (closes #212)
- async routing example added to demo application
- template improvements for checkboxes (closes #214)
hintproperty added toClsinterface
DynamicSliderModelandDynamicSwitchModelare now correctly deserialized from JSON
minandmaxtyping updated (closes #206)- update to
@angular 2.3.1 - update to
foundation 6.3.0 - update to
primeng 1.1.0
- custom validator functions are now correctly detected in model configuration (closes #200)
DynamicSliderModeladded (working inui-material,ui-kendo,ui-primeng)DynamicSelectModelnow working inui-materialhintnow working inui-basic(closes #203)- update to
@angular 2.3.0 - update to
rxjs rc.4 - update to
zone.js 0.7.2 - update to
@angular-material alpha-11.3
!!! IMPORTANT !!! All Validators of any DynamicFormControlModel now need to be configured by a simply object literal (similar to errorMessages) instead of an Array<ValidatorFn | AsyncValidatorFn>.
This change was unavoidable to allow proper serialization for all validators as well as a significant code reduction (closes #200)!.
Defining validators becomes even more easy now!
Before:
new DynamicInputModel({
id: "myInput",
validators: [Validators.required, Validators.minLength(3)]
})After:
new DynamicInputModel({
id: "myInput",
validators: {
required: null,
minLength: 3
}
})Please see updated example for practical use!!!
ui-materialnow supportsoffLabelandonLabelproperties ofDynamicSwitchModel(see Material example)- update to
@angular 2.2.4
changeevent handler inDynamicFormBasicComponentcorrected (closes #197)
- bad
@angular/materialimport removed fromDynamicFormControlComponent(closes #194)
ui-foundationandui-primengnow supportDynamicSwitchModelDynamicSwitchModelnow hasoffLabelandonLabelpropertiesDynamicFormControlRelationModelrefactored andDynamicFormRelationServiceintroduced- template files optimized
- update to tslint
4.0.0
DynamicCheckboxGroupModelinternally works identical toDynamicFormGroupModelnow in order to make property bindings work correctly (closes #172 and #189)
- !!! IMPORTANT !!!
blur, focus, changeevents are now emitted for single checkbox in aDynamicCheckboxGroupModelinstead of the whole group @angular/materialchange events are now correctly included inDynamicFormControlEvent- update to
@angular 2.2.3 - update to
primeng 1.0.0
addGroup()function ofDynamicFormArrayModeldoes now work correctly (closes #183)
- update to
@angular 2.2.1 - update to
primeng rc.5 add(),insert()andremove()function added toDynamicOptionControlModel(closes #180)
DynamicFormControlComponentdoes now emit aDynamicFormControlEventon blur, change and focus instead of simply passing through$event:
export interface DynamicFormControlEvent {
$event: Event | FocusEvent;
control: FormControl;
model: DynamicFormControlModel;
}
- blur, change and focus events are only emitted for single form controls and checkbox groups from now on (see Bootstrap example)
- update to
@angular 2.2.0 - update to
@angular/material alpha.10 - update to
primeng rc.4 valueUpdates Rx.Subjectcan now safely be used from anywhere to listen to new valuescheckedsetter/getter andtoggle()function added toDynamicCheckControlModelcheckAll()anduncheckAll()function added toDynamicCheckboxGroupModelselect()andget()function added toDynamicOptionControlModelget()function added toDynamicFormGroupModelandDynamicFormArrayModel- textarea support for
ui-materialadded
checkedattribute added to templates (closes #168)
validatorsdeserialization fixed (closes #163)rxjspeer dependency downgraded to match with Angular 2 (closes #162)
- error validation messaging added for
ui-basic(closes #154)
DynamicCheckboxGroupModeltemplate bugs fixed (closes #160)
label,legend,prefix,suffixandhintare now bound via[innerHTML](see #157)
- Error Messaging system to
ui-bootstrapandui-foundationadded (closes #153 , see README.md) Thanks @DavyJohnes @Output() changeEventEmitter<Event>added toDynamicFormControlComponent(#149)- Update to
@angular 2.1.2
fromJSON()finally working flawless
- Upgrade to Angular
2.1.0
- support for nested
templates(closes #139)
disabledUpdatesRx.Subjectadded for setting activation state at model level
focusandbluroutputs added toDynamicFormControlComponentfor event bindings (closes #130)- JSON export code has been improved
- some JSON export flaws have been fixed
- !!! IMPORTANT !!!
[(ngModel)]bindings have been completely removed. If you need to update thevalueof anyDynamicFormControlModelat runtime usevalueUpdatesRx.Subject(see README.md)
- proper JSON export of all
DynamicFormControlModels (closes #125)_
DynamicSwitchModelintroduced inui-materialidattribute is now bound again to improve accessibility (see #42)disabledbindings added inui-materialwhere appropriate
- Webpack flaws fixed (closes #118)
- !!! IMPORTANT !!! form control relation API changed (see
README.md)
filesfield added toDynamicInputModel(closes #114)
- Multi-related Form Controls (closes #115)
- Related Form Controls(closes #111)
- !!! IMPORTANT !!! UMD bundles now provided in
bundlessub folder
- UMD bundles now work correctly for all module systems (closes #106)
- Migration to Angular 2.0 final (closes #100)
fromJSON()function added toDynamicFormService(closes #99)
- UMD bundles added (see
README.md)
- bad
BrowserModuleimports replaced byCommonModule(closes #89)
- Migration to PrimeNG beta.15 (
ui-primengworking again)
- !!! IMPORTANT !!!
DynamicFormsCoreModulenow needs to be imported in app rootNgModuleviaforRoot() - !!! IMPORTANT !!!
disabledproperty bindings were removed! Usedisable()andenable()functions ofDynamicFormControlComponentinstead (see Known Issues for explanation) helpproperty ofDynamicFormControlModelrenamed tohint
- Migration to Angular 2 RC.6
- Migration to Angular 2 Material alpha.8
requiredproperty binding re-added toDynamicFormControlComponents due to fixes in Angular 2 RC.6tabIndexproperty added toDynamicFormValueControlModel
-
Changing the
disabledproperty ofDynamicFormControlModelafter initialization has no effect. This is due to Angular 2 RC.6 not supportingdisabledproperty bindings anymore! Usedisable()andenable()functions ofDynamicFormControlComponentas a workaround! -
Setting
disabled: trueon anyDynamicFormControlModelinui-materialcauses an exception. This is due to a bug in Angular 2 Material alpha.8-1.
FormGroupvalidator extras now set correctly (closes #79)
- Sample app start simplified
*.tsfiles added to npm packages for source map support (closes #82)
- property
validatorsAsyncofDynamicFormValueControlModelrenamed toasyncValidators
- support for
FormGroupandFormArrayvalidator functions added (closes #79) ui-primengnow working withNgModule
requiredattribute (temporarily) removed from templates due to issues still not being resolved in Angular 2
NgTemplateOutletContextis now correctly set for<template>forDynamicFormArrayModel(closes #67)
- !!! IMPORTANT !!! ng2 DynamicForms now supports
NgModule--> Please read updated `README.md
DynamicFormArrayModelandDynamicFormGroupModelnow working in all UI packages
- !!! IMPORTANT !!!
DynamicFormModelhas been completely removed --> use a simpleArray<DynamicFormControlModel>instead - !!! IMPORTANT !!!
findById()function ofDynamicFormModelhas been moved toDynamicFormService
DynamicCheckboxModelnow working correctly again inui-primeng
DynamicFormControlModelrenamed toDynamicFormValueControlModelDynamicFormAbstractControlModelrenamed toDynamicFormControlModel
- Nested form groups are now supported (closes #57)
- Type safety for
DynamicFormControlModelconiguration objects added
Please checkout updated README and examples!
- !!! IMPORTANT !!!
itemsproperty ofDynamicFormControlModelandDynamicCheckboxGrouphas been renamed togroup - !!! IMPORTANT !!!
DynamicFormService.createFormGroupnow expectsArray<DynamicFormControlModel<any>>instead ofDynamicFormModel - !!! IMPORTANT !!!
@Input()formofDynamicFormControlComponenthas been renamed tocontrolGroup - !!! IMPORTANT !!!
idproperty binding ofDynamicFormControlModelhas been removed
- FormArrays are now fully supported (closes #53)
requiredproperty ofDynamicFormControlModelis now bound via[required]and does not manually applyValidators.requiredunder the hood any morereadonlyproperty ofDynamicInputControlModelrenamed toreadOnly
- boolean
spellCheckproperty added toDynamicInputControlModel
- default value for
autocompleteproperty ofDynamicFormControlModelis nowoninstead ofoff textproperty ofDynamicFormOptionrenamed tolabel
DynamicCheckboxGroupnow working correctly inui-material
- Webpack bundling now supported (closes #47)
DynamicFormAutoFillServiceadded for importing and validating new HTML5 autofill detail tokensui-primenghas arrived
maxlengthattribute is now bound correctly (closes #43)- labels of
DynamicCheckboxGroupitems do render now inui-basic(closes #44) nameattribute now added to<fieldset>(closes #45)disabledattribute now added to all form controls
clsconfiguration object has now nestedelementconfiguration object to set css classes for certain elements (see example)nameproperty ofDynamicFormControlModelcannot be set anymore by configuration (automatically mapped toid)DynamicFormControlComponentnow throws when being bound to non-supported type ofDynamicFormControlModel
ui-materialfinally working again after upgrading to new Angular 2 Material alpha.6 (closes #29)valueofDynamicCheckboxModelis now always initizialized withfalseinstead ofnullwhen not explicitly set totrue
- datalists now supported by
DynamicInputControlModel(listproperty)
labelproperty ofDynamicFormControlModelis now just a plainstringinstead of object (hiddenproperty is removed)
DynamicCheckboxGroupModelhas arrived (closes #32)
clsis now a true optional declared constructor parameter- check included for mandatory
idconfiguration property - #37 fixed
ui-foundationhas arrivedclsconfiguration object is now a separate constructor parameter (the second) ofDynamicFormControlModelin order to uncouple pure model configuration from style configurationclsbugs in template files fixedreadonlyproperty introduced forDynamicFormInputModel
- Upgraded to RC.3
clsproperty ofDynamicFormControlModelrefactored for advanced form layouts- Radio groups finally working in ui-basic and ui-bootstrap
- New chapter "Form Layouts" added in README.md
ui-material is currently broken due to Angular 2 Material not having upgraded to @angular/forms yet
- Updated everything to @angular/forms
orderproperty removed fromDynamicFormControlModelDynamicRadioModelrenamed toDynamicRadioGroupModelmodelproperty ofDynamicFormModelrenamed toitems
- Major improvements and bug fixes for ui-bootstrap template
- Major improvements for example app
textproperty removed fromDynamicCheckboxModeldue to redundancy (usetextproperty oflabelobject instead)
DynamicTextInputModelandDynamicNumberInputModelcondensed toDynamicInputModelonBlurandonFocusevent listeners added for input and textarea controls in ui-basic and ui-bootstrapmax,min, `step attributes now working correctly in ui-basic and ui-bootstraplabelis now a configuration object with propertiescls,hiddenandtext- new property
clsintroduced inDynamicFormControlModelfor manually setting CSS classes for controls