- @lion/button@0.3.44 - @lion/calendar@0.4.0 - @lion/checkbox-group@0.3.6 - @lion/checkbox@0.2.8 - @lion/choice-input@0.4.6 - @lion/dialog@0.2.0 - @lion/field@0.6.5 - @lion/fieldset@0.5.0 - @lion/form-system@0.2.6 - @lion/form@0.3.6 - @lion/input-amount@0.3.6 - @lion/input-date@0.3.6 - @lion/input-datepicker@0.5.0 - @lion/input-email@0.3.6 - @lion/input-iban@0.3.6 - @lion/input@0.3.6 - @lion/localize@0.7.0 - @lion/option@0.3.6 - @lion/overlays@0.7.0 - @lion/popup@0.4.0 - @lion/radio-group@0.3.6 - @lion/radio@0.2.8 - @lion/select-rich@0.7.0 - @lion/select@0.3.6 - @lion/switch@0.3.7 - @lion/textarea@0.3.6 - @lion/tooltip@0.4.0 - @lion/validate@0.5.0 |
||
|---|---|---|
| .. | ||
| src | ||
| stories | ||
| test | ||
| CHANGELOG.md | ||
| index.js | ||
| lion-form.js | ||
| package.json | ||
| README.md | ||
Form
lion-form is a webcomponent that enhances the functionality of the native form component. It is designed to interact with (instances of) the form controls.
Features
- data synchronization with models
- easy retrieval of form data based on field names
- advanced validation possibilities
- advanced user interaction scenarios via interaction states
- registration mechanism for form controls.
- accessible out of the box
How to use
Installation
npm i --save @lion/form
import '@lion/form/lion-form.js';
Example
<lion-form>
<form>
<lion-fieldset name="fullName">
<lion-input label="First Name" name="firstName" .modelValue="${model.firstName}"></lion-input>
<lion-input label="Last Name" name="lastName" .modelValue="${model.lastName}"></lion-input>
</lion-fieldset>
<lion-textarea
label="Description"
name="description"
.modelValue="${model.description}"
></lion-textarea>
</form>
</lion-form>
Note that the example above is rendered using lit-html
For more information about fields that are designed for lion-form, please read Forms.