All Projects → nateyolles → aem-touch-ui-validation

nateyolles / aem-touch-ui-validation

Licence: Apache-2.0 license
AEM Touch UI Validation Library

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to aem-touch-ui-validation

aem-docker-getting-started
Getting started guide for development with Adobe Experience Manager and Docker.
Stars: ✭ 38 (-5%)
Mutual labels:  adobe, aem, adobe-experience-manager
aem-spa-project-archetype
Maven Archetype for creating new AEM SPA projects
Stars: ✭ 64 (+60%)
Mutual labels:  adobe, aem
commerce-cif-connector
AEM Commerce connector for Magento and GraphQL
Stars: ✭ 42 (+5%)
Mutual labels:  adobe, aem
cookbook-cq
Chef cookbook for Adobe CQ (aka AEM)
Stars: ✭ 20 (-50%)
Mutual labels:  adobe, aem
wcm-io-caconfig
Context-Aware Configuration for AEM applications.
Stars: ✭ 16 (-60%)
Mutual labels:  aem, adobe-experience-manager
aem-osgi-annotation-demo
Demonstrates OSGi Declarative Services Annotations along side Felix SCR Annotations.
Stars: ✭ 42 (+5%)
Mutual labels:  aem, adobe-experience-manager
commerce-cif-magento-graphql
Magento GraphQL data models and query builders for AEM
Stars: ✭ 20 (-50%)
Mutual labels:  adobe, aem
Aem Project Archetype
Maven template to create best-practice websites on AEM.
Stars: ✭ 337 (+742.5%)
Mutual labels:  adobe, aem
Aem Links
Adobe Experience Manager links, cheat sheets and solutions to common problems.
Stars: ✭ 254 (+535%)
Mutual labels:  adobe, aem
AEM-DataLayer
Simple DataLayer API for Adobe Experience Manager
Stars: ✭ 33 (-17.5%)
Mutual labels:  adobe, aem
wcm-io-tooling
Tooling for Maven and IDEs.
Stars: ✭ 12 (-70%)
Mutual labels:  aem, adobe-experience-manager
Tools
Tools to support development, testing and deployment of Marketing Cloud technologies
Stars: ✭ 94 (+135%)
Mutual labels:  adobe, aem
aem-clientlib-async
Create AEM clientlibs that can output 'async', 'defer' and 'onload' attributes on your HTML script elements.
Stars: ✭ 45 (+12.5%)
Mutual labels:  aem, adobe-experience-manager
gradle-aem-multi
Example Multi-Module AEM application built by Gradle Build System
Stars: ✭ 31 (-22.5%)
Mutual labels:  aem, adobe-experience-manager
aem-dispatcher-experiments
Experiments to demonstrate the impact of the Dispatcher and it's configuration parameters.
Stars: ✭ 41 (+2.5%)
Mutual labels:  aem, adobe-experience-manager
aem-intellij-plugin
IntelliJ Platform plugin for AEM (Adobe Experience Manager).
Stars: ✭ 26 (-35%)
Mutual labels:  aem, adobe-experience-manager
aem-akamai-replication-agent
How to create custom replication agents in AEM using Akamai as an example.
Stars: ✭ 33 (-17.5%)
Mutual labels:  aem, adobe-experience-manager
wcm-io-wcm
Extensions for AEM authoring and AEM applications.
Stars: ✭ 17 (-57.5%)
Mutual labels:  aem, adobe-experience-manager
aem-cif-project-archetype
Maven template to create new CIF Project AEM projects that follow best practices
Stars: ✭ 20 (-50%)
Mutual labels:  adobe, aem
Aem Core Cif Components
A set of configurations and components to get you started with AEM Commerce development
Stars: ✭ 60 (+50%)
Mutual labels:  adobe, aem

AEM Touch UI Validation Library

This project provides enhanced validation and functionality for Adobe Experience Manager 6 Granite dialogs.

The project uses all out-of-the-box components and clientlibs without overlays. This library is a simple clientlib that you can add or remove without affecting the rest of your project. The clientlib is in the cq.authoring.dialog category making it immediately available in authoring mode.

See http://www.nateyolles.com/blog/2016/02/aem-touch-ui-custom-validation for a detailed description regarding the principles used to create these custom validators.

Multifield validation with min and max limits

Goals

  • Add enhanced validation while behaving in a completely unobtrusive manner.
  • Provide validation in a consistent style as out-of-the-box validation using the familiar red notification icon; no alerts, modals or prompts.

Added functionality

The following documents the added functionality which does not include the provided AEM validation. See the documentation at https://docs.adobe.com/docs/en/aem/6-1/ref/granite-ui/api/jcr_root/libs/granite/ui/components/foundation/index.html.

multifield

min
type: {Long}
description: The minimum number of multifield items
default: Not active

max
type: {Long}
description: Limits the maximum number of multifield items as opposed to validating.
default: Not active

pathbrowser

required
type: {Boolean}
description: Makes the field required
default: false

allowNonRootPath
type: {Boolean}
description: Allows a path that is not bound by the root path
default: false

allowNonExistingPath
type: {Boolean}
description: Allows a path that is not a node in the JCR
default: false

Note:
Use allowNonRootPath in conjunction with allowNonExistingPath to allow the user the option of selecting a page within AEM or typing in an external URL.

textfield / textarea / password

minlength
type: {Long}
Description: Minimum number of characters allowed
default: Not active

activeValidation
type: {Boolean}
Description: Validation updates as the user types instead of waiting until the field loses focus.
default: false

pattern
type: {Regex|String}
Description: A named regular expression pattern or a regular expression (e.g. ^\\d+$).
default: Not active

Named regex patterns:
phone, email, url, number, dateISO, alpha, alphaNumeric, integer, systemKey

colorpicker

required
type: {Boolean}
description: Makes the field required
default: false

autocomplete / userpicker

required
type: {Boolean}
description: Makes the field required
default: false

radiogroup

required
type: {Boolean}
description: Makes the field required
default: false

Requirements

This project was built and tested with AEM 6.1.

How to build the Demo

If you have a running AEM instance you can build and package the whole project and deploy into AEM from within the /src folder with:

mvn clean install -PautoInstallPackage

Explore the demo

  1. Navigate to http://localhost:4502/editor.html/content/aem-touch-ui-validation/en.html
  2. Open the component dialogs and test the various included Touch UI components.

The main parts of the source project are:

  • ui.apps: contains the /apps and /etc parts of the project, ie JS & CSS clientlibs, components and templates. The validation library is under /etc/designs/aem-touch-ui-validation
  • ui.content: contains sample content using the components from the ui.apps.

Using the library

A package is provided in the /package folder. Install it with Package Manager at http://localhost:4502/crx/packmgr/index.jsp or you can copy the /aem-touch-ui-validation folder into your project.

The project is licensed under Apache License 2.0.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].