UNPKG

@fto-consult/expo-ui

Version:

Bibliothèque de composants UI Expo,react-native

79 lines (72 loc) 7.81 kB
/**** la liste des tables de donnéees à exporter, de la forme : [tableName1] : { tableName <string>, le nom de la table name label | text <string>, le titre à donner à la table data icon : <string | ReactComponent>, l'icon de la table data, queryPath <string>, //le chemin lié à l'api REST utilisée pour effectuer un query sur les données liés à la table Data en question perms <object>, //l'objet perms définissant les permissions pouvant être assignés à l'utilisateur pour la table de donénes showInFab <boolean | function()=><boolean>, //si la table de données sera affiché dans le layout Fab, le composant Fab qui est rendu pour les écrans dont la propriété withFab est à true showInDrawer <boolean | function()=><boolean>, //détermine si la table data sera affichée dans le drawer principal de l'application datagrid <object>, //les props à passer au composant datagrid lié à la table de données drawerSection <string>, //le nom de la section associé au drawer dans lequel figurera le table data print <function ({data,...settings})>=> <Promise<{content:[],...rest}>, //la fonction utile pour l'impression de la tabel de données suivant les recommandation de la libraririe pdfmake printOptions < funcion<{data<object>,...options}=><object> | object>, //les options à passer à la fonction print, newElementLabel : <string>, //le texte à utiliser pour le rendu du bouton lorsqu'il s'agit d'un nouvel element de la table data databaseStatistics <function ()=> <boolean> | boolean>, //si la table data figurera dans les Statistiques en BD, validable si le composant DatabaseStatistics est appélé dans l'application showInFab <boolean | function()=><boolean>, //spécifie si un bouton lié à la table sera affiché dans le composant Fab //le champ fabProps doit retourner les props à appliquer au composant fab lié à la table data,si elle définit une propriété nomée actions de types tableau, alors, ces actions seront utilisées commes actions personnalisées du fab // il doit s'agit d'un objet de la forme : { actions : <array<Item> | object <Item>>. Item doit être un objet avec les propriétés suivantes : Item : { text | label <string> : "le texte à afficher au bouton fab", icon <string | ReactComponent>, l'icone du bouton de fab, backgroundColor <string, //la couleur d'arrière plan du bouton color <string>, //la couleur du bouton de fab onPress <func ()=>void>, //la fonction appelée lorsqu'on clique sur le bouton } } fabProps { boolean<false> | object|function({tableName})}, //si fabProps vaux false ou retourne false, alors le table data ne s'affichera pas dans le composant Fab fields : { //la liste des champs liés à la table de données [field1] : { label | text : <string | ReactComponent>, le texte ou libelé lié au champ type : <string>, le type de field par exemple : text,password, email, switch, checkbox, tel, select, et bien d'autres sortable : <boolean>, //si la colonne sera triable filterable : <boolean> //si la colonne sera filterable form : <boolen> //si la colonne sera affiché et pris en compte dans le formulaire (FormData) lié à l'enregistrement des données de la table data datagrid : <boolean> //si la colonne sera affiché et pris en compte dans le composant Datagrid //cette fonction est appelée à chaque fois que les premiers règles de validations ont été conclus lors de la validation du champ. Elle doit retourner soit un boolean, une chaine de caractère, un objet ou une promesse //si une chaine de caractère est retournée, alors la validation du champ considère qu'il s'agit d'une erreur et le message est affiché comme erreur de validation du champ //si un objet est retourné et cet objet contient un champ message | msg de type string, alors le validateur considère qu'il s'agit d'une erreur et le champ en question est affiché comme message de l'erreur //si une promese est retournée, alors la fonction attendra que la promesse soit résolue 1. si la promesse resoud une chaine de caractère ou un objet idem au cas précédent, ladite chaine est condisérée comme une erreur 2. si la promesse renvoie une erreur, alors le validateur considère comme un échec de validation et le message lié à l'erreur est affiché comme message d'erreur de validation //si false est retournée, alors rien n'est fait et le status de ce champ reste toujours à invalide. il sera donc impossible d'enregistrer le formulaire form data //si true est retourneé, alors la formField est valide onValidatorValid : ({value,context,....rest}) => <boolean | object {} | string | Promise <boolean | object : {} | string>>, exportable : <boolean>, //si le champ est exportable au format pdf ou excel //Cette fonction est appélée à chaque échec de validation du form field onValidatorNoValid : ({value,context,...rest}) => <any> width : 180, //définit la longueur de la colonne dans le composant datagrid //si vous souhaitez personnaliser le rendu de la colonne dans le composant Datagrid datagrid : { render : ({rowData,columnField,columnDef,...rest})=><ReactNode> }, visible : <boolean>, //si le champ sera visible (par défaut dans le datagrid) et dans le formulaire d'enregistrement ou modification de la données lié à la table data readOnly : <boolean>, //si le champ sera en lecture seul dans le formulaire d'enregistrement d'une nouvelle données lié à la table data disabled : <boolean>, //si le champ sera désactivé dans le formulaire d'enregistrement/modification de la données liées à la table data readOnlyOnEditing : <boolean>, //si le champ sera en mode lecture seule au moment de la modification de la données liée à la table data visibleOnlyOnCreate : <boolean>, //si le champ est visible dans le formulaire uniquement en cas de création visibleOnlyOnEditing : <boolean>, //si le champ sera visible uniquement au moment de la modification de la données liées à la table data disabledOnEditing : <boolean>, //si le champ est désactivé dans le formulaire lorsqu'il s'agit de la modification de la données liée à la table data primaryKey : <boolean>, //si le champ fait partie des clés primaire de la table data. Par défaut, tous les champs de type clé primaire sont en mode lecture seule en cas de modification de la données. il est indispensable pour chaque table de données de toujours spécifier au moins un champ comme clé primaire. tous les champs ayant cette propriétés à true sont utilisés à chaque fois pour évaluer l'identifiant unique lié àla table data mais aussi pour déterminer s'il s'agit d'une mise à jour où pas }, .... [fieldN] : {....} }, } */ export default { users : require("./users").default, } export {default as getTable} from "./getTable";