diff --git a/src/firstExample.ts b/src/firstExample.ts index fed75e7..a954cd2 100644 --- a/src/firstExample.ts +++ b/src/firstExample.ts @@ -1,13 +1,10 @@ -import { freeDatas2HTML } from "./freeDatas2HTML"; +import { FreeDatas2HTML, Pagination, Selector, SortingField } from "./freeDatas2HTML"; const initialise = async () => { try { - let converter=new freeDatas2HTML(); - converter.datasViewElt={ id:"datas" }; - converter.datasSelectors=[{ datasFieldNb:3, id:"filtre1"}, { datasFieldNb:4, id:"filtre2"},{ datasFieldNb:5, id:"filtre3", separator:"," }]; - + // Fonction spécifique de classement utile pour les données du 4ième champs const mySort = (a: any, b: any, order: "asc"|"desc" = "asc") => { const values = [ "> 100000", "> 1 et < 100 000", "≤ 1", "Traces", "Inexistant"]; @@ -20,25 +17,56 @@ const initialise = async () => else return 0; }; - converter.datasSortingColumns=[{ datasFieldNb:0 }, { datasFieldNb:1 },{ datasFieldNb:2 }, { datasFieldNb:4 }]; - converter.datasSortingFunctions= [{ datasFieldNb:4, sort:mySort}]; - converter.pagination= - { - selectedValue:10, - options: - { - displayElement : { id:"paginationOptions" }, - values: [10,20,50,500], - name: "Choix de pagination :" - }, - pages: - { - displayElement : { id:"pages" }, - name: "Page à afficher :" - } - } + + // Création d'un convertisseur parsant les données d'un fichier CSV "distant" + let converter=new FreeDatas2HTML(); + converter.datasViewElt={ id:"datas" }; converter.datasSourceUrl="http://localhost:8080/datas/elements-chimiques.csv"; + await converter.parse(); + converter.datasSortingFunctions=[{ datasFieldNb: 4, sort:mySort }]; + + // Configuration de la pagination + const pagination=new Pagination(converter, { id:"pages" }, "Page à afficher :"); + pagination.options={ displayElement: { id:"paginationOptions" }, values: [10,20,50,500] , name: "Choix de pagination :" }; + pagination.selectedValue=10; // revoir car n'est pas testé si déclaré avant les options + converter.pagination=pagination; + pagination.rend2HTML(); + + // Affichage initial await converter.run(); + + // Création d'outils permettant de filtrer les données des champs de données + let filtre1=new Selector(converter); + filtre1.datasViewElt={ id:"filtre1"}; + filtre1.datasFieldNb=3; + filtre1.selector2HTML(); + let filtre2=new Selector(converter); + filtre2.datasViewElt={ id:"filtre2"}; + filtre2.datasFieldNb=4; + filtre2.selector2HTML(); + let filtre3=new Selector(converter); + filtre3.datasViewElt={ id:"filtre3"}; + filtre3.datasFieldNb=5; + filtre3.separator=","; + filtre3.selector2HTML(); + // Injection des filtres dans le convertisseur + converter.datasSelectors=[filtre1,filtre2,filtre3]; + + // Ajout de champs permettant de classer les données + let sortingField1=new SortingField(converter); + sortingField1.datasFieldNb=0; + sortingField1.field2HTML(); + let sortingField2=new SortingField(converter); + sortingField2.datasFieldNb=1; + sortingField2.field2HTML(); + let sortingField3=new SortingField(converter); + sortingField3.datasFieldNb=2; + sortingField3.field2HTML(); + let sortingField4=new SortingField(converter); + sortingField4.datasFieldNb=4; + sortingField4.field2HTML(); + // Injection dans le convertisseur + converter.datasSortingFields=[sortingField1,sortingField2,sortingField3,sortingField4]; } catch(e) {