Créer des mini programmes
Les mini programmes vous permettent d'étendre les fonctionnalités de base de Tommy de presque toutes les manières possibles. Cette flexibilité est l'une des caractéristiques clés de la plateforme Tommy.
Il existe trois types d'extensions pouvant être utilisées à différentes fins :
- Mini programme visuel : mini programme qui s'intègre à l'interface de l'application Tommy et l'étend.
- Extension non visuelle : extensions qui s'intègrent au système d'actions Tommy
- Une combinaison des deux, visuelle et non visuelle.
Structure des fichiers
La structure du dossier d'extension est très simple :
Le mini programme le plus simple possible, sans vues ni tâches, pourrait n'être composé que d'un seul fichier manifest.yml.
Poursuivons avec une explication du fichier manifest.yml.
Fichier manifeste
Le fichier manifeste manifest.yml est le fichier le plus important d'un mini programme. Chaque mini programme doit contenir un unique fichier manifeste, qui contient toutes les métadonnées, les options de configuration ainsi qu'une liste des vues et des actions exposées par votre mini programme.
L'exemple de manifeste ci-dessous est extrait du mini programme Poke, très basique. Ce mini programme contient une seule vue, une seule tâche et une seule action, et le fichier manifeste ressemble à ceci :
Les options du manifeste sont les suivantes :- title : (String) Le nom lisible par un humain du mini programme.
- package : (String) Le nom lisible par une machine du mini programme, en underscore case.
- version : (String) Le numéro de version de la publication (doit être incrémenté à chaque publication).
- author : (String) Le nom de l'auteur de l'extension (peut être une personne ou une organisation).
- private : (Boolean) Le paramètre de confidentialité qui détermine si ce mini programme est utilisable ou non par d'autres utilisateurs de Tommy.
- views : (Object) L'objet contenant les vues à exposer sur l'interface.
- actions : (Object) L'objet contenant les actions prédéfinies implémentées par le mini programme.
- triggers : (Object) L'objet contenant les déclencheurs d'action implémentés par le mini programme.
- conditions : (Object) L'objet contenant les conditions d'action implémentées par le mini programme.
- activities : (Object) L'objet contenant les activités d'action implémentées par le mini programme.
- roles : (Array) Peut être n'importe quel rôle attribué dynamiquement à un membre de l'équipe, ou l'un des rôles intégrés : « Team Member », « Team Manager », « Team Admin ».
Vues
Chaque mini programme peut contenir plusieurs vues à exposer sur l'interface. Les vues sont définies dans l'option views du fichier manifest.yml.
Les options du manifeste sont les suivantes :- id : (String) L'identifiant de la page de vue (doit être unique au sein de la portée de l'extension).
- name : (String) Le titre de la page de vue.
- file : (String) Le chemin relatif de la vue vers le fichier HTML de la vue, par ex. client/main.html.
- type : (String) Le type de vue ; les types actuellement pris en charge sont page et form.
- index : (Boolean) À définir sur true pour la vue principale qui sera chargée au démarrage du mini programme.
- framed : (Boolean) Indique si la vue doit être chargée à l'intérieur d'une iframe.
- roles : (Array) Peut être n'importe quel rôle attribué dynamiquement à un membre de l'équipe, ou l'un des rôles intégrés : « Team Member », « Team Manager », « Team Admin ».
- lockable : (Boolean) Permet à la vue d'index d'afficher une mise en page verrouillée.