https://github.com/merkle-open/aem-generic-multifield
Generic Multifield component dialog extension for AEM
https://github.com/merkle-open/aem-generic-multifield
aem coral-spectrum coralui graniteui
Last synced: about 1 year ago
JSON representation
Generic Multifield component dialog extension for AEM
- Host: GitHub
- URL: https://github.com/merkle-open/aem-generic-multifield
- Owner: merkle-open
- License: mit
- Created: 2017-11-30T09:46:44.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2025-03-21T09:34:01.000Z (about 1 year ago)
- Last Synced: 2025-04-05T23:32:00.344Z (about 1 year ago)
- Topics: aem, coral-spectrum, coralui, graniteui
- Language: JavaScript
- Homepage:
- Size: 440 KB
- Stars: 16
- Watchers: 10
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Generic Multifield for AEMaaCS
With this project you can use a widget
in [AEM as a Cloud Service](https://experienceleague.adobe.com/docs/experience-manager-cloud-service/content/release-notes/home.html)
Touch UI which lets you create a generic multifield in a dialog.
| System | Status |
|------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| CI master | [](https://github.com/merkle-open/aem-generic-multifield/actions/workflows/release-and-deploy-release.yml) |
| CI develop | [](https://github.com/merkle-open/aem-generic-multifield/actions/workflows/deploy-snapshot.yml) |
| Dependency | [](https://maven-badges.herokuapp.com/maven-central/com.namics.oss.aem/genericmultifield) |
* [Generic Multifield for AEMaaCS](#generic-multifield-for-aemaacs)
* [Requirements](#requirements)
* [Maven Dependency](#maven-dependency)
* [in AEM](#in-aem)
* [Component Dialog](#component-dialog)
* [Properties](#properties)
* [Item-Dialog](#item-dialog)
* [Repository](#repository)
* [Development](#development)
## Requirements
| System | Version |
|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| AEMaaCS | min version: [2023.12.0](https://experienceleague.adobe.com/en/docs/experience-manager-cloud-service/content/release-notes/release-notes/2023/release-notes-2023-12-0) |
## Maven Dependency
```
com.namics.oss.aem
genericmultifield
4.0.0
```
## in AEM
Since the Generic Multifield is built as an OSGi bundle, only the bundle has to be installed into your AEM instance.
With the common AEM archetype it can be added within the embedded configuration of the `content-package-maven-plugin`
plugin.
```xml
com.day.jcr.vault
content-package-maven-plugin
true
...
com.namics.oss.aem
genericmultifield
/apps/myProject/install
```
### Component Dialog
Example usage of the Generic Multifield in your component `_cq_dialog.xml` definition within AEM:
```xml
...
...
```
#### Properties
| Property | Function |
|----------------------|---------------------------------------------------------------------------------------------------------------------------------------------------|
| **itemDialog** | Path reference to the dialog definition of a generic multifield item. |
| **itemNameProperty** | Defines the value representation of a generic multifield entry within the component dialog. Must be a reference to an item dialog property. |
| **minElements** | Defines the minimal amount of generic multifield entries. |
| **maxElements** | Defines the maximal amount of generic multifield entries. |
| **required** | If set to `{Boolean}true`, the main component dialog will not validate until at least one item hast been defined. |
| **itemStorageNode** | Defines the parent node name created within the component node. Generic multifield items will be saved beneath this node
(default: `items`). |

### Item-Dialog
Example definition of the Generic Multifield item in your component's `item-dialog.xml` referenced
within `` definition via property `itemDialog`:
```xml
```

### Repository
In the repository the content is stored as follows:

## Development
Build locally with Maven
```
mvn clean install -PautoInstallBundle
```