Définitions de modèles, champs et types de composants field-types
Découvrez les champs et les types de composants que l’éditeur universel peut modifier dans le rail des propriétés avec des exemples. Découvrez comment vous pouvez instrumenter votre propre application en créant une définition de modèle et en la liant au composant.
Vue d’ensemble overview
Lorsque vous adaptez vos propres applications pour les utiliser avec l’éditeur universel, vous devez instrumenter les composants et définir les champs et les types de composants qu’ils peuvent manipuler dans le rail des propriétés de l’éditeur. Pour ce faire, créez un modèle et liez-le à partir du composant.
Ce document présente la définition d’un modèle, ainsi que les champs et les types de composants disponibles, avec des exemples de configuration.
Structure de la définition de modèle model-structure
Pour configurer un composant via le rail de propriétés de l’éditeur universel, une définition de modèle doit exister et être liée au composant.
La définition de modèle est une structure JSON, commençant par un tableau de modèles.
[
{
"id": "model-id", // must be unique
"fields": [] // array of fields which shall be rendered in the properties rail
}
]
Pour plus d’informations sur la définition de votre tableau fields
, reportez-vous à la section Fields de ce document.
Pour utiliser la définition de modèle avec un composant, l’attribut data-aue-model
peut être utilisé.
<div data-aue-resource="urn:datasource:/content/path" data-aue-type="component" data-aue-model="model-id">Click me</div>
Chargement d’une définition de modèle loading-model
Une fois créé, un modèle peut être référencé en tant que fichier externe.
<script type="application/vnd.adobe.aue.model+json" src="<url-of-model-definition>"></script>
Vous pouvez également définir le modèle intégré.
<script type="application/vnd.adobe.aue.model+json">
{ ... model definition ... }
</script>
Champs fields
Un objet de champ possède la définition de type suivante.
component
ComponentType
name
string
label
FieldLabel
description
FieldDescription
placeholder
string
value
FieldValue
valueType
ValueType
string
, string[]
, number
, date
, boolean
required
boolean
readOnly
boolean
hidden
boolean
multi
boolean
validation
ValidationType
raw
unknown
Types de composants component-types
Vous trouverez ci-dessous les types de composants que vous pouvez utiliser pour les champs de rendu.
aem-tag
aem-content
boolean
checkbox-group
container
aem-content-fragment
date-time
multiselect
number
radio-group
reference
richtext
select
tab
text
AEM balise aem-tag
Un type de composant de balise AEM active un sélecteur de balise AEM, qui peut être utilisé pour joindre des balises au composant.
code language-json |
---|
|
![Capture d’écran du type de composant de balise AEM](./media_1159651cabbe711ba93dd5acc430b04fcaa0a07c6.png?width=750&format=png&optimize=medium)
Contenu AEM aem-content
Un type de composant de contenu AEM active un sélecteur de contenu AEM, qui peut être utilisé pour définir des références de contenu.
code language-json |
---|
|
![Capture d’écran du type de composant de contenu AEM](./media_1f5cbfa1ff71d1a51b6c9e61d194b235760281617.png?width=750&format=png&optimize=medium)
Booléen boolean
Un type de composant booléen stocke une simple valeur true/false rendue en tant que basculement. Il offre un type de validation supplémentaire.
customErrorMsg
string
code language-json |
---|
|
code language-json |
---|
|
![Capture d’écran du type de composant booléen](./media_1b673ea5591e814bb10c8c2327a8d4345c8b6da50.png?width=750&format=png&optimize=medium)
Groupe de cases à cocher checkbox-group
Tout comme une valeur booléenne, un type de composant de groupe de cases à cocher permet de sélectionner plusieurs éléments true/false, rendus sous la forme de plusieurs cases à cocher.
code language-json |
---|
|
![Capture d’écran du type de composant de groupe de cases à cocher](./media_1a66c505c6ad3e5d45c1f493e5676ce69ebcca822.png?width=750&format=png&optimize=medium)
Conteneur container
Un type de composant de conteneur permet le regroupement de composants. Il propose une configuration supplémentaire.
collapsible
boolean
code language-json |
---|
|
![Capture d’écran du type de composant de conteneur](./media_144a48a63fe8acb3d1ee1472b114c38b773fcdc4e.png?width=750&format=png&optimize=medium)
Fragment de contenu content-fragment
Le sélecteur de fragment de contenu peut être utilisé pour sélectionner un fragment de contenu et ses variations (si nécessaire). Il propose une configuration supplémentaire.
variationName
string
code language-json |
---|
|
![Capture d’écran du sélecteur de fragment de contenu](./media_11756da76e36f9d7b47e87d06371a2f6c99371c54.png?width=750&format=png&optimize=medium)
Heure de date date-time
Un type de composant de date et d’heure permet de spécifier une date, une heure ou une combinaison de celles-ci. Il propose des configurations supplémentaires.
displayFormat
string
valueFormat
string
Il propose également un type de validation supplémentaire.
customErrorMsg
string
valueFormat
n’est pas satisfaitcode language-json |
---|
|
code language-json |
---|
|
![Capture d’écran du type de composant d’heure de date](./media_1fb7ce59e7d55ecb8462d42e25b84056e31381cc5.png?width=750&format=png&optimize=medium)
Fragment d’expérience experience-fragment
Le sélecteur de fragment d’expérience peut être utilisé pour sélectionner un fragment d’expérience et ses variations (si nécessaire). Il propose une configuration supplémentaire.
variationName
string
code language-json |
---|
|
![Capture d’écran du sélecteur de fragment d’expérience](./media_192e8f6521eb9ef084f0cd392393a4ce5dccc8dc6.png?width=750&format=png&optimize=medium)
Multisélection multiselect
Un type de composant à sélection multiple présente plusieurs éléments à sélectionner dans une liste déroulante, notamment la possibilité de regrouper les éléments sélectionnables.
code language-json |
---|
|
code language-json |
---|
|
![Capture d’écran du type de composant multi-select](./media_150cc6e56950fb2f7a83278ced464fba80c7ed9ac.png?width=750&format=png&optimize=medium)
![Capture d’écran du type de composant à sélection multiple avec regroupement](./media_1dece1668ebedfa6b8c3956dc9d3277c4178c7488.png?width=750&format=png&optimize=medium)
Nombre number
Un type de composant numérique permet la saisie d’un nombre. Il offre des types de validation supplémentaires.
numberMin
number
numberMax
number
customErrorMsg
string
numberMin
ou numberMax
n’est pas satisfaitcode language-json |
---|
|
code language-json |
---|
|
![Capture d’écran du type de composant numérique](./media_15146425e109a386730d4a2edbf36bb159899e009.png?width=750&format=png&optimize=medium)
Groupe de cases d’option radio-group
Un type de composant de groupe de cases d’option permet une sélection mutuellement exclusive de plusieurs options rendues sous la forme d’un groupe semblable à un groupe de cases à cocher.
code language-json |
---|
|
![Capture d’écran du type de composant de groupe radio](./media_19057aca4a834513c482f4f637c785b3b14c08419.png?width=750&format=png&optimize=medium)
Référence reference
Un type de composant de référence permet une référence à un autre objet de données de l’objet actif.
code language-json |
---|
|
![Capture d’écran du type de composant de référence](./media_113db176eaad949caf55bc670dd51fe33b825464a.png?width=750&format=png&optimize=medium)
Texte enrichi rich-text
Le texte enrichi permet une saisie de texte enrichi multiligne. Il offre des types de validation supplémentaires.
maxSize
number
customErrorMsg
string
maxSize
est dépassécode language-json |
---|
|
code language-json |
---|
|
![Capture d’écran du type de composant Zone de texte](./media_12bd81eda29531805af2de8c81a45684f722c94a9.png?width=750&format=png&optimize=medium)
Sélectionner select
Un type de composant sélectionné permet de sélectionner une seule option dans une liste d’options prédéfinies d’un menu déroulant.
code language-json |
---|
|
![Capture d’écran du type de composant sélectionné](./media_1c86213678ecd6ed6128f8ec37aab80bac74b7779.png?width=750&format=png&optimize=medium)
Tabulation tab
Un type de composant Onglets vous permet de regrouper d’autres champs de saisie sur plusieurs onglets afin d’améliorer l’organisation de la mise en page pour les auteurs.
Une définition tab
peut être considérée comme un séparateur dans le tableau de fields
. Tout ce qui suit un tab
est placé sur cet onglet jusqu’à ce qu’un nouvel tab
soit rencontré, où les éléments suivants seront placés sur le nouvel onglet.
Si vous souhaitez que les éléments apparaissent au-dessus de tous les onglets, ils doivent être définis avant les onglets.
code language-json |
---|
|
![Capture d’écran du type de composant Onglet](./media_132123718b8b23e0fcbd612a3bdf5cfaeb6e1b3dd.png?width=750&format=png&optimize=medium)
Texte text
Le texte permet une seule ligne de saisie de texte. Elle comprend des types de validation supplémentaires.
minLength
number
maxLength
number
regExp
string
customErrorMsg
string
minLength
, maxLength
et/ou regExp
sont enfreintscode language-json |
---|
|
code language-json |
---|
|
![Capture d’écran du type de composant de texte](./media_1983458e1a920be3f84923c8ae42d65f78b7df63e.png?width=750&format=png&optimize=medium)