<commit_before># 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.

![Multifield validation with min and max limits](aem_touch_ui_validation_screenshot.png)

## 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](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
<commit_msg>Add link to blog post in readme<commit_after># 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](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](aem_touch_ui_validation_screenshot.png)

## 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](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

{'fraction_non_alphanumeric': 0.08260105448154657, 'fraction_numerical': 0.00773286467486819, 'mean_word_length': 4.941544885177453, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 4, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6375297', 'n_tokens_mistral': 823, 'n_tokens_neox': 786, 'n_words': 294}