|
| 1 | +import{_ as s,c as n,o as e,a}from"./app-DV-OZBH0.js";const i={},l=a(`<h1 id="formulaire" tabindex="-1"><a class="header-anchor" href="#formulaire"><span>Formulaire</span></a></h1><p>Il est possible, une fois que le fichier de validation est fait de generer le fichier de configuration pour l'interface de validation</p><h2 id="principe" tabindex="-1"><a class="header-anchor" href="#principe"><span>Principe</span></a></h2><p>Les fichiers de configurations pour l'interface d'administration sont dans configs/sesame-orchestrator/jsonforms.</p><p>LE nommage de ses fichiers est le suivant [schema].ui.yml. La presence du fichier ajoutera un onglet dans l'identité.</p><h2 id="format" tabindex="-1"><a class="header-anchor" href="#format"><span>Format</span></a></h2><p>Le format du fichier de formulaire respecte la norme <a href="https://jsonforms.io/docs/uischema/" target="_blank" rel="noopener noreferrer">JSONFORMS</a></p><p>Le fichier peut être ecrit dans un format YML ou JSON.</p><p>Après l installation deux fichiers sont présents inetorgperson.ui.yml et supannPerson.ui.yml</p><p>Fichier inetorgperson.ui.yml</p><div class="language-text line-numbers-mode" data-highlighter="prismjs" data-ext="text" data-title="text"><pre class="language-text"><code><span class="line">type: Group</span> |
| 2 | +<span class="line">label: Identité</span> |
| 3 | +<span class="line">elements:</span> |
| 4 | +<span class="line">- type: HorizontalLayout</span> |
| 5 | +<span class="line"> elements:</span> |
| 6 | +<span class="line"> - type: Control</span> |
| 7 | +<span class="line"> label: UID</span> |
| 8 | +<span class="line"> scope: "#/properties/uid"</span> |
| 9 | +<span class="line"> options:</span> |
| 10 | +<span class="line"> required: true</span> |
| 11 | +<span class="line"> - type: Control</span> |
| 12 | +<span class="line"> label: CN</span> |
| 13 | +<span class="line"> scope: "#/properties/cn"</span> |
| 14 | +<span class="line"> options:</span> |
| 15 | +<span class="line"> required: true</span> |
| 16 | +<span class="line"> readOnly: true</span> |
| 17 | +<span class="line"> - type: Control</span> |
| 18 | +<span class="line"> label: Nom</span> |
| 19 | +<span class="line"> scope: "#/properties/sn"</span> |
| 20 | +<span class="line"> options:</span> |
| 21 | +<span class="line"> readOnly: true</span> |
| 22 | +<span class="line"> required: true</span> |
| 23 | +<span class="line">- type: HorizontalLayout</span> |
| 24 | +<span class="line"> elements:</span> |
| 25 | +<span class="line"> - type: Control</span> |
| 26 | +<span class="line"> label: Nom d'affichage</span> |
| 27 | +<span class="line"> scope: "#/properties/displayName"</span> |
| 28 | +<span class="line"> options:</span> |
| 29 | +<span class="line"> readOnly: true</span> |
| 30 | +<span class="line"> - type: Control</span> |
| 31 | +<span class="line"> label: Prénom</span> |
| 32 | +<span class="line"> scope: "#/properties/givenName"</span> |
| 33 | +<span class="line"> options:</span> |
| 34 | +<span class="line"> readOnly: true</span> |
| 35 | +<span class="line">- type: HorizontalLayout</span> |
| 36 | +<span class="line"> elements:</span> |
| 37 | +<span class="line"> - type: Control</span> |
| 38 | +<span class="line"> label: Email</span> |
| 39 | +<span class="line"> scope: "#/properties/mail"</span> |
| 40 | +<span class="line"> options:</span> |
| 41 | +<span class="line"> format: email</span> |
| 42 | +<span class="line"> - type: Control</span> |
| 43 | +<span class="line"> label: Mobile</span> |
| 44 | +<span class="line"> scope: "#/properties/mobile"</span> |
| 45 | +<span class="line"> options:</span> |
| 46 | +<span class="line"> readOnly: true</span> |
| 47 | +<span class="line"> - type: Control</span> |
| 48 | +<span class="line"> label: Adresse postale</span> |
| 49 | +<span class="line"> scope: "#/properties/postalAddress"</span> |
| 50 | +<span class="line"> options:</span> |
| 51 | +<span class="line"> readOnly: true</span> |
| 52 | +<span class="line">- type: HorizontalLayout</span> |
| 53 | +<span class="line"> elements:</span> |
| 54 | +<span class="line"> - type: Control</span> |
| 55 | +<span class="line"> label: language préféré</span> |
| 56 | +<span class="line"> scope: "#/properties/preferredLanguage"</span> |
| 57 | +<span class="line"> options:</span> |
| 58 | +<span class="line"> required: false</span> |
| 59 | +<span class="line"> suggestion:</span> |
| 60 | +<span class="line"> - FR</span> |
| 61 | +<span class="line"> - EN</span> |
| 62 | +<span class="line"> - DE</span> |
| 63 | +<span class="line"> - IT</span> |
| 64 | +<span class="line"> - type: Control</span> |
| 65 | +<span class="line"> label: Téléphone</span> |
| 66 | +<span class="line"> scope: "#/properties/telephoneNumber"</span> |
| 67 | +<span class="line"> options:</span> |
| 68 | +<span class="line"> readOnly: true</span> |
| 69 | +<span class="line"> - type: Control</span> |
| 70 | +<span class="line"> label: Titre</span> |
| 71 | +<span class="line"> scope: "#/properties/title"</span> |
| 72 | +<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>Un élement est composé de :</p><ul><li>type : Control</li><li>label : Label affiché au dessus du champ</li><li>scope : La référence vers le champs de l'identité sous la forme '#/properties/[Champ]</li><li>options : les options de l'élement. Les options dependent du type de champ</li></ul><h2 id="exemple" tabindex="-1"><a class="header-anchor" href="#exemple"><span>Exemple</span></a></h2><p>Pour afficher les champs que nous avons défini dans l'exemple de la configuration des champs et validation, nou créons un fichier configs/sesame-orchestrator/jsonforms/sogxuser.ui.yml</p><div class="language-text line-numbers-mode" data-highlighter="prismjs" data-ext="text" data-title="text"><pre class="language-text"><code><span class="line">type: Group</span> |
| 73 | +<span class="line">label: Messagerie</span> |
| 74 | +<span class="line">elements:</span> |
| 75 | +<span class="line"> - type: HorizontalLayout</span> |
| 76 | +<span class="line"> elements:</span> |
| 77 | +<span class="line"> - type: Control</span> |
| 78 | +<span class="line"> label: Actif(1)/Inactif(0)</span> |
| 79 | +<span class="line"> scope: "#/properties/sogxdisableflag"</span> |
| 80 | +<span class="line"> options:</span> |
| 81 | +<span class="line"> required: true</span> |
| 82 | +<span class="line"> suggestion:</span> |
| 83 | +<span class="line"> - "0"</span> |
| 84 | +<span class="line"> - "1"</span> |
| 85 | +<span class="line"> - type: Control</span> |
| 86 | +<span class="line"> label: Quota</span> |
| 87 | +<span class="line"> scope: "#/properties/sogxquota"</span> |
| 88 | +<span class="line"> options:</span> |
| 89 | +<span class="line"> showUnfocusedDescription: false</span> |
| 90 | +<span class="line"> </span> |
| 91 | +<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>Nous retrouvons nos deux champs sogxdisableflag et sogxquota dans ce fichier</p>`,17),p=[l];function r(c,d){return e(),n("div",null,p)}const o=s(i,[["render",r],["__file","formulaire.html.vue"]]),u=JSON.parse('{"path":"/configuration/formulaire.html","title":"Formulaire","lang":"en-US","frontmatter":{},"headers":[{"level":2,"title":"Principe","slug":"principe","link":"#principe","children":[]},{"level":2,"title":"Format","slug":"format","link":"#format","children":[]},{"level":2,"title":"Exemple","slug":"exemple","link":"#exemple","children":[]}],"git":{"updatedTime":1718092811000,"contributors":[{"name":"Alain Abbas","email":"alain.abbas@libertech.fr","commits":1}]},"filePathRelative":"configuration/formulaire.md"}');export{o as comp,u as data}; |
0 commit comments