Ajout possibilité de filter les données à partir de colonnes contenant plusieurs valeurs dans une même ligne distinguées via un séparateur (exemple : liste de mots-clés).

This commit is contained in:
Fabrice PENHOËT 2021-09-01 12:12:28 +02:00
parent 74d31b0064
commit 4235d1708a
9 changed files with 445 additions and 23 deletions

View File

@ -20,7 +20,7 @@ La première version se contente de récupérer et parser des données présente
Les données trouvées sont affichées dans un tableau. En option, des colonnes peuvent être indiquées par filtrer les données.
Pour parser les données CSV, [Papa Parse](https://www.papaparse.com/) est utilisé.
Cette première version est fonctionnelle, même s'il reste à revoir le classement par ordre alphabétique des filtres pouvant poser un souci si des colonnes contiennent des nombres, des dates, etc. Toujours pour les filtres, il faudra prévoir le cas où plusieurs valeurs sont disponibles dans une même colonne (Exemple : liste de mots-clés) qui seront donc à extraire.
Cette première version est fonctionnelle, même s'il reste à revoir le classement par ordre alphabétique des filtres pouvant poser un souci si des colonnes contiennent des nombres, des dates, etc.
Ensuite ajouter la possibilité de classement sur certaines colonnes et la pagination, le tout en options, le développeur final devant pouvoir adapter le module à son besoin. Et puis s'attaquer aux autres sources/formats possibles pour les données...

View File

@ -1,6 +1,6 @@
{
"name": "freedatas2html",
"version": "0.3.1",
"version": "0.3.2",
"description": "Visualization of data from various sources (CSV, API, HTML...) with filters, classification, pagination, etc.",
"main": "index.js",
"scripts": {

View File

@ -0,0 +1,119 @@
Z (numéro atomique),Élément,Symbole,Famille,Abondance des éléments dans la croûte terrestre (μg/k),Étiquettes
1,Hydrogène,H,Non-métal,> 100000,Exemple1
2,Hélium,He,Gaz noble,> 1 et < 100 000,Exemple2
3,Lithium,Li,Métal alcalin,> 1 et < 100 000,Exemple2|Exemple1
4,Béryllium,Be,Métal alcalino-terreux,> 1 et < 100 000,Exemple3
5,Bore,B,Métalloïde,> 1 et < 100 000,Exemple5
6,Carbone,C,Non-métal,> 100000,Exemple5|Exemple2
7,Azote,N,Non-métal,> 1 et < 100 000,Exemple4
8,Oxygène,O,Non-métal,> 100000,Exemple1
9,Fluor,F,Halogène,> 100000,Exemple2|Exemple1
10,Néon,Ne,Gaz noble,> 1 et < 100 000,Exemple2|Exemple2
11,Sodium,Na,Métal alcalin,> 100000,Exemple2|Exemple3
12,Magnésium,Mg,Métal alcalino-terreux,> 100000,Exemple2|Exemple4
13,Aluminium,Al,Métal pauvre,> 100000,Exemple1
14,Silicium,Si,Métalloïde,> 100000,Exemple2
15,Phosphore,P,Non-métal,> 100000,Exemple2|Exemple0
16,Soufre,S,Non-métal,> 100000,Exemple5|Exemple2
17,Chlore,Cl,Halogène,> 100000,Exemple5|Exemple3
18,Argon,Ar,Gaz noble,> 1 et < 100 000,Exemple5|Exemple4
19,Potassium,K,Métal alcalin,> 100000,Exemple5|Exemple5
20,Calcium,Ca,Métal alcalino-terreux,> 100000,Exemple5|Exemple6
21,Scandium,Sc,Métal de transition,> 1 et < 100 000,Exemple5|Exemple7
22,Titane,Ti,Métal de transition,> 100000,Exemple4
23,Vanadium,V,Métal de transition,> 100000,Exemple1
24,Chrome,Cr,Métal de transition,> 100000,Exemple4
25,Manganèse,Mn,Métal de transition,> 100000,Exemple3
26,Fer,Fe,Métal de transition,> 100000,Exemple2
27,Cobalt,Co,Métal de transition,> 1 et < 100 000,Exemple1
28,Nickel,Ni,Métal de transition,> 1 et < 100 000,Exemple2
29,Cuivre,Cu,Métal de transition,> 1 et < 100 000,Exemple0|Exemple9|Exemple1
30,Zinc,Zn,Métal pauvre,> 1 et < 100 000,Exemple0|Exemple9|Exemple2
31,Gallium,Ga,Métal pauvre,> 1 et < 100 000,Exemple0|Exemple9|Exemple3
32,Germanium,Ge,Métalloïde,> 1 et < 100 000,Exemple9|Exemple8
33,Arsenic,As,Métalloïde,> 1 et < 100 000,Exemple9|Exemple7
34,Sélénium,Se,Non-métal,> 1 et < 100 000,Exemple9|Exemple6
35,Brome,Br,Halogène,> 1 et < 100 000,Exemple9|Exemple5
36,Krypton,Kr,gaz rare,≤ 1,Exemple1
37,Rubidium,Rb,Métal alcalin,> 1 et < 100 000,Exemple2
38,Strontium,Sr,Métal alcalino-terreux,> 100000,Exemple2|Exemple1
39,Yttrium,Y,Métal de transition,> 1 et < 100 000,Exemple3
40,Zirconium,Zr,Métal de transition,> 100000,Exemple5
41,Niobium,Nb,Métal de transition,> 1 et < 100 000,Exemple5|Exemple2
42,Molybdène,Mo,Métal de transition,> 1 et < 100 000,Exemple4
43,Technétium,Tc,Métal de transition,Traces ,Exemple1
44,Ruthénium,Ru,Métal de transition,≤ 1,Exemple2|Exemple1
45,Rhodium,Rh,Métal de transition,≤ 1,Exemple2|Exemple2
46,Palladium,Pd,Métal de transition,> 1 et < 100 000,Exemple2|Exemple3
47,Argent,Ag,Métal de transition,> 1 et < 100 000,Exemple2|Exemple4
48,Cadmium,Cd,Métal pauvre,> 1 et < 100 000,Exemple1
49,Indium,In,Métal pauvre,> 1 et < 100 000,Exemple2
50,Étain,Sn,Métal pauvre,> 1 et < 100 000,Exemple2|Exemple0
51,Antimoine,Sb,Métalloïde,> 1 et < 100 000,Exemple5|Exemple2
52,Tellure,Te,Métalloïde,≤ 1,Exemple5|Exemple3
53,Iode,I,Halogène,> 1 et < 100 000,Exemple5|Exemple4
54,Xénon,Xe,gaz rare,≤ 1,Exemple5|Exemple5
55,Césium,Cs,Métal alcalin,> 1 et < 100 000,Exemple5|Exemple6
56,Baryum,Ba,Métal alcalino-terreux,> 100000,Exemple5|Exemple7
57,Lanthane,La,Lanthanide,> 1 et < 100 000,Exemple4
58,Cérium,Ce,Lanthanide,> 1 et < 100 000,Exemple1
59,Praséodyme,Pr,Lanthanide,> 1 et < 100 000,Exemple4
60,Néodyme,Nd,Lanthanide,> 1 et < 100 000,Exemple3
61,Prométhium,Pm,Lanthanide,Traces ,Exemple2
62,Samarium,Sm,Lanthanide,> 1 et < 100 000,Exemple1
63,Europium,Eu,Lanthanide,> 1 et < 100 000,Exemple2
64,Gadolinium,Gd,Lanthanide,> 1 et < 100 000,Exemple0|Exemple9|Exemple1
65,Terbium,Tb,Lanthanide,> 1 et < 100 000,Exemple0|Exemple9|Exemple2
66,Dysprosium,Dy,Lanthanide,> 1 et < 100 000,Exemple0|Exemple9|Exemple3
67,Holmium,Ho,Lanthanide,> 1 et < 100 000,Exemple9|Exemple8
68,Erbium,Er,Lanthanide,> 1 et < 100 000,Exemple9|Exemple7
69,Thulium,Tm,Lanthanide,> 1 et < 100 000,Exemple9|Exemple6
70,Ytterbium,Yb,Lanthanide,> 1 et < 100 000,Exemple9|Exemple5
71,Lutécium,Lu,Lanthanide,> 1 et < 100 000,Exemple2
72,Hafnium,Hf,Métal de transition,> 1 et < 100 000,Exemple0|Exemple9|Exemple1
73,Tantale,Ta,Métal de transition,> 1 et < 100 000,Exemple0|Exemple9|Exemple2
74,Tungstène,W,Métal de transition,> 1 et < 100 000,Exemple0|Exemple9|Exemple3
75,Rhénium,Re,Métal de transition,≤ 1,Exemple9|Exemple8
76,Osmium,Os,Métal de transition,> 1 et < 100 000,Exemple9|Exemple7
77,Iridium,Ir,Métal de transition,≤ 1,Exemple9|Exemple6
78,Platine,Pt,Métal de transition,> 1 et < 100 000,Exemple9|Exemple5
79,Or,Au,Métal de transition,> 1 et < 100 000,Exemple2
80,Mercure,Hg,Métal pauvre,> 1 et < 100 000,Exemple0|Exemple9|Exemple1
81,Thallium,Tl,Métal pauvre,> 1 et < 100 000,Exemple0|Exemple9|Exemple2
82,Plomb,Pb,Métal pauvre,> 1 et < 100 000,Exemple0|Exemple9|Exemple3
83,Bismuth,Bi,Métal pauvre,> 1 et < 100 000,Exemple9|Exemple8
84,Polonium,Po,Métal pauvre,≤ 1,Exemple9|Exemple7
85,Astate,At,Métalloïde,Traces ,Exemple9|Exemple6
86,Radon,Rn,Gaz noble,≤ 1,Exemple9|Exemple5
87,Francium,Fr,Métal alcalin,Traces ,Exemple2
88,Radium,Ra,Métal alcalino-terreux,≤ 1,Exemple0|Exemple9|Exemple1
89,Actinium,Ac,Actinide,≤ 1,Exemple0|Exemple9|Exemple2
90,Thorium,Th,Actinide,> 1 et < 100 000,Exemple0|Exemple9|Exemple3
91,Protactinium,Pa,Actinide,≤ 1,Exemple9|Exemple8
92,Uranium,U,Actinide,> 1 et < 100 000,Exemple9|Exemple7
93,Neptunium,Np,Actinide,Traces ,Exemple9|Exemple6
94,Plutonium,Pu,Actinide,Traces ,Exemple9|Exemple5
95,Américium,Am,Actinide,Inexistant,Exemple2
96,Curium,Cm,Actinide,Inexistant,Exemple0|Exemple9|Exemple1
97,Berkélium,Bk,Actinide,Inexistant,Exemple0|Exemple9|Exemple2
98,Californium,Cf,Actinide,Inexistant,Exemple0|Exemple9|Exemple3
99,Einsteinium,Es,Actinide,Inexistant,Exemple9|Exemple8
100,Fermium,Fm,Actinide,Inexistant,Exemple9|Exemple7
101,Mendélévium,Md,Actinide,Inexistant,Exemple9|Exemple6
102,Nobélium,No,Actinide,Inexistant,Exemple9|Exemple5
103,Lawrencium,Lr,Actinide,Inexistant,Exemple2
104,Rutherfordium,Rf,Métal de transition,Inexistant,Exemple0|Exemple9|Exemple1
105,Dubnium,Db,Métal de transition,Inexistant,Exemple0|Exemple9|Exemple2
106,Seaborgium,Sg,Métal de transition,Inexistant,Exemple0|Exemple9|Exemple3
107,Bohrium,Bh,Métal de transition,Inexistant,Exemple9|Exemple8
108,Hassium,Hs,Métal de transition,Inexistant,Exemple9|Exemple7
109,Meitnérium,Mt,Indéfinie,Inexistant,Exemple9|Exemple6
110,Darmstadtium,Ds,Indéfinie,Inexistant,Exemple9|Exemple5
111,Roentgenium,Rg,Indéfinie,Inexistant,Exemple2
112,Copernicium,Cn,Métal de transition,Inexistant,Exemple0|Exemple9|Exemple1
113,Nihonium,Nh,Indéfinie,Inexistant,Exemple0|Exemple9|Exemple2
114,Flérovium,Fl,Indéfinie,Inexistant,Exemple0|Exemple9|Exemple3
115,Moscovium,Mc,Indéfinie,Inexistant,Exemple9|Exemple8
116,Livermorium,Lv,Indéfinie,Inexistant,Exemple9|Exemple7
117,Tennesse,Ts,Indéfinie,Inexistant,Exemple9|Exemple6
118,Oganesson,Og,Indéfinie,Inexistant,Exemple10
1 Z (numéro atomique) Élément Symbole Famille Abondance des éléments dans la croûte terrestre (μg/k) Étiquettes
2 1 Hydrogène H Non-métal > 100000 Exemple1
3 2 Hélium He Gaz noble > 1 et < 100 000 Exemple2
4 3 Lithium Li Métal alcalin > 1 et < 100 000 Exemple2|Exemple1
5 4 Béryllium Be Métal alcalino-terreux > 1 et < 100 000 Exemple3
6 5 Bore B Métalloïde > 1 et < 100 000 Exemple5
7 6 Carbone C Non-métal > 100000 Exemple5|Exemple2
8 7 Azote N Non-métal > 1 et < 100 000 Exemple4
9 8 Oxygène O Non-métal > 100000 Exemple1
10 9 Fluor F Halogène > 100000 Exemple2|Exemple1
11 10 Néon Ne Gaz noble > 1 et < 100 000 Exemple2|Exemple2
12 11 Sodium Na Métal alcalin > 100000 Exemple2|Exemple3
13 12 Magnésium Mg Métal alcalino-terreux > 100000 Exemple2|Exemple4
14 13 Aluminium Al Métal pauvre > 100000 Exemple1
15 14 Silicium Si Métalloïde > 100000 Exemple2
16 15 Phosphore P Non-métal > 100000 Exemple2|Exemple0
17 16 Soufre S Non-métal > 100000 Exemple5|Exemple2
18 17 Chlore Cl Halogène > 100000 Exemple5|Exemple3
19 18 Argon Ar Gaz noble > 1 et < 100 000 Exemple5|Exemple4
20 19 Potassium K Métal alcalin > 100000 Exemple5|Exemple5
21 20 Calcium Ca Métal alcalino-terreux > 100000 Exemple5|Exemple6
22 21 Scandium Sc Métal de transition > 1 et < 100 000 Exemple5|Exemple7
23 22 Titane Ti Métal de transition > 100000 Exemple4
24 23 Vanadium V Métal de transition > 100000 Exemple1
25 24 Chrome Cr Métal de transition > 100000 Exemple4
26 25 Manganèse Mn Métal de transition > 100000 Exemple3
27 26 Fer Fe Métal de transition > 100000 Exemple2
28 27 Cobalt Co Métal de transition > 1 et < 100 000 Exemple1
29 28 Nickel Ni Métal de transition > 1 et < 100 000 Exemple2
30 29 Cuivre Cu Métal de transition > 1 et < 100 000 Exemple0|Exemple9|Exemple1
31 30 Zinc Zn Métal pauvre > 1 et < 100 000 Exemple0|Exemple9|Exemple2
32 31 Gallium Ga Métal pauvre > 1 et < 100 000 Exemple0|Exemple9|Exemple3
33 32 Germanium Ge Métalloïde > 1 et < 100 000 Exemple9|Exemple8
34 33 Arsenic As Métalloïde > 1 et < 100 000 Exemple9|Exemple7
35 34 Sélénium Se Non-métal > 1 et < 100 000 Exemple9|Exemple6
36 35 Brome Br Halogène > 1 et < 100 000 Exemple9|Exemple5
37 36 Krypton Kr gaz rare ≤ 1 Exemple1
38 37 Rubidium Rb Métal alcalin > 1 et < 100 000 Exemple2
39 38 Strontium Sr Métal alcalino-terreux > 100000 Exemple2|Exemple1
40 39 Yttrium Y Métal de transition > 1 et < 100 000 Exemple3
41 40 Zirconium Zr Métal de transition > 100000 Exemple5
42 41 Niobium Nb Métal de transition > 1 et < 100 000 Exemple5|Exemple2
43 42 Molybdène Mo Métal de transition > 1 et < 100 000 Exemple4
44 43 Technétium Tc Métal de transition Traces Exemple1
45 44 Ruthénium Ru Métal de transition ≤ 1 Exemple2|Exemple1
46 45 Rhodium Rh Métal de transition ≤ 1 Exemple2|Exemple2
47 46 Palladium Pd Métal de transition > 1 et < 100 000 Exemple2|Exemple3
48 47 Argent Ag Métal de transition > 1 et < 100 000 Exemple2|Exemple4
49 48 Cadmium Cd Métal pauvre > 1 et < 100 000 Exemple1
50 49 Indium In Métal pauvre > 1 et < 100 000 Exemple2
51 50 Étain Sn Métal pauvre > 1 et < 100 000 Exemple2|Exemple0
52 51 Antimoine Sb Métalloïde > 1 et < 100 000 Exemple5|Exemple2
53 52 Tellure Te Métalloïde ≤ 1 Exemple5|Exemple3
54 53 Iode I Halogène > 1 et < 100 000 Exemple5|Exemple4
55 54 Xénon Xe gaz rare ≤ 1 Exemple5|Exemple5
56 55 Césium Cs Métal alcalin > 1 et < 100 000 Exemple5|Exemple6
57 56 Baryum Ba Métal alcalino-terreux > 100000 Exemple5|Exemple7
58 57 Lanthane La Lanthanide > 1 et < 100 000 Exemple4
59 58 Cérium Ce Lanthanide > 1 et < 100 000 Exemple1
60 59 Praséodyme Pr Lanthanide > 1 et < 100 000 Exemple4
61 60 Néodyme Nd Lanthanide > 1 et < 100 000 Exemple3
62 61 Prométhium Pm Lanthanide Traces Exemple2
63 62 Samarium Sm Lanthanide > 1 et < 100 000 Exemple1
64 63 Europium Eu Lanthanide > 1 et < 100 000 Exemple2
65 64 Gadolinium Gd Lanthanide > 1 et < 100 000 Exemple0|Exemple9|Exemple1
66 65 Terbium Tb Lanthanide > 1 et < 100 000 Exemple0|Exemple9|Exemple2
67 66 Dysprosium Dy Lanthanide > 1 et < 100 000 Exemple0|Exemple9|Exemple3
68 67 Holmium Ho Lanthanide > 1 et < 100 000 Exemple9|Exemple8
69 68 Erbium Er Lanthanide > 1 et < 100 000 Exemple9|Exemple7
70 69 Thulium Tm Lanthanide > 1 et < 100 000 Exemple9|Exemple6
71 70 Ytterbium Yb Lanthanide > 1 et < 100 000 Exemple9|Exemple5
72 71 Lutécium Lu Lanthanide > 1 et < 100 000 Exemple2
73 72 Hafnium Hf Métal de transition > 1 et < 100 000 Exemple0|Exemple9|Exemple1
74 73 Tantale Ta Métal de transition > 1 et < 100 000 Exemple0|Exemple9|Exemple2
75 74 Tungstène W Métal de transition > 1 et < 100 000 Exemple0|Exemple9|Exemple3
76 75 Rhénium Re Métal de transition ≤ 1 Exemple9|Exemple8
77 76 Osmium Os Métal de transition > 1 et < 100 000 Exemple9|Exemple7
78 77 Iridium Ir Métal de transition ≤ 1 Exemple9|Exemple6
79 78 Platine Pt Métal de transition > 1 et < 100 000 Exemple9|Exemple5
80 79 Or Au Métal de transition > 1 et < 100 000 Exemple2
81 80 Mercure Hg Métal pauvre > 1 et < 100 000 Exemple0|Exemple9|Exemple1
82 81 Thallium Tl Métal pauvre > 1 et < 100 000 Exemple0|Exemple9|Exemple2
83 82 Plomb Pb Métal pauvre > 1 et < 100 000 Exemple0|Exemple9|Exemple3
84 83 Bismuth Bi Métal pauvre > 1 et < 100 000 Exemple9|Exemple8
85 84 Polonium Po Métal pauvre ≤ 1 Exemple9|Exemple7
86 85 Astate At Métalloïde Traces Exemple9|Exemple6
87 86 Radon Rn Gaz noble ≤ 1 Exemple9|Exemple5
88 87 Francium Fr Métal alcalin Traces Exemple2
89 88 Radium Ra Métal alcalino-terreux ≤ 1 Exemple0|Exemple9|Exemple1
90 89 Actinium Ac Actinide ≤ 1 Exemple0|Exemple9|Exemple2
91 90 Thorium Th Actinide > 1 et < 100 000 Exemple0|Exemple9|Exemple3
92 91 Protactinium Pa Actinide ≤ 1 Exemple9|Exemple8
93 92 Uranium U Actinide > 1 et < 100 000 Exemple9|Exemple7
94 93 Neptunium Np Actinide Traces Exemple9|Exemple6
95 94 Plutonium Pu Actinide Traces Exemple9|Exemple5
96 95 Américium Am Actinide Inexistant Exemple2
97 96 Curium Cm Actinide Inexistant Exemple0|Exemple9|Exemple1
98 97 Berkélium Bk Actinide Inexistant Exemple0|Exemple9|Exemple2
99 98 Californium Cf Actinide Inexistant Exemple0|Exemple9|Exemple3
100 99 Einsteinium Es Actinide Inexistant Exemple9|Exemple8
101 100 Fermium Fm Actinide Inexistant Exemple9|Exemple7
102 101 Mendélévium Md Actinide Inexistant Exemple9|Exemple6
103 102 Nobélium No Actinide Inexistant Exemple9|Exemple5
104 103 Lawrencium Lr Actinide Inexistant Exemple2
105 104 Rutherfordium Rf Métal de transition Inexistant Exemple0|Exemple9|Exemple1
106 105 Dubnium Db Métal de transition Inexistant Exemple0|Exemple9|Exemple2
107 106 Seaborgium Sg Métal de transition Inexistant Exemple0|Exemple9|Exemple3
108 107 Bohrium Bh Métal de transition Inexistant Exemple9|Exemple8
109 108 Hassium Hs Métal de transition Inexistant Exemple9|Exemple7
110 109 Meitnérium Mt Indéfinie Inexistant Exemple9|Exemple6
111 110 Darmstadtium Ds Indéfinie Inexistant Exemple9|Exemple5
112 111 Roentgenium Rg Indéfinie Inexistant Exemple2
113 112 Copernicium Cn Métal de transition Inexistant Exemple0|Exemple9|Exemple1
114 113 Nihonium Nh Indéfinie Inexistant Exemple0|Exemple9|Exemple2
115 114 Flérovium Fl Indéfinie Inexistant Exemple0|Exemple9|Exemple3
116 115 Moscovium Mc Indéfinie Inexistant Exemple9|Exemple8
117 116 Livermorium Lv Indéfinie Inexistant Exemple9|Exemple7
118 117 Tennesse Ts Indéfinie Inexistant Exemple9|Exemple6
119 118 Oganesson Og Indéfinie Inexistant Exemple10

View File

@ -50,6 +50,8 @@ export class freeDatas2HTML
else
{
selectionElts[i].eltDOM=checkContainerExist;
if(selectionElts[i].separator !== undefined && selectionElts[i].separator === "")
selectionElts[i].separator=undefined;
this._datasSelectors.push(selectionElts[i]);
}
}
@ -115,17 +117,16 @@ export class freeDatas2HTML
else
{
let converter=this;
// Affichage initial des données du fichier
// Affichage initial de toutes les données du fichier
this.datasHTML=this.createDatasHTML(this.parseMeta!.fields, this.parseDatas);
this._datasViewElt.eltDOM.innerHTML=this.datasHTML;
// Si demandé, création des listes permettant de filter les données
if(this._datasSelectors.length > 0)
{
// Les colonnes devant servir de filtre existent-elles dans le fichier ?
let selectorsHTML : string [] = [];
for(let i in this._datasSelectors)
{
// Les colonnes devant servir de filtre existent-elles vraiment dans le fichier ?
if(this._datasSelectors[i].datasFieldNb > (this.parseMeta!.fields.length-1))
throw new Error(errors.selectorFieldNotFound);
else
@ -133,14 +134,28 @@ export class freeDatas2HTML
let values=[], colName=this.parseMeta!.fields[this._datasSelectors[i].datasFieldNb];
for (let row in this.parseDatas)
{
if(values.indexOf(this.parseDatas[row][colName].trim()) === -1)
values.push(this.parseDatas[row][colName].trim());
// Des espaces gauche pourraient fausser le classement alphabétique.
// Donc réutiliser le trim() lorsque l'on filtre l'affichage des données.
if(this._datasSelectors[i].separator === undefined)
{
let checkedValue=this.parseDatas[row][colName].trim();
// On ne garde pas les données vides (prévoir possible en option pour pouvoir sélectionner les données non classées sur cette colonne ?)
if(checkedValue !== "" && values.indexOf(checkedValue) === -1)
values.push(checkedValue);
}
else
{
let checkedValues=this.parseDatas[row][colName].split(this._datasSelectors[i].separator as string);
for(let i in checkedValues)
{
let checkedValue=checkedValues[i].trim();
if(checkedValue !== "" && values.indexOf(checkedValue) === -1)
values.push(checkedValue);
}
}
}
if(values.length > 0)
{
values.sort(); // à revoir, car gère mal la casse, les nombres, etc.
values.sort();
this._datasSelectors[i].name=colName;
this._datasSelectors[i].values=values;
selectorsHTML[i]="<label for='freeDatas2HTMLSelector"+i+"'>"+colName+" : </label><select name='freeDatas2HTMLSelector"+i+"' id='freeDatas2HTMLSelector"+i+"'><option value='0'>----</option>";
@ -170,9 +185,8 @@ export class freeDatas2HTML
{
// Attention : je peux avoir des _datasSelectors fournis, mais pas de liste dans le DOM si aucune donnée ou autre problème.
checkSelectorExist=document.querySelector("#"+ this._datasSelectors[i].id+" select");
if(checkSelectorExist != null && checkSelectorExist.value != "0")
filters.push({ field: this._datasSelectors[i].name, value: this._datasSelectors[i].values![checkSelectorExist.selectedIndex-1] });
// Attention : si on récupère innerHTML du select, certains caractères peuvent être modifiés !
if(checkSelectorExist != null && checkSelectorExist.selectedIndex != 0)
filters.push({ field: this._datasSelectors[i].name, value: this._datasSelectors[i].values![checkSelectorExist.selectedIndex-1], separator:this._datasSelectors[i].separator });
}
// Création du tableau de données :
let datasHTML="<table><thead>";
@ -186,8 +200,25 @@ export class freeDatas2HTML
{
for(let i in filters)
{
if(datas[row][filters[i].field].trim() != filters[i].value)
// Il faut réutiliser le trim() utilisé pour créer les filtres, sinon on risque de ne pas retrouver certaines valeurs
if(filters[i].separator === undefined)
{
if(datas[row][filters[i].field].trim() != filters[i].value)
visible=false;
}
else
{
visible=false;
let checkedValues=datas[row][filters[i].field].split(filters[i].separator as string);
for(let j in checkedValues)
{
if(checkedValues[j].trim() === filters[i].value)
{
visible=true;
break;
}
}
}
}
}
if(visible)

View File

@ -6,6 +6,7 @@ export interface domElement
export interface selectors extends domElement
{
datasFieldNb: number;
separator?: string;
name?: string;
values? : string[];
}

View File

@ -0,0 +1,119 @@
Z (numéro atomique),Élément,Symbole,Famille,Abondance des éléments dans la croûte terrestre (μg/k),Étiquettes
1,Hydrogène,H,Non-métal,> 100000,Exemple1
2,Hélium,He,Gaz noble,> 1 et < 100 000,Exemple2
3,Lithium,Li,Métal alcalin,> 1 et < 100 000,Exemple2|Exemple1
4,Béryllium,Be,Métal alcalino-terreux,> 1 et < 100 000,Exemple3
5,Bore,B,Métalloïde,> 1 et < 100 000,Exemple5
6,Carbone,C,Non-métal,> 100000,Exemple5|Exemple2
7,Azote,N,Non-métal,> 1 et < 100 000,Exemple4
8,Oxygène,O,Non-métal,> 100000,Exemple1
9,Fluor,F,Halogène,> 100000,Exemple2|Exemple1
10,Néon,Ne,Gaz noble,> 1 et < 100 000,Exemple2|Exemple2
11,Sodium,Na,Métal alcalin,> 100000,Exemple2|Exemple3
12,Magnésium,Mg,Métal alcalino-terreux,> 100000,Exemple2|Exemple4
13,Aluminium,Al,Métal pauvre,> 100000,Exemple1
14,Silicium,Si,Métalloïde,> 100000,Exemple2
15,Phosphore,P,Non-métal,> 100000,Exemple2|Exemple0
16,Soufre,S,Non-métal,> 100000,Exemple5|Exemple2
17,Chlore,Cl,Halogène,> 100000,Exemple5|Exemple3
18,Argon,Ar,Gaz noble,> 1 et < 100 000,Exemple5|Exemple4
19,Potassium,K,Métal alcalin,> 100000,Exemple5|Exemple5
20,Calcium,Ca,Métal alcalino-terreux,> 100000,Exemple5|Exemple6
21,Scandium,Sc,Métal de transition,> 1 et < 100 000,Exemple5|Exemple7
22,Titane,Ti,Métal de transition,> 100000,Exemple4
23,Vanadium,V,Métal de transition,> 100000,Exemple1
24,Chrome,Cr,Métal de transition,> 100000,Exemple4
25,Manganèse,Mn,Métal de transition,> 100000,Exemple3
26,Fer,Fe,Métal de transition,> 100000,Exemple2
27,Cobalt,Co,Métal de transition,> 1 et < 100 000,Exemple1
28,Nickel,Ni,Métal de transition,> 1 et < 100 000,Exemple2
29,Cuivre,Cu,Métal de transition,> 1 et < 100 000,Exemple0|Exemple9|Exemple1
30,Zinc,Zn,Métal pauvre,> 1 et < 100 000,Exemple0|Exemple9|Exemple2
31,Gallium,Ga,Métal pauvre,> 1 et < 100 000,Exemple0|Exemple9|Exemple3
32,Germanium,Ge,Métalloïde,> 1 et < 100 000,Exemple9|Exemple8
33,Arsenic,As,Métalloïde,> 1 et < 100 000,Exemple9|Exemple7
34,Sélénium,Se,Non-métal,> 1 et < 100 000,Exemple9|Exemple6
35,Brome,Br,Halogène,> 1 et < 100 000,Exemple9|Exemple5
36,Krypton,Kr,gaz rare,≤ 1,Exemple1
37,Rubidium,Rb,Métal alcalin,> 1 et < 100 000,Exemple2
38,Strontium,Sr,Métal alcalino-terreux,> 100000,Exemple2|Exemple1
39,Yttrium,Y,Métal de transition,> 1 et < 100 000,Exemple3
40,Zirconium,Zr,Métal de transition,> 100000,Exemple5
41,Niobium,Nb,Métal de transition,> 1 et < 100 000,Exemple5|Exemple2
42,Molybdène,Mo,Métal de transition,> 1 et < 100 000,Exemple4
43,Technétium,Tc,Métal de transition,Traces ,Exemple1
44,Ruthénium,Ru,Métal de transition,≤ 1,Exemple2|Exemple1
45,Rhodium,Rh,Métal de transition,≤ 1,Exemple2|Exemple2
46,Palladium,Pd,Métal de transition,> 1 et < 100 000,Exemple2|Exemple3
47,Argent,Ag,Métal de transition,> 1 et < 100 000,Exemple2|Exemple4
48,Cadmium,Cd,Métal pauvre,> 1 et < 100 000,Exemple1
49,Indium,In,Métal pauvre,> 1 et < 100 000,Exemple2
50,Étain,Sn,Métal pauvre,> 1 et < 100 000,Exemple2|Exemple0
51,Antimoine,Sb,Métalloïde,> 1 et < 100 000,Exemple5|Exemple2
52,Tellure,Te,Métalloïde,≤ 1,Exemple5|Exemple3
53,Iode,I,Halogène,> 1 et < 100 000,Exemple5|Exemple4
54,Xénon,Xe,gaz rare,≤ 1,Exemple5|Exemple5
55,Césium,Cs,Métal alcalin,> 1 et < 100 000,Exemple5|Exemple6
56,Baryum,Ba,Métal alcalino-terreux,> 100000,Exemple5|Exemple7
57,Lanthane,La,Lanthanide,> 1 et < 100 000,Exemple4
58,Cérium,Ce,Lanthanide,> 1 et < 100 000,Exemple1
59,Praséodyme,Pr,Lanthanide,> 1 et < 100 000,Exemple4
60,Néodyme,Nd,Lanthanide,> 1 et < 100 000,Exemple3
61,Prométhium,Pm,Lanthanide,Traces ,Exemple2
62,Samarium,Sm,Lanthanide,> 1 et < 100 000,Exemple1
63,Europium,Eu,Lanthanide,> 1 et < 100 000,Exemple2
64,Gadolinium,Gd,Lanthanide,> 1 et < 100 000,Exemple0|Exemple9|Exemple1
65,Terbium,Tb,Lanthanide,> 1 et < 100 000,Exemple0|Exemple9|Exemple2
66,Dysprosium,Dy,Lanthanide,> 1 et < 100 000,Exemple0|Exemple9|Exemple3
67,Holmium,Ho,Lanthanide,> 1 et < 100 000,Exemple9|Exemple8
68,Erbium,Er,Lanthanide,> 1 et < 100 000,Exemple9|Exemple7
69,Thulium,Tm,Lanthanide,> 1 et < 100 000,Exemple9|Exemple6
70,Ytterbium,Yb,Lanthanide,> 1 et < 100 000,Exemple9|Exemple5
71,Lutécium,Lu,Lanthanide,> 1 et < 100 000,Exemple2
72,Hafnium,Hf,Métal de transition,> 1 et < 100 000,Exemple0|Exemple9|Exemple1
73,Tantale,Ta,Métal de transition,> 1 et < 100 000,Exemple0|Exemple9|Exemple2
74,Tungstène,W,Métal de transition,> 1 et < 100 000,Exemple0|Exemple9|Exemple3
75,Rhénium,Re,Métal de transition,≤ 1,Exemple9|Exemple8
76,Osmium,Os,Métal de transition,> 1 et < 100 000,Exemple9|Exemple7
77,Iridium,Ir,Métal de transition,≤ 1,Exemple9|Exemple6
78,Platine,Pt,Métal de transition,> 1 et < 100 000,Exemple9|Exemple5
79,Or,Au,Métal de transition,> 1 et < 100 000,Exemple2
80,Mercure,Hg,Métal pauvre,> 1 et < 100 000,Exemple0|Exemple9|Exemple1
81,Thallium,Tl,Métal pauvre,> 1 et < 100 000,Exemple0|Exemple9|Exemple2
82,Plomb,Pb,Métal pauvre,> 1 et < 100 000,Exemple0|Exemple9|Exemple3
83,Bismuth,Bi,Métal pauvre,> 1 et < 100 000,Exemple9|Exemple8
84,Polonium,Po,Métal pauvre,≤ 1,Exemple9|Exemple7
85,Astate,At,Métalloïde,Traces ,Exemple9|Exemple6
86,Radon,Rn,Gaz noble,≤ 1,Exemple9|Exemple5
87,Francium,Fr,Métal alcalin,Traces ,Exemple2
88,Radium,Ra,Métal alcalino-terreux,≤ 1,Exemple0|Exemple9|Exemple1
89,Actinium,Ac,Actinide,≤ 1,Exemple0|Exemple9|Exemple2
90,Thorium,Th,Actinide,> 1 et < 100 000,Exemple0|Exemple9|Exemple3
91,Protactinium,Pa,Actinide,≤ 1,Exemple9|Exemple8
92,Uranium,U,Actinide,> 1 et < 100 000,Exemple9|Exemple7
93,Neptunium,Np,Actinide,Traces ,Exemple9|Exemple6
94,Plutonium,Pu,Actinide,Traces ,Exemple9|Exemple5
95,Américium,Am,Actinide,Inexistant,Exemple2
96,Curium,Cm,Actinide,Inexistant,Exemple0|Exemple9|Exemple1
97,Berkélium,Bk,Actinide,Inexistant,Exemple0|Exemple9|Exemple2
98,Californium,Cf,Actinide,Inexistant,Exemple0|Exemple9|Exemple3
99,Einsteinium,Es,Actinide,Inexistant,Exemple9|Exemple8
100,Fermium,Fm,Actinide,Inexistant,Exemple9|Exemple7
101,Mendélévium,Md,Actinide,Inexistant,Exemple9|Exemple6
102,Nobélium,No,Actinide,Inexistant,Exemple9|Exemple5
103,Lawrencium,Lr,Actinide,Inexistant,Exemple2
104,Rutherfordium,Rf,Métal de transition,Inexistant,Exemple0|Exemple9|Exemple1
105,Dubnium,Db,Métal de transition,Inexistant,Exemple0|Exemple9|Exemple2
106,Seaborgium,Sg,Métal de transition,Inexistant,Exemple0|Exemple9|Exemple3
107,Bohrium,Bh,Métal de transition,Inexistant,Exemple9|Exemple8
108,Hassium,Hs,Métal de transition,Inexistant,Exemple9|Exemple7
109,Meitnérium,Mt,Indéfinie,Inexistant,Exemple9|Exemple6
110,Darmstadtium,Ds,Indéfinie,Inexistant,Exemple9|Exemple5
111,Roentgenium,Rg,Indéfinie,Inexistant,Exemple2
112,Copernicium,Cn,Métal de transition,Inexistant,Exemple0|Exemple9|Exemple1
113,Nihonium,Nh,Indéfinie,Inexistant,Exemple0|Exemple9|Exemple2
114,Flérovium,Fl,Indéfinie,Inexistant,Exemple0|Exemple9|Exemple3
115,Moscovium,Mc,Indéfinie,Inexistant,Exemple9|Exemple8
116,Livermorium,Lv,Indéfinie,Inexistant,Exemple9|Exemple7
117,Tennesse,Ts,Indéfinie,Inexistant,Exemple9|Exemple6
118,Oganesson,Og,Indéfinie,Inexistant,Exemple10
1 Z (numéro atomique) Élément Symbole Famille Abondance des éléments dans la croûte terrestre (μg/k) Étiquettes
2 1 Hydrogène H Non-métal > 100000 Exemple1
3 2 Hélium He Gaz noble > 1 et < 100 000 Exemple2
4 3 Lithium Li Métal alcalin > 1 et < 100 000 Exemple2|Exemple1
5 4 Béryllium Be Métal alcalino-terreux > 1 et < 100 000 Exemple3
6 5 Bore B Métalloïde > 1 et < 100 000 Exemple5
7 6 Carbone C Non-métal > 100000 Exemple5|Exemple2
8 7 Azote N Non-métal > 1 et < 100 000 Exemple4
9 8 Oxygène O Non-métal > 100000 Exemple1
10 9 Fluor F Halogène > 100000 Exemple2|Exemple1
11 10 Néon Ne Gaz noble > 1 et < 100 000 Exemple2|Exemple2
12 11 Sodium Na Métal alcalin > 100000 Exemple2|Exemple3
13 12 Magnésium Mg Métal alcalino-terreux > 100000 Exemple2|Exemple4
14 13 Aluminium Al Métal pauvre > 100000 Exemple1
15 14 Silicium Si Métalloïde > 100000 Exemple2
16 15 Phosphore P Non-métal > 100000 Exemple2|Exemple0
17 16 Soufre S Non-métal > 100000 Exemple5|Exemple2
18 17 Chlore Cl Halogène > 100000 Exemple5|Exemple3
19 18 Argon Ar Gaz noble > 1 et < 100 000 Exemple5|Exemple4
20 19 Potassium K Métal alcalin > 100000 Exemple5|Exemple5
21 20 Calcium Ca Métal alcalino-terreux > 100000 Exemple5|Exemple6
22 21 Scandium Sc Métal de transition > 1 et < 100 000 Exemple5|Exemple7
23 22 Titane Ti Métal de transition > 100000 Exemple4
24 23 Vanadium V Métal de transition > 100000 Exemple1
25 24 Chrome Cr Métal de transition > 100000 Exemple4
26 25 Manganèse Mn Métal de transition > 100000 Exemple3
27 26 Fer Fe Métal de transition > 100000 Exemple2
28 27 Cobalt Co Métal de transition > 1 et < 100 000 Exemple1
29 28 Nickel Ni Métal de transition > 1 et < 100 000 Exemple2
30 29 Cuivre Cu Métal de transition > 1 et < 100 000 Exemple0|Exemple9|Exemple1
31 30 Zinc Zn Métal pauvre > 1 et < 100 000 Exemple0|Exemple9|Exemple2
32 31 Gallium Ga Métal pauvre > 1 et < 100 000 Exemple0|Exemple9|Exemple3
33 32 Germanium Ge Métalloïde > 1 et < 100 000 Exemple9|Exemple8
34 33 Arsenic As Métalloïde > 1 et < 100 000 Exemple9|Exemple7
35 34 Sélénium Se Non-métal > 1 et < 100 000 Exemple9|Exemple6
36 35 Brome Br Halogène > 1 et < 100 000 Exemple9|Exemple5
37 36 Krypton Kr gaz rare ≤ 1 Exemple1
38 37 Rubidium Rb Métal alcalin > 1 et < 100 000 Exemple2
39 38 Strontium Sr Métal alcalino-terreux > 100000 Exemple2|Exemple1
40 39 Yttrium Y Métal de transition > 1 et < 100 000 Exemple3
41 40 Zirconium Zr Métal de transition > 100000 Exemple5
42 41 Niobium Nb Métal de transition > 1 et < 100 000 Exemple5|Exemple2
43 42 Molybdène Mo Métal de transition > 1 et < 100 000 Exemple4
44 43 Technétium Tc Métal de transition Traces Exemple1
45 44 Ruthénium Ru Métal de transition ≤ 1 Exemple2|Exemple1
46 45 Rhodium Rh Métal de transition ≤ 1 Exemple2|Exemple2
47 46 Palladium Pd Métal de transition > 1 et < 100 000 Exemple2|Exemple3
48 47 Argent Ag Métal de transition > 1 et < 100 000 Exemple2|Exemple4
49 48 Cadmium Cd Métal pauvre > 1 et < 100 000 Exemple1
50 49 Indium In Métal pauvre > 1 et < 100 000 Exemple2
51 50 Étain Sn Métal pauvre > 1 et < 100 000 Exemple2|Exemple0
52 51 Antimoine Sb Métalloïde > 1 et < 100 000 Exemple5|Exemple2
53 52 Tellure Te Métalloïde ≤ 1 Exemple5|Exemple3
54 53 Iode I Halogène > 1 et < 100 000 Exemple5|Exemple4
55 54 Xénon Xe gaz rare ≤ 1 Exemple5|Exemple5
56 55 Césium Cs Métal alcalin > 1 et < 100 000 Exemple5|Exemple6
57 56 Baryum Ba Métal alcalino-terreux > 100000 Exemple5|Exemple7
58 57 Lanthane La Lanthanide > 1 et < 100 000 Exemple4
59 58 Cérium Ce Lanthanide > 1 et < 100 000 Exemple1
60 59 Praséodyme Pr Lanthanide > 1 et < 100 000 Exemple4
61 60 Néodyme Nd Lanthanide > 1 et < 100 000 Exemple3
62 61 Prométhium Pm Lanthanide Traces Exemple2
63 62 Samarium Sm Lanthanide > 1 et < 100 000 Exemple1
64 63 Europium Eu Lanthanide > 1 et < 100 000 Exemple2
65 64 Gadolinium Gd Lanthanide > 1 et < 100 000 Exemple0|Exemple9|Exemple1
66 65 Terbium Tb Lanthanide > 1 et < 100 000 Exemple0|Exemple9|Exemple2
67 66 Dysprosium Dy Lanthanide > 1 et < 100 000 Exemple0|Exemple9|Exemple3
68 67 Holmium Ho Lanthanide > 1 et < 100 000 Exemple9|Exemple8
69 68 Erbium Er Lanthanide > 1 et < 100 000 Exemple9|Exemple7
70 69 Thulium Tm Lanthanide > 1 et < 100 000 Exemple9|Exemple6
71 70 Ytterbium Yb Lanthanide > 1 et < 100 000 Exemple9|Exemple5
72 71 Lutécium Lu Lanthanide > 1 et < 100 000 Exemple2
73 72 Hafnium Hf Métal de transition > 1 et < 100 000 Exemple0|Exemple9|Exemple1
74 73 Tantale Ta Métal de transition > 1 et < 100 000 Exemple0|Exemple9|Exemple2
75 74 Tungstène W Métal de transition > 1 et < 100 000 Exemple0|Exemple9|Exemple3
76 75 Rhénium Re Métal de transition ≤ 1 Exemple9|Exemple8
77 76 Osmium Os Métal de transition > 1 et < 100 000 Exemple9|Exemple7
78 77 Iridium Ir Métal de transition ≤ 1 Exemple9|Exemple6
79 78 Platine Pt Métal de transition > 1 et < 100 000 Exemple9|Exemple5
80 79 Or Au Métal de transition > 1 et < 100 000 Exemple2
81 80 Mercure Hg Métal pauvre > 1 et < 100 000 Exemple0|Exemple9|Exemple1
82 81 Thallium Tl Métal pauvre > 1 et < 100 000 Exemple0|Exemple9|Exemple2
83 82 Plomb Pb Métal pauvre > 1 et < 100 000 Exemple0|Exemple9|Exemple3
84 83 Bismuth Bi Métal pauvre > 1 et < 100 000 Exemple9|Exemple8
85 84 Polonium Po Métal pauvre ≤ 1 Exemple9|Exemple7
86 85 Astate At Métalloïde Traces Exemple9|Exemple6
87 86 Radon Rn Gaz noble ≤ 1 Exemple9|Exemple5
88 87 Francium Fr Métal alcalin Traces Exemple2
89 88 Radium Ra Métal alcalino-terreux ≤ 1 Exemple0|Exemple9|Exemple1
90 89 Actinium Ac Actinide ≤ 1 Exemple0|Exemple9|Exemple2
91 90 Thorium Th Actinide > 1 et < 100 000 Exemple0|Exemple9|Exemple3
92 91 Protactinium Pa Actinide ≤ 1 Exemple9|Exemple8
93 92 Uranium U Actinide > 1 et < 100 000 Exemple9|Exemple7
94 93 Neptunium Np Actinide Traces Exemple9|Exemple6
95 94 Plutonium Pu Actinide Traces Exemple9|Exemple5
96 95 Américium Am Actinide Inexistant Exemple2
97 96 Curium Cm Actinide Inexistant Exemple0|Exemple9|Exemple1
98 97 Berkélium Bk Actinide Inexistant Exemple0|Exemple9|Exemple2
99 98 Californium Cf Actinide Inexistant Exemple0|Exemple9|Exemple3
100 99 Einsteinium Es Actinide Inexistant Exemple9|Exemple8
101 100 Fermium Fm Actinide Inexistant Exemple9|Exemple7
102 101 Mendélévium Md Actinide Inexistant Exemple9|Exemple6
103 102 Nobélium No Actinide Inexistant Exemple9|Exemple5
104 103 Lawrencium Lr Actinide Inexistant Exemple2
105 104 Rutherfordium Rf Métal de transition Inexistant Exemple0|Exemple9|Exemple1
106 105 Dubnium Db Métal de transition Inexistant Exemple0|Exemple9|Exemple2
107 106 Seaborgium Sg Métal de transition Inexistant Exemple0|Exemple9|Exemple3
108 107 Bohrium Bh Métal de transition Inexistant Exemple9|Exemple8
109 108 Hassium Hs Métal de transition Inexistant Exemple9|Exemple7
110 109 Meitnérium Mt Indéfinie Inexistant Exemple9|Exemple6
111 110 Darmstadtium Ds Indéfinie Inexistant Exemple9|Exemple5
112 111 Roentgenium Rg Indéfinie Inexistant Exemple2
113 112 Copernicium Cn Métal de transition Inexistant Exemple0|Exemple9|Exemple1
114 113 Nihonium Nh Indéfinie Inexistant Exemple0|Exemple9|Exemple2
115 114 Flérovium Fl Indéfinie Inexistant Exemple0|Exemple9|Exemple3
116 115 Moscovium Mc Indéfinie Inexistant Exemple9|Exemple8
117 116 Livermorium Lv Indéfinie Inexistant Exemple9|Exemple7
118 117 Tennesse Ts Indéfinie Inexistant Exemple9|Exemple6
119 118 Oganesson Og Indéfinie Inexistant Exemple10

View File

@ -0,0 +1,119 @@
Z (numéro atomique),Élément,Symbole,Famille,Abondance des éléments dans la croûte terrestre (μg/k)
89,Actinium,Ac,,≤ 1
90,Thorium,Th,,> 1 et < 100 000
91,Protactinium,Pa,,≤ 1
92,Uranium,U,Actinide,> 1 et < 100 000
93,Neptunium,Np,Actinide,Traces
94,Plutonium,Pu,Actinide,Traces
95,Américium,Am,Actinide,Inexistant
96,Curium,Cm,Actinide,Inexistant
97,Berkélium,Bk,Actinide,Inexistant
98,Californium,Cf,Actinide,Inexistant
99,Einsteinium,Es,Actinide,Inexistant
100,Fermium,Fm,Actinide,Inexistant
101,Mendélévium,Md,Actinide,Inexistant
102,Nobélium,No,Actinide,Inexistant
103,Lawrencium,Lr,Actinide,Inexistant
2,Hélium,He,Gaz noble,> 1 et < 100 000
10,Néon,Ne,Gaz noble,> 1 et < 100 000
18,Argon,Ar,Gaz noble,> 1 et < 100 000
86,Radon,Rn,Gaz noble,≤ 1
36,Krypton,Kr,gaz rare,≤ 1
54,Xénon,Xe,gaz rare,≤ 1
9,Fluor,F,Halogène,> 100000
17,Chlore,Cl,Halogène,> 100000
35,Brome,Br,Halogène,> 1 et < 100 000
53,Iode,I,Halogène,> 1 et < 100 000
109,Meitnérium,Mt,,Inexistant
110,Darmstadtium,Ds,,Inexistant
111,Roentgenium,Rg,Indéfinie,Inexistant
113,Nihonium,Nh,Indéfinie,Inexistant
114,Flérovium,Fl,Indéfinie,Inexistant
115,Moscovium,Mc,Indéfinie,Inexistant
116,Livermorium,Lv,Indéfinie,Inexistant
117,Tennesse,Ts,Indéfinie,Inexistant
118,Oganesson,Og,Indéfinie,Inexistant
57,Lanthane,La,Lanthanide,> 1 et < 100 000
58,Cérium,Ce,Lanthanide,> 1 et < 100 000
59,Praséodyme,Pr,Lanthanide,> 1 et < 100 000
60,Néodyme,Nd,Lanthanide,> 1 et < 100 000
61,Prométhium,Pm,Lanthanide,Traces
62,Samarium,Sm,Lanthanide,> 1 et < 100 000
63,Europium,Eu,Lanthanide,> 1 et < 100 000
64,Gadolinium,Gd,Lanthanide,> 1 et < 100 000
65,Terbium,Tb,Lanthanide,> 1 et < 100 000
66,Dysprosium,Dy,Lanthanide,> 1 et < 100 000
67,Holmium,Ho,Lanthanide,> 1 et < 100 000
68,Erbium,Er,Lanthanide,> 1 et < 100 000
69,Thulium,Tm,Lanthanide,> 1 et < 100 000
70,Ytterbium,Yb,Lanthanide,> 1 et < 100 000
71,Lutécium,Lu,Lanthanide,> 1 et < 100 000
3,Lithium,Li,Métal alcalin,> 1 et < 100 000
11,Sodium,Na,Métal alcalin,> 100000
19,Potassium,K,Métal alcalin,> 100000
37,Rubidium,Rb,Métal alcalin,> 1 et < 100 000
55,Césium,Cs,Métal alcalin,> 1 et < 100 000
87,Francium,Fr,Métal alcalin,Traces
4,Béryllium,Be,Métal alcalino-terreux,> 1 et < 100 000
12,Magnésium,Mg,Métal alcalino-terreux,> 100000
20,Calcium,Ca,Métal alcalino-terreux,> 100000
38,Strontium,Sr,Métal alcalino-terreux,> 100000
56,Baryum,Ba,Métal alcalino-terreux,> 100000
88,Radium,Ra,Métal alcalino-terreux,≤ 1
21,Scandium,Sc,Métal de transition,> 1 et < 100 000
22,Titane,Ti,Métal de transition,> 100000
23,Vanadium,V,Métal de transition,> 100000
24,Chrome,Cr,Métal de transition,> 100000
25,Manganèse,Mn,Métal de transition,> 100000
26,Fer,Fe,Métal de transition,> 100000
27,Cobalt,Co,Métal de transition,> 1 et < 100 000
28,Nickel,Ni,Métal de transition,> 1 et < 100 000
29,Cuivre,Cu,Métal de transition,> 1 et < 100 000
39,Yttrium,Y,Métal de transition,> 1 et < 100 000
40,Zirconium,Zr,Métal de transition,> 100000
41,Niobium,Nb,Métal de transition,> 1 et < 100 000
42,Molybdène,Mo,Métal de transition,> 1 et < 100 000
43,Technétium,Tc,Métal de transition,Traces
44,Ruthénium,Ru,Métal de transition,≤ 1
45,Rhodium,Rh,Métal de transition,≤ 1
46,Palladium,Pd,Métal de transition,> 1 et < 100 000
47,Argent,Ag,Métal de transition,> 1 et < 100 000
72,Hafnium,Hf,Métal de transition,> 1 et < 100 000
73,Tantale,Ta,Métal de transition,> 1 et < 100 000
74,Tungstène,W,Métal de transition,> 1 et < 100 000
75,Rhénium,Re,Métal de transition,≤ 1
76,Osmium,Os,Métal de transition,> 1 et < 100 000
77,Iridium,Ir,Métal de transition,≤ 1
78,Platine,Pt,,> 1 et < 100 000
79,Or,Au,,> 1 et < 100 000
104,Rutherfordium,Rf,Métal de transition,Inexistant
105,Dubnium,Db,Métal de transition,Inexistant
106,Seaborgium,Sg,Métal de transition,Inexistant
107,Bohrium,Bh,Métal de transition,Inexistant
108,Hassium,Hs,Métal de transition,Inexistant
112,Copernicium,Cn,Métal de transition,Inexistant
13,Aluminium,Al,Métal pauvre,> 100000
30,Zinc,Zn,Métal pauvre,> 1 et < 100 000
31,Gallium,Ga,Métal pauvre,> 1 et < 100 000
48,Cadmium,Cd,Métal pauvre,> 1 et < 100 000
49,Indium,In,Métal pauvre,> 1 et < 100 000
50,Étain,Sn,Métal pauvre,> 1 et < 100 000
80,Mercure,Hg,Métal pauvre,> 1 et < 100 000
81,Thallium,Tl,Métal pauvre,> 1 et < 100 000
82,Plomb,Pb,Métal pauvre,> 1 et < 100 000
83,Bismuth,Bi,Métal pauvre,> 1 et < 100 000
84,Polonium,Po,Métal pauvre,≤ 1
5,Bore,B,Métalloïde,> 1 et < 100 000
14,Silicium,Si,Métalloïde,> 100000
32,Germanium,Ge,Métalloïde,> 1 et < 100 000
33,Arsenic,As,Métalloïde,> 1 et < 100 000
51,Antimoine,Sb,Métalloïde,> 1 et < 100 000
52,Tellure,Te,Métalloïde,≤ 1
85,Astate,At,Métalloïde,Traces
1,Hydrogène,H,Non-métal,> 100000
6,Carbone,C,Non-métal,> 100000
7,Azote,N,Non-métal,> 1 et < 100 000
8,Oxygène,O,Non-métal,> 100000
15,Phosphore,P,Non-métal,> 100000
16,Soufre,S,,> 100000
34,Sélénium,Se,,> 1 et < 100 000
1 Z (numéro atomique) Élément Symbole Famille Abondance des éléments dans la croûte terrestre (μg/k)
2 89 Actinium Ac ≤ 1
3 90 Thorium Th > 1 et < 100 000
4 91 Protactinium Pa ≤ 1
5 92 Uranium U Actinide > 1 et < 100 000
6 93 Neptunium Np Actinide Traces
7 94 Plutonium Pu Actinide Traces
8 95 Américium Am Actinide Inexistant
9 96 Curium Cm Actinide Inexistant
10 97 Berkélium Bk Actinide Inexistant
11 98 Californium Cf Actinide Inexistant
12 99 Einsteinium Es Actinide Inexistant
13 100 Fermium Fm Actinide Inexistant
14 101 Mendélévium Md Actinide Inexistant
15 102 Nobélium No Actinide Inexistant
16 103 Lawrencium Lr Actinide Inexistant
17 2 Hélium He Gaz noble > 1 et < 100 000
18 10 Néon Ne Gaz noble > 1 et < 100 000
19 18 Argon Ar Gaz noble > 1 et < 100 000
20 86 Radon Rn Gaz noble ≤ 1
21 36 Krypton Kr gaz rare ≤ 1
22 54 Xénon Xe gaz rare ≤ 1
23 9 Fluor F Halogène > 100000
24 17 Chlore Cl Halogène > 100000
25 35 Brome Br Halogène > 1 et < 100 000
26 53 Iode I Halogène > 1 et < 100 000
27 109 Meitnérium Mt Inexistant
28 110 Darmstadtium Ds Inexistant
29 111 Roentgenium Rg Indéfinie Inexistant
30 113 Nihonium Nh Indéfinie Inexistant
31 114 Flérovium Fl Indéfinie Inexistant
32 115 Moscovium Mc Indéfinie Inexistant
33 116 Livermorium Lv Indéfinie Inexistant
34 117 Tennesse Ts Indéfinie Inexistant
35 118 Oganesson Og Indéfinie Inexistant
36 57 Lanthane La Lanthanide > 1 et < 100 000
37 58 Cérium Ce Lanthanide > 1 et < 100 000
38 59 Praséodyme Pr Lanthanide > 1 et < 100 000
39 60 Néodyme Nd Lanthanide > 1 et < 100 000
40 61 Prométhium Pm Lanthanide Traces
41 62 Samarium Sm Lanthanide > 1 et < 100 000
42 63 Europium Eu Lanthanide > 1 et < 100 000
43 64 Gadolinium Gd Lanthanide > 1 et < 100 000
44 65 Terbium Tb Lanthanide > 1 et < 100 000
45 66 Dysprosium Dy Lanthanide > 1 et < 100 000
46 67 Holmium Ho Lanthanide > 1 et < 100 000
47 68 Erbium Er Lanthanide > 1 et < 100 000
48 69 Thulium Tm Lanthanide > 1 et < 100 000
49 70 Ytterbium Yb Lanthanide > 1 et < 100 000
50 71 Lutécium Lu Lanthanide > 1 et < 100 000
51 3 Lithium Li Métal alcalin > 1 et < 100 000
52 11 Sodium Na Métal alcalin > 100000
53 19 Potassium K Métal alcalin > 100000
54 37 Rubidium Rb Métal alcalin > 1 et < 100 000
55 55 Césium Cs Métal alcalin > 1 et < 100 000
56 87 Francium Fr Métal alcalin Traces
57 4 Béryllium Be Métal alcalino-terreux > 1 et < 100 000
58 12 Magnésium Mg Métal alcalino-terreux > 100000
59 20 Calcium Ca Métal alcalino-terreux > 100000
60 38 Strontium Sr Métal alcalino-terreux > 100000
61 56 Baryum Ba Métal alcalino-terreux > 100000
62 88 Radium Ra Métal alcalino-terreux ≤ 1
63 21 Scandium Sc Métal de transition > 1 et < 100 000
64 22 Titane Ti Métal de transition > 100000
65 23 Vanadium V Métal de transition > 100000
66 24 Chrome Cr Métal de transition > 100000
67 25 Manganèse Mn Métal de transition > 100000
68 26 Fer Fe Métal de transition > 100000
69 27 Cobalt Co Métal de transition > 1 et < 100 000
70 28 Nickel Ni Métal de transition > 1 et < 100 000
71 29 Cuivre Cu Métal de transition > 1 et < 100 000
72 39 Yttrium Y Métal de transition > 1 et < 100 000
73 40 Zirconium Zr Métal de transition > 100000
74 41 Niobium Nb Métal de transition > 1 et < 100 000
75 42 Molybdène Mo Métal de transition > 1 et < 100 000
76 43 Technétium Tc Métal de transition Traces
77 44 Ruthénium Ru Métal de transition ≤ 1
78 45 Rhodium Rh Métal de transition ≤ 1
79 46 Palladium Pd Métal de transition > 1 et < 100 000
80 47 Argent Ag Métal de transition > 1 et < 100 000
81 72 Hafnium Hf Métal de transition > 1 et < 100 000
82 73 Tantale Ta Métal de transition > 1 et < 100 000
83 74 Tungstène W Métal de transition > 1 et < 100 000
84 75 Rhénium Re Métal de transition ≤ 1
85 76 Osmium Os Métal de transition > 1 et < 100 000
86 77 Iridium Ir Métal de transition ≤ 1
87 78 Platine Pt > 1 et < 100 000
88 79 Or Au > 1 et < 100 000
89 104 Rutherfordium Rf Métal de transition Inexistant
90 105 Dubnium Db Métal de transition Inexistant
91 106 Seaborgium Sg Métal de transition Inexistant
92 107 Bohrium Bh Métal de transition Inexistant
93 108 Hassium Hs Métal de transition Inexistant
94 112 Copernicium Cn Métal de transition Inexistant
95 13 Aluminium Al Métal pauvre > 100000
96 30 Zinc Zn Métal pauvre > 1 et < 100 000
97 31 Gallium Ga Métal pauvre > 1 et < 100 000
98 48 Cadmium Cd Métal pauvre > 1 et < 100 000
99 49 Indium In Métal pauvre > 1 et < 100 000
100 50 Étain Sn Métal pauvre > 1 et < 100 000
101 80 Mercure Hg Métal pauvre > 1 et < 100 000
102 81 Thallium Tl Métal pauvre > 1 et < 100 000
103 82 Plomb Pb Métal pauvre > 1 et < 100 000
104 83 Bismuth Bi Métal pauvre > 1 et < 100 000
105 84 Polonium Po Métal pauvre ≤ 1
106 5 Bore B Métalloïde > 1 et < 100 000
107 14 Silicium Si Métalloïde > 100000
108 32 Germanium Ge Métalloïde > 1 et < 100 000
109 33 Arsenic As Métalloïde > 1 et < 100 000
110 51 Antimoine Sb Métalloïde > 1 et < 100 000
111 52 Tellure Te Métalloïde ≤ 1
112 85 Astate At Métalloïde Traces
113 1 Hydrogène H Non-métal > 100000
114 6 Carbone C Non-métal > 100000
115 7 Azote N Non-métal > 1 et < 100 000
116 8 Oxygène O Non-métal > 100000
117 15 Phosphore P Non-métal > 100000
118 16 Soufre S > 100000
119 34 Sélénium Se > 1 et < 100 000

File diff suppressed because one or more lines are too long

View File

@ -51,6 +51,12 @@ describe("freeDatas2HTML", () =>
expect(converter.datasSelectors[0].id).toEqual("selector1");
});
it("Si un séparateur vide est fourni pour un sélecteur, il doit être ignoré.", () =>
{
converter.datasSelectors=[{ datasFieldNb:2, id:"selector2", separator:"" }];
expect(converter.datasSelectors[0].separator).toBeUndefined();
});
it("Doit accepter tous les sélecteurs si leurs informations sont valides.", () =>
{
converter.datasSelectors=[{ datasFieldNb:0, id:"selector1" },{ datasFieldNb:3, id:"selector2" }];
@ -158,35 +164,41 @@ describe("freeDatas2HTML", () =>
it("Doit générer une erreur si au moins un des numéros de colonne fournis pour les sélecteurs ne correspond pas à une des colonne du fichier.", async () =>
{
converter.datasSelectors=[{ datasFieldNb:0, id:"selector1"},{ datasFieldNb:5, id:"selector2"}];// il y a bien 5 champs, mais la numérotation commence à 0 :-)
converter.datasSelectors=[{ datasFieldNb:0, id:"selector1"},{ datasFieldNb:5, id:"selector2"}]; // il y a bien 5 champs, mais la numérotation commence à 0 :-)
await expectAsync(converter.run()).toBeRejectedWith(new Error(errors.selectorFieldNotFound));
});
it("Ne doit pas pas générer d'erreur si tous les numéros de colonne des sélecteurs correspondent pas à une des colonne du fichier.", async () =>
it("Ne doit pas pas générer d'erreur si tous les numéros de colonne des sélecteurs correspondent à une des colonnes du fichier.", async () =>
{
converter.datasSelectors=[{ datasFieldNb:3, id:"selector1"},{ datasFieldNb:4, id:"selector2"}];
await expectAsync(converter.run()).not.toBeRejected();
});
it("Pour chaque sélecteur demandé, doit générer un élement <select> listant les valeurs distinctes du fichier, classées par ordre alphabétique.", async () =>
it("Pour chaque sélecteur demandé, doit générer un élement <select> listant les valeurs distinctes du fichier, classées dans le bon ordre.", async () =>
{
converter.datasSelectors=[{ datasFieldNb:3, id:"selector1"},{ datasFieldNb:4, id:"selector2"}];
await converter.run();
expect(document.getElementById("selector1").innerHTML).toEqual(fixtures.selector1HTML);
expect(document.getElementById("selector2").innerHTML).toEqual(fixtures.selector2HTML);
});
it("Le choix d'une option dans un des sélecteurs doit modifier le contenu du tableau pour ne garder que les données correspondantes ou les afficher toutes si sélection 0.", async () =>
it("Si des valeurs vides sont présentes dans une colonne utilisée pour un sélecteur, elles doivent être ignorées.", async () =>
{
converter.datasSourceUrl="http://localhost:9876/datas/datas1-emtyinfield.csv";
converter.datasSelectors=[{ datasFieldNb:3, id:"selector1"}];
await converter.run();
expect(document.getElementById("selector1").innerHTML).toEqual(fixtures.selector1HTML);
});
it("Le choix d'une option dans un des sélecteurs doit modifier le contenu du tableau pour ne garder que les données correspondantes et les afficher toutes si sélection 0.", async () =>
{
converter.datasSelectors=[{ datasFieldNb:3, id:"selector1"},{ datasFieldNb:4, id:"selector2"}];
await converter.run();
let selectElement = document.getElementById("freeDatas2HTMLSelector0") as HTMLInputElement;
selectElement.value="4";
selectElement.dispatchEvent(new Event('change'));
let txtDatasViewsElt=document.getElementById("datas").innerHTML;
expect(txtDatasViewsElt).toEqual(fixtures.datasHTMLFor1Select);
selectElement.value="0";
selectElement.dispatchEvent(new Event('change'));
txtDatasViewsElt=document.getElementById("datas").innerHTML;
@ -197,7 +209,6 @@ describe("freeDatas2HTML", () =>
{
converter.datasSelectors=[{ datasFieldNb:3, id:"selector1"},{ datasFieldNb:4, id:"selector2"}];
await converter.run();
let selectElement = document.getElementById("freeDatas2HTMLSelector0") as HTMLInputElement;
selectElement.value="2";
selectElement = document.getElementById("freeDatas2HTMLSelector1") as HTMLInputElement;
@ -205,12 +216,32 @@ describe("freeDatas2HTML", () =>
selectElement.dispatchEvent(new Event('change'));
let txtDatasViewsElt=document.getElementById("datas").innerHTML;
expect(txtDatasViewsElt).toEqual(fixtures.datasHTMLFor2Select);
selectElement.value="4";
selectElement.dispatchEvent(new Event('change'));
txtDatasViewsElt=document.getElementById("datas").innerHTML;
expect(txtDatasViewsElt).toEqual(fixtures.datasHTMLFor2SelectNone);
});
// Cas particulier des champs pouvant contenir plusieurs valeurs :
it("Si un séparateur est fourni pour un sélecteur, les valeurs distinctes extraites de cette colonne doivent le prendre en compte.", async () =>
{
converter.datasSourceUrl="http://localhost:9876/datas/datas1+tagsfield.csv";
converter.datasSelectors=[{ datasFieldNb:5, id:"selector1", separator:"|"}];
await converter.run();
expect(document.getElementById("selector1").innerHTML).toEqual(fixtures.selector1HTMLWithTags);
});
it("Si un séparateur est fourni pour un sélecteur, lorsque qu'une valeur y est sélectionnée, toutes les lignes de données la contenant doivent être affichées.", async () =>
{
converter.datasSourceUrl="http://localhost:9876/datas/datas1+tagsfield.csv";
converter.datasSelectors=[{ datasFieldNb:5, id:"selector1", separator:"|"}];
await converter.run();
let selectElement=document.getElementById("freeDatas2HTMLSelector0") as HTMLInputElement;
selectElement.value="3"; // = "Exemple10" retournant une seule ligne
selectElement.dispatchEvent(new Event('change'));
let txtDatasViewsElt=document.getElementById("datas").innerHTML;
expect(txtDatasViewsElt).toEqual(fixtures.datasHTMLForSelectTagsField);
});
});
});