Skip to content

WML Form

The Angular WML Form Libary is a versatile and customizable library designed to streamline form creation and management in Angular applications. This component offers the following features:

  • Dynamic Field Management: Easily manage and update fields dynamically using the updateFields and updateFieldsWrapper methods.
  • Flexible Layouts: Define field sections to organize and layout fields in a structured manner.
  • Responsive Design: Ensures forms look great on various screen sizes with built-in media queries.
  • Custom Styling: Supports custom styles including glassmorphism effects for a modern UI.
  • Input Handling: Handles various types of inputs including standalone fields and WML cards.
  • Event Handling: Emits events when fields are updated, allowing for reactive and interactive forms.

Installation

Terminal window
npm install --verbose @windmillcode/angular-wml-form
# to populate the field, submit form
npm install --verbose @windmillcode/angular-wml-field
npm install --verbose @windmillcode/angular-wml-input
npm install --verbose @windmillcode/angular-wml-button

Usage

WMLFormZero

Basic Form Setup

Form Submission

  • the FormGroup is applied at the field level not the form level so essentiallly you do not need wml-form-zero to create your custom form
  • to see how this complex form works if you type in abc in the name field then the email field is required however if the name field is not abc then you can empty the email field and submit the form. WMLForm is very impervious

Dynamic Field Update

  • it replaces so you need the orginal field in case of adding fields

Field Sections

  • using field sections helps style the layout of the form
  • All you have to do is to apply display flex to the target form

Reference

WMLFormZeroComponent Properties

PropertyTypeDescription
propsWMLFormZeroPropsThe main properties object for configuring the form.

WMLFormZeroProps Properties

PropertyTypeDescription
viewWMLViewView configuration for the form.
fieldsArray<WMLFieldZeroProps>List of fields in the form.
fieldSectionsArray<number>Array defining the layout sections of the fields.
fieldsUpdatedEventSubject<void>Event emitted when fields are updated.
resetFieldSections() => voidMethod to reset field sections.
updateFields(fields: Array<WMLFieldZeroProps>) => voidMethod to update fields.

This structured and organized documentation provides a clear and comprehensive guide for developers to understand and use the WMLFormZero component effectively.

Changelog

v18.1.4 [7/13/24]

  • updated package to reflect the version ^18.1.0 of @angular/core package,

v18.1.6 [7/14/24]

  • updated package to conform with @windmillcode/angular-wml-components-base ,

v18.1.1000 [7/18/24]

  • updated package to reflect the version ^18.1.1 of @angular/core package,

v18.1.2000 [7/24/24]

  • updated package to reflect the version ^18.1.2 of @angular/core package,

v18.1.2300 [7/27/24]

  • updated package to conform with @windmillcode/angular-wml-components-base ,

v18.1.2301 [7/30/24]

  • updated package to conform with @windmillcode/angular-wml-components-base ,

v18.1.3000-beta1 [8/1/24]

  • updated package to conform with @windmillcode/angular-wml-components-base ,

v18.1.3000-beta2 [8/1/24]

  • updated package to conform with @windmillcode/angular-wml-components-base ,

v18.1.3000-beta3 [8/1/24]

  • updated package to conform with @windmillcode/angular-wml-components-base ,

v18.1.3000-beta4 [8/1/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.1.3001 [8/4/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.1.3002 [8/4/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.1.3002 [8/5/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.1.3003 [8/5/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.1.3004 [8/5/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.1.3005 [8/5/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.1.3006 [8/5/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.1.3007 [8/5/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.1.4000 [8/14/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.1.4001 [8/14/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.2.0 [8/15/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.2.1 [8/20/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.2.1000 [8/22/24]

  • updated package to reflect the version 18.2.1 of @angular/core package

v18.2.2000 [8/30/24]

  • updated package to reflect the version 18.2.2 of @angular/core package

v18.2.2100 [9/1/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.2.2101 [9/1/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.2.2200 [9/3/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.2.3000 [9/4/24]

  • updated package to reflect the version 18.2.3 of @angular/core package

v18.2.3100 [9/8/24]

  • updated package to reflect the version 18.2.3 of @angular/core package

v18.2.3110 [9/10/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.2.3112 [9/10/24]

  • updated package to conform with @windmillcode/angular-wml-components-base

v18.2.4000 [9/16/24]

  • updated package to reflect the version 18.2.4 of @angular/core package