Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Adaptive Form Email Input (v1)

Adaptive Form Email input field component written in HTL.

Features

  • Provides the following type of input:
    • email
  • Custom constraint messages for the above types
  • Styles
  • Allows replacing this component with other component (as mentioned below).

Use Object

The Form Email component uses the com.adobe.cq.forms.core.components.models.form.TextInput Sling Model for its Use-object.

Edit Dialog Properties

The following properties are written to JCR for this Form Email component and are expected to be available as Resource properties:

  1. ./jcr:title - defines the label to use for this field
  2. ./hideTitle - if set to true, the label of this field will be hidden
  3. ./name - defines the name of the field, which will be submitted with the form data
  4. ./default - defines the default value of the field
  5. ./description - defines a help message that can be rendered in the field as a hint for the user
  6. ./required - if set to true, this field will be marked as required, not allowing the form to be submitted until the field has a value
  7. ./requiredMessage - defines the message displayed as tooltip when submitting the form if the value is left empty
  8. ./readOnly - if set to true, the filed will be read only

Client Libraries

The component provides a core.forms.components.textinput.v1.runtime client library category that contains the Javascript runtime for the component. It should be added to a relevant site client library using the embed property.

It also provides a core.forms.components.textinput.v1.editor editor client library category that includes JavaScript handling for dialog interaction. It is already included by its edit dialog.

Replace feature:

We support replace feature that allows replacing Reset Button component to any of the below components:

  • Button
  • Date Picker
  • Number Input
  • Reset Button
  • Submit Button
  • Telephone Input
  • Text Box
  • Text Input

BEM Description

BLOCK cmp-adaptiveform-emailinput
    ELEMENT cmp-adaptiveform-emailinput__label
    ELEMENT cmp-adaptiveform-emailinput__label-container
    ELEMENT cmp-adaptiveform-emailinput__widget
    ELEMENT cmp-adaptiveform-emailinput__questionmark
    ELEMENT cmp-adaptiveform-emailinput__shortdescription
    ELEMENT cmp-adaptiveform-emailinput__longdescription
    ELEMENT cmp-adaptiveform-emailinput__errormessage

Note

By placing the class names cmp-adaptiveform-emailinput__label and cmp-adaptiveform-emailinput__questionmark within the cmp-adaptiveform-emailinput__label-container class, you create a logical grouping of the label and question mark elements. This approach simplifies the process of maintaining a consistent styling for both elements.

JavaScript Data Attribute Bindings

The following attributes must be added for the initialization of the email input component in the form view:

  1. data-cmp-is="adaptiveFormEmailInput"
  2. data-cmp-adaptiveformcontainer-path="${formstructparser.formContainerPath}"

The following are optional attributes that can be added to the component in the form view:

  1. data-cmp-valid having a boolean value to indicate whether the field is currently valid or not
  2. data-cmp-required having a boolean value to indicate whether the field is currently required or not
  3. data-cmp-readonly having a boolean value to indicate whether the field is currently readonly or not
  4. data-cmp-active having a boolean value to indicate whether the field is currently active or not
  5. data-cmp-visible having a boolean value to indicate whether the field is currently visible or not
  6. data-cmp-enabled having a boolean value to indicate whether the field is currently enabled or not