├── periodic-table ├── periodic-table.css ├── periodic-table-content │ ├── chemical-element │ │ ├── chemical-element.css │ │ ├── chemical-element.js │ │ └── chemical-element.html │ ├── element-grid │ │ ├── element-grid.js │ │ └── element-grid.json │ ├── settings-dialog │ │ └── language-selection │ │ │ ├── languages │ │ │ ├── bd.svg │ │ │ ├── de.svg │ │ │ ├── am.svg │ │ │ ├── bq.svg │ │ │ ├── pl.svg │ │ │ ├── gb-sct.svg │ │ │ ├── lu.svg │ │ │ ├── mc.svg │ │ │ ├── dk.svg │ │ │ ├── gb-eng.svg │ │ │ ├── ua.svg │ │ │ ├── fi.svg │ │ │ ├── at.svg │ │ │ ├── id.svg │ │ │ ├── lv.svg │ │ │ ├── ae.svg │ │ │ ├── ma.svg │ │ │ ├── gf.svg │ │ │ ├── bw.svg │ │ │ ├── ne.svg │ │ │ ├── ga.svg │ │ │ ├── ng.svg │ │ │ ├── sl.svg │ │ │ ├── ml.svg │ │ │ ├── mv.svg │ │ │ ├── td.svg │ │ │ ├── ye.svg │ │ │ ├── ci.svg │ │ │ ├── co.svg │ │ │ ├── dz.svg │ │ │ ├── gh.svg │ │ │ ├── fr.svg │ │ │ ├── gp.svg │ │ │ ├── mf.svg │ │ │ ├── mq.svg │ │ │ ├── ru.svg │ │ │ ├── th.svg │ │ │ ├── bg.svg │ │ │ ├── cr.svg │ │ │ ├── gn.svg │ │ │ ├── mg.svg │ │ │ ├── wf.svg │ │ │ ├── bl.svg │ │ │ ├── hu.svg │ │ │ ├── mu.svg │ │ │ ├── be.svg │ │ │ ├── ie.svg │ │ │ ├── it.svg │ │ │ ├── nc.svg │ │ │ ├── pm.svg │ │ │ ├── re.svg │ │ │ ├── ro.svg │ │ │ ├── yt.svg │ │ │ ├── ee.svg │ │ │ ├── no.svg │ │ │ ├── sj.svg │ │ │ ├── sr.svg │ │ │ ├── cd.svg │ │ │ ├── ch.svg │ │ │ ├── tt.svg │ │ │ ├── nl.svg │ │ │ ├── mk.svg │ │ │ ├── qa.svg │ │ │ ├── ss.svg │ │ │ ├── lc.svg │ │ │ ├── to.svg │ │ │ ├── jm.svg │ │ │ ├── bf.svg │ │ │ ├── lt.svg │ │ │ ├── sn.svg │ │ │ ├── la.svg │ │ │ ├── pw.svg │ │ │ ├── cg.svg │ │ │ ├── cz.svg │ │ │ ├── vc.svg │ │ │ ├── jp.svg │ │ │ ├── sd.svg │ │ │ ├── bj.svg │ │ │ ├── kw.svg │ │ │ ├── az.svg │ │ │ ├── ly.svg │ │ │ ├── so.svg │ │ │ ├── vn.svg │ │ │ ├── is.svg │ │ │ ├── gy.svg │ │ │ ├── gm.svg │ │ │ ├── tz.svg │ │ │ ├── ax.svg │ │ │ ├── sc.svg │ │ │ ├── bs.svg │ │ │ ├── bh.svg │ │ │ ├── gg.svg │ │ │ ├── ps.svg │ │ │ ├── sy.svg │ │ │ ├── cl.svg │ │ │ ├── dj.svg │ │ │ ├── fo.svg │ │ │ ├── bv.svg │ │ │ ├── gl.svg │ │ │ ├── tl.svg │ │ │ ├── tr.svg │ │ │ ├── cu.svg │ │ │ ├── cw.svg │ │ │ ├── pr.svg │ │ │ ├── bb.svg │ │ │ ├── tk.svg │ │ │ ├── cf.svg │ │ │ ├── se.svg │ │ │ ├── rw.svg │ │ │ ├── nr.svg │ │ │ ├── gw.svg │ │ │ ├── cn.svg │ │ │ ├── jo.svg │ │ │ ├── lr.svg │ │ │ ├── tg.svg │ │ │ ├── cm.svg │ │ │ ├── gr.svg │ │ │ ├── mm.svg │ │ │ ├── ws.svg │ │ │ ├── pa.svg │ │ │ ├── ca.svg │ │ │ ├── ag.svg │ │ │ ├── mr.svg │ │ │ ├── pk.svg │ │ │ ├── fm.svg │ │ │ ├── st.svg │ │ │ ├── kn.svg │ │ │ ├── gb.svg │ │ │ ├── mh.svg │ │ │ ├── tn.svg │ │ │ ├── kp.svg │ │ │ ├── il.svg │ │ │ ├── eh.svg │ │ │ ├── za.svg │ │ │ ├── tf.svg │ │ │ ├── in.svg │ │ │ ├── hn.svg │ │ │ ├── sb.svg │ │ │ ├── ve.svg │ │ │ ├── tw.svg │ │ │ ├── sg.svg │ │ │ ├── km.svg │ │ │ ├── bi.svg │ │ │ ├── na.svg │ │ │ ├── eu.svg │ │ │ ├── np.svg │ │ │ ├── ph.svg │ │ │ ├── ke.svg │ │ │ ├── uz.svg │ │ │ ├── my.svg │ │ │ ├── et.svg │ │ │ ├── mn.svg │ │ │ ├── sk.svg │ │ │ ├── ls.svg │ │ │ ├── cv.svg │ │ │ ├── au.svg │ │ │ ├── ba.svg │ │ │ ├── hm.svg │ │ │ ├── uy.svg │ │ │ ├── gd.svg │ │ │ ├── mo.svg │ │ │ ├── tj.svg │ │ │ ├── pg.svg │ │ │ ├── ao.svg │ │ │ ├── ge.svg │ │ │ ├── iq.svg │ │ │ ├── nu.svg │ │ │ ├── kr.svg │ │ │ ├── ck.svg │ │ │ ├── si.svg │ │ │ ├── tv.svg │ │ │ ├── zw.svg │ │ │ ├── nz.svg │ │ │ ├── cx.svg │ │ │ ├── mz.svg │ │ │ ├── lb.svg │ │ │ └── gi.svg │ │ │ ├── language-selection-locales.json │ │ │ ├── language-selection.html │ │ │ └── language-selection.js │ └── chemical-element-page │ │ └── chemical-element-page.js ├── shared │ └── chemical-elements.js ├── periodic-table.html └── periodic-table.js ├── .gitignore ├── bower.json ├── package.json ├── index.html ├── README.md └── main.js /periodic-table/periodic-table.css: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | bower_components 3 | dist -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/chemical-element/chemical-element.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /periodic-table/shared/chemical-elements.js: -------------------------------------------------------------------------------- 1 | 2 | module.exports = require('./chemical-elements.json'); 3 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/element-grid/element-grid.js: -------------------------------------------------------------------------------- 1 | 2 | module.exports = require('./element-grid.json'); -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/bd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/de.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/am.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/bq.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/pl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gb-sct.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/lu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/mc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/dk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gb-eng.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ua.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/fi.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/at.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/id.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/lv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ae.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ma.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/bw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ne.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ga.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ng.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/sl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ml.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/mv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/td.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ye.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ci.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/co.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/dz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gh.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/fr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/mf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/mq.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ru.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/th.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/bg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/cr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/mg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/wf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/bl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/hu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/mu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/be.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ie.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/it.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/nc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/pm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/re.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ro.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/yt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ee.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/no.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/sj.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/sr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/cd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/tt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/nl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/mk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/qa.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ss.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/lc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/to.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/jm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/bf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/lt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/sn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/la.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/pw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/cg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/cz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/vc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/jp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/sd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/bj.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/kw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/az.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ly.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/so.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/vn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/is.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/tz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ax.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/sc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/bs.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/bh.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ps.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/sy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/cl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/dj.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/fo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/language-selection-locales.json: -------------------------------------------------------------------------------- 1 | { 2 | "en": 3 | { 4 | "language": "Language" 5 | }, 6 | "de": 7 | { 8 | "language": "Sprache" 9 | }, 10 | "fr": 11 | { 12 | "language": "Langue" 13 | }, 14 | "pt-br": 15 | { 16 | "language": "idioma" 17 | }, 18 | "sp": 19 | { 20 | "language": "idioma" 21 | }, 22 | "tk": 23 | { 24 | "language": "dil" 25 | }, 26 | "hi": 27 | { 28 | "language": "भाषा" 29 | }, 30 | "ch": 31 | { 32 | "language": "语言" 33 | }, 34 | "cz": 35 | { 36 | "language": "český" 37 | }, 38 | "ru": 39 | { 40 | "language": "язык" 41 | }, 42 | "pl": 43 | { 44 | "language": "Język" 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/bv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/tl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/tr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/cu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/cw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/pr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/bb.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/tk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/cf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/se.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/rw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/nr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/cn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/jo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/lr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/tg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/cm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/mm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ws.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/pa.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ca.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ag.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/mr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/pk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/fm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/element-grid/element-grid.json: -------------------------------------------------------------------------------- 1 | [ 2 | [ "h", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "he" ], 3 | [ "li", "be", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "b", "c", "n", "o", "f", "ne" ], 4 | [ "na", "mg", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "al", "si", "p", "s", "cl", "ar"], 5 | [ "k", "ca", "sc", "ti", "v", "cr", "mn", "fe", "co", "ni", "cu", "zn", "ga", "ge", "as", "se", "br", "kr"], 6 | [ "rb", "sr", "y", "zr", "nb", "mo", "tc", "ru", "rh", "pd", "ag", "cd", "in", "sn", "sb", "te", "i", "xe"], 7 | [ "cs", "ba", "-", "hf", "ta", "w", "re", "os", "ir", "pt", "au", "hg", "tl", "pb", "bi", "po", "at", "rn"], 8 | [ "fr", "ra", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-"], 9 | [ "-", "-", "-", "la", "ce", "pr", "nd", "pm", "sm", "eu", "gd", "tb", "dy", "ho", "er", "tm", "yb", "lu"], 10 | [ "-", "-", "-", "ac", "th", "pa", "u", "np", "pu", "am", "cm", "bk", "cf", "es", "fm", "md", "no", "lr"] 11 | ] 12 | 13 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/st.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/kn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gb.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/mh.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/tn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/kp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/il.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/eh.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/za.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/tf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/in.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/hn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/sb.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ve.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/chemical-element/chemical-element.js: -------------------------------------------------------------------------------- 1 | 2 | class ChemicalElement extends Polymer.Element 3 | { 4 | static get is() 5 | { 6 | return 'chemical-element'; 7 | } 8 | 9 | static get properties() 10 | { 11 | return { 12 | symbol: String, 13 | element: Object, 14 | selectedSymbol: String 15 | } 16 | } 17 | 18 | static get observers() 19 | { 20 | return ['_updateSelectedClass(selectedSymbol)']; 21 | } 22 | 23 | constructor() 24 | { 25 | super(); 26 | } 27 | 28 | connectedCallback() 29 | { 30 | super.connectedCallback(); 31 | 32 | let chemicalElements = require('./periodic-table/shared/chemical-elements'); 33 | 34 | this.element = chemicalElements[this.symbol]; 35 | 36 | this.$["paper-card"].addEventListener("click", () => 37 | { 38 | this.dispatchEvent(new CustomEvent('chemical-element-selected', {detail: {symbol: this.symbol}})); 39 | }); 40 | 41 | this._updateSelectedClass(); 42 | } 43 | 44 | _updateSelectedClass() 45 | { 46 | if(this.selectedSymbol === this.symbol) 47 | { 48 | this.$["paper-card"].classList.add("selected"); 49 | } 50 | else 51 | { 52 | this.$["paper-card"].classList.remove("selected"); 53 | } 54 | } 55 | } 56 | 57 | customElements.define(ChemicalElement.is, ChemicalElement); 58 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/tw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/sg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/km.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Elements", 3 | "description": "A periodic table viewer desktop app", 4 | "main": "main.js", 5 | "authors": [ 6 | "Florian Fechner" 7 | ], 8 | "license": "MIT", 9 | "keywords": [ 10 | "novel", 11 | "polymer", 12 | "electron" 13 | ], 14 | "ignore": [ 15 | "**/.*", 16 | "node_modules", 17 | "bower_components", 18 | "test", 19 | "tests" 20 | ], 21 | "dependencies": { 22 | "polymer": "^2.0.1", 23 | "paper-card": "PolymerElements/paper-card#^2.0.0", 24 | "iron-pages": "PolymerElements/iron-pages#^2.0.0", 25 | "iron-icons": "PolymerElements/iron-icons#^2.0.1", 26 | "iron-icon": "PolymerElements/iron-icon#^2.0.0", 27 | "app-layout": "PolymerElements/app-layout#^2.0.0", 28 | "paper-item": "PolymerElements/paper-item#^2.0.0", 29 | "paper-swatch-picker": "PolymerElements/paper-swatch-picker#^2.0.0", 30 | "paper-listbox": "PolymerElements/paper-listbox#^2.0.0", 31 | "paper-dropdown-menu": "PolymerElements/paper-dropdown-menu#^2.0.0", 32 | "app-localize-behavior": "PolymerElements/app-localize-behavior#^2.0.0", 33 | "chemical-element-visualisation": "FlorianFe/chemical-element-visualisation#^1.0.0", 34 | "app-storage": "^2.0.2", 35 | "paper-dialog": "PolymerElements/paper-dialog#^2.0.1", 36 | "web-animations-js": "^2.3.1", 37 | "paper-button": "^2.0.0", 38 | "iron-a11y-keys-behavior": "^2.0.0" 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/bi.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/na.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/eu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Elements", 3 | "version": "1.2.1", 4 | "description": "A periodic table viewer desktop app", 5 | "main": "main.js", 6 | "scripts": { 7 | "start": "electron .", 8 | "pack": "electron-builder --dir", 9 | "dist": "electron-builder" 10 | }, 11 | "build": { 12 | "appId": "de.florianfe.elements", 13 | "mac": { 14 | "category": "public.app-category.utilities", 15 | "icon": "icon@2x" 16 | }, 17 | "win": { 18 | "icon": "build/icon" 19 | }, 20 | "linux": { 21 | "target": [ 22 | "deb", 23 | "AppImage" 24 | ], 25 | "icon": "build/icons/", 26 | "desktop": { 27 | "Name": "Elements", 28 | "Comment": "An application which displays the periodic table", 29 | "Categories": "Science;Chemistry;" 30 | } 31 | } 32 | }, 33 | "repository": "https://github.com/FlorianFe/Elements", 34 | "keywords": [ 35 | "translation", 36 | "polymer", 37 | "electron" 38 | ], 39 | "author": { 40 | "name": "Florian Fechner", 41 | "email": "f_fech03@uni-muenster.de", 42 | "url": "https://github.com/FlorianFe" 43 | }, 44 | "license": "CC-0", 45 | "devDependencies": { 46 | "electron": "^18.3.7", 47 | "electron-builder": "^22.7.0" 48 | }, 49 | "dependencies": { 50 | "electron-localshortcut": "^3.2.1", 51 | "ipc": "0.0.1", 52 | "lodash.debounce": "^4.0.8", 53 | "path": "^0.12.7" 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/np.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ph.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ke.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/uz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/my.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/et.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/mn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/sk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ls.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/cv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/au.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ba.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/hm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/uy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Elements 7 | 8 | 9 | 10 | 54 | 55 | 56 | 57 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/mo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/chemical-element-page/chemical-element-page.js: -------------------------------------------------------------------------------- 1 | 2 | class ChemicalElementPage extends Polymer.mixinBehaviors([Polymer.AppLocalizeBehavior], Polymer.Element) 3 | { 4 | static get is() 5 | { 6 | return 'chemical-element-page'; 7 | } 8 | 9 | static get properties() 10 | { 11 | return { 12 | symbol: String, 13 | element: Object, 14 | language: String, 15 | temperatureIndicator: String 16 | } 17 | } 18 | 19 | static get observers() 20 | { 21 | return ['_onSymbolChange(symbol)']; 22 | } 23 | 24 | constructor() 25 | { 26 | super(); 27 | } 28 | 29 | ready() 30 | { 31 | super.ready(); 32 | 33 | let chemicalElements = require('./periodic-table/shared/chemical-elements'); 34 | 35 | this.element = chemicalElements[this.symbol]; 36 | } 37 | 38 | connectedCallback() 39 | { 40 | super.connectedCallback(); 41 | 42 | this.loadResources(this.resolveUrl('chemical-element-page-locales.json')); 43 | } 44 | 45 | displayTemperaturIndication(kelvin, temperatureIndicator) 46 | { 47 | let value = "-"; 48 | 49 | if(typeof kelvin == "number") 50 | { 51 | if(temperatureIndicator === "k") 52 | { 53 | value = kelvin; 54 | if((""+value).length >= 6) value = ("" + value).substring(0, 6); 55 | value += " K"; 56 | } 57 | 58 | if(temperatureIndicator === "f") 59 | { 60 | value = ((kelvin - 273) * 1.8 + 32); 61 | if((""+value).length >= 6) value = ("" + value).substring(0, 6); 62 | value += " °F"; 63 | } 64 | 65 | if(temperatureIndicator === "c") 66 | { 67 | value = (kelvin - 273); 68 | if((""+value).length >= 6) value = ("" + value).substring(0, 6); 69 | value += " °C"; 70 | } 71 | } 72 | 73 | return value; 74 | } 75 | 76 | _onSymbolChange(symbol) 77 | { 78 | let chemicalElements = require('./periodic-table/shared/chemical-elements'); 79 | 80 | this.element = chemicalElements[this.symbol]; 81 | } 82 | } 83 | 84 | customElements.define(ChemicalElementPage.is, ChemicalElementPage); 85 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/tj.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /periodic-table/periodic-table.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 70 | 71 | 72 | 73 | 74 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/pg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ao.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ge.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/iq.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/nu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/kr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/language-selection.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 72 | 73 | 74 | 75 | 76 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/language-selection.js: -------------------------------------------------------------------------------- 1 | 2 | class LanguageSelection extends Polymer.mixinBehaviors([Polymer.AppLocalizeBehavior], Polymer.Element) 3 | { 4 | static get is() 5 | { 6 | return 'language-selection'; 7 | } 8 | 9 | static get properties() 10 | { 11 | return { 12 | selected: 13 | { 14 | type: String, 15 | value: "en", 16 | notify: true 17 | }, 18 | language: 19 | { 20 | type: String, 21 | value: "en" 22 | }, 23 | availableLanguageIso: 24 | { 25 | type: Object, 26 | value: [ 27 | "en", 28 | "de", 29 | "fr", 30 | "sp", 31 | "tk", 32 | "pt-br", 33 | "hi", 34 | "cz", 35 | "ru", 36 | "pl" 37 | ] 38 | }, 39 | _languageIsoToFlagMap: 40 | { 41 | type: Object, 42 | value: 43 | { 44 | "en": "gb", 45 | "de": "de", 46 | "fr": "fr", 47 | "sp": "es", 48 | "tk": "tr", 49 | "pt-br": "br", 50 | "hi": "in", 51 | "cz": "cz", 52 | "ru": "ru", 53 | "pl": "pl" 54 | } 55 | }, 56 | _languageIsoToLanguageNameMap: 57 | { 58 | type: Object, 59 | value: 60 | { 61 | "en": "English", 62 | "de": "Deutsch", 63 | "fr": "Français", 64 | "sp": "Español", 65 | "tk": "Türk", 66 | "pt-br": "Português", 67 | "hi": "हिन्दी", 68 | "cz": "čeština", 69 | "ru": "русский", 70 | "pl": "polski" 71 | } 72 | } 73 | } 74 | } 75 | 76 | constructor() 77 | { 78 | super(); 79 | } 80 | 81 | connectedCallback() 82 | { 83 | super.connectedCallback(); 84 | 85 | this.loadResources(this.resolveUrl('language-selection-locales.json')); 86 | } 87 | 88 | _convertLanguageIsoToFlag(languageIso) 89 | { 90 | return this._languageIsoToFlagMap[languageIso]; 91 | } 92 | 93 | _getFlagPathOfLanguageIso(languageIso) 94 | { 95 | return this.importPath + 'languages/' + this._convertLanguageIsoToFlag(languageIso) + '.svg'; 96 | } 97 | 98 | _convertLanguageIsoToLanguageName(languageIso) 99 | { 100 | return this._languageIsoToLanguageNameMap[languageIso]; 101 | } 102 | } 103 | 104 | customElements.define(LanguageSelection.is, LanguageSelection); 105 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/ck.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

2 | Icon 3 |

Elements

4 |

5 | A desktop App which displays the periodic table
6 | It's using the <chemical-element-visualisation> Web Component 7 |

8 | build-with-love 9 | uses-js 10 |
11 | download-count 12 |

13 |

14 | 15 |

16 | 17 | ## 📝 Source Code 18 | 19 | In order to use this source code you need to have Node.js, Git and Bower installed globally. After that you have to follow the steps below. 20 | 21 | ```bash 22 | # Clone this repository 23 | git clone https://github.com/florianfe/Elements 24 | # Go into the repository 25 | cd Elements 26 | # Install npm dependencies 27 | npm install 28 | # Install bower dependencies 29 | bower install 30 | # Run the app in test mode 31 | npm start 32 | # build application for release 33 | npm run-script dist 34 | ``` 35 | 36 | 37 | ## 🖼 Preview 38 | 39 | screenshot_1 40 | screenshot_2 41 | screenshot_3 42 | 43 | ## 💾 Download 44 | 45 | 46 | 47 | 48 | 49 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 |
PlatformVersionDownload 50 |
Mac1.2.1Download
Windows1.2.1Download
Linux (.deb)1.2.1Download
Linux (.AppImage)1.2.1Download
72 | 73 | ## 📖 License 74 | [![forthebadge](http://forthebadge.com/images/badges/cc-0.svg)](https://creativecommons.org/publicdomain/zero/1.0/) 75 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/si.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/tv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /periodic-table/periodic-table.js: -------------------------------------------------------------------------------- 1 | 2 | class PeriodicTable extends Polymer.Element 3 | { 4 | static get is() { return 'periodic-table'; } 5 | 6 | static get properties() 7 | { 8 | return { 9 | _selectedPage: 10 | { 11 | type: Number, 12 | value: 0 13 | }, 14 | display: 15 | { 16 | type: String, 17 | observer(newValue, oldValue) { 18 | this._updateCSSVariables(); 19 | } 20 | } 21 | } 22 | } 23 | 24 | constructor() 25 | { 26 | super(); 27 | 28 | this._fullscreen = false; 29 | } 30 | 31 | ready() 32 | { 33 | super.ready(); 34 | } 35 | 36 | connectedCallback() 37 | { 38 | super.connectedCallback(); 39 | 40 | this.$["loading-bar-container"].animate( 41 | [ 42 | { "opacity" : 0.0}, 43 | { "opacity" : 1.0} 44 | ], 45 | { 46 | duration: 500 47 | }); 48 | 49 | Promise.all( 50 | [ 51 | this._importHref(this.resolveUrl("periodic-table-content/periodic-table-content.html")), 52 | new Promise((resolve, reject) => {setTimeout(() => {resolve()}, 2500);}) 53 | ]) 54 | .then(() => 55 | { 56 | let animation = this.$["loading-bar-container"].animate( 57 | [ 58 | { "opacity" : 1.0}, 59 | { "opacity" : 0.0} 60 | ], 61 | { 62 | duration: 500 63 | }); 64 | 65 | animation.onfinish = () => 66 | { 67 | this._selectedPage = 1; 68 | 69 | this.$["periodic-table-content-container"].animate( 70 | [ 71 | { "opacity" : 0.0}, 72 | { "opacity" : 1.0} 73 | ], 74 | { 75 | duration: 500 76 | }); 77 | }; 78 | }); 79 | } 80 | 81 | _pickRandomElementSymbol() 82 | { 83 | let symbols = 84 | [ 85 | "h", "he", 86 | "li", "be", "b", "c", "n", "o", "f", "ne", 87 | "na", "mg", "al", "si", "p", "s", "al", "ar", 88 | "fe", "au", "cu", "pt", "u", "ag", "zn", "ti" 89 | ]; 90 | 91 | return symbols[Math.floor(Math.random() * symbols.length)]; 92 | } 93 | 94 | _updateCSSVariables() 95 | { 96 | if(this.display == 'light') 97 | { 98 | document.documentElement.style.setProperty('--primary-color', '#888'); 99 | document.documentElement.style.setProperty('--secondary-color', '#000'); 100 | document.documentElement.style.setProperty('--background-color', '#fff'); 101 | } 102 | 103 | if(this.display == 'dark') 104 | { 105 | document.documentElement.style.setProperty('--primary-color', '#eee'); 106 | document.documentElement.style.setProperty('--secondary-color', '#fff'); 107 | document.documentElement.style.setProperty('--background-color', '#333'); 108 | } 109 | } 110 | 111 | _importHref(href) 112 | { 113 | return new Promise((resolve, reject) => 114 | { 115 | Polymer.Base.importHref(href, function(e) { 116 | resolve(e.target); 117 | }, reject, false); 118 | }); 119 | } 120 | } 121 | 122 | customElements.define(PeriodicTable.is, PeriodicTable); 123 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/zw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/nz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/cx.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/mz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /main.js: -------------------------------------------------------------------------------- 1 | const electron = require('electron'); 2 | const debounce = require('lodash.debounce') 3 | 4 | const { app, screen, BrowserWindow, globalShortcut, ipcMain} = electron; 5 | const { floor } = Math; 6 | 7 | const Menu = electron.Menu; 8 | 9 | const path = require('path'); 10 | 11 | let window = null; 12 | 13 | const ASPECT_RATIO = (10.0 / 18.0); 14 | const HEAD_SECTION_HEIGHT = 100; 15 | 16 | const createWindow = () => 17 | { 18 | const { width, height } = screen.getPrimaryDisplay().workAreaSize; 19 | const windowMinWidth = floor(width * 0.3); 20 | const windowStartWidth = floor(width * 0.7); 21 | 22 | window = new BrowserWindow( 23 | { 24 | minWidth: windowMinWidth, 25 | width: windowStartWidth, 26 | height: floor(windowStartWidth * ASPECT_RATIO) + HEAD_SECTION_HEIGHT, 27 | backgroundColor: '#fff', 28 | webPreferences: 29 | { 30 | nodeIntegration: true 31 | } 32 | }); 33 | window.loadURL(path.join('file://', __dirname, 'index.html')); 34 | 35 | window.on('closed', () => 36 | { 37 | window = null; 38 | }); 39 | 40 | const template = 41 | [ 42 | { 43 | label: 'Edit', 44 | submenu: [ 45 | { role: 'undo' }, 46 | { role: 'redo' }, 47 | { type: 'separator' }, 48 | { role: 'cut' }, 49 | { role: 'copy' }, 50 | { role: 'paste' }, 51 | { role: 'pasteandmatchstyle' }, 52 | { role: 'delete' }, 53 | { role: 'selectall' } 54 | ] 55 | }, 56 | { 57 | label: 'View', 58 | submenu: [ 59 | { role: 'reload' }, 60 | { role: 'forcereload' }, 61 | { role: 'toggledevtools' }, 62 | { type: 'separator' }, 63 | { role: 'resetzoom' }, 64 | { role: 'zoomin' }, 65 | { role: 'zoomout' }, 66 | { type: 'separator' }, 67 | { role: 'togglefullscreen' } 68 | ] 69 | }, 70 | { 71 | role: 'window', 72 | submenu: [ 73 | { role: 'minimize' }, 74 | { role: 'close' } 75 | ] 76 | }, 77 | { 78 | role: 'help', 79 | submenu: [ 80 | { 81 | label: 'Learn More', 82 | click() { require('electron').shell.openExternal('https://github.com/FlorianFe/Elements') } 83 | } 84 | ] 85 | } 86 | ] 87 | 88 | if (process.platform === 'darwin') 89 | { 90 | template.unshift( 91 | { 92 | label: app.getName(), 93 | submenu: [ 94 | { role: 'about' }, 95 | { type: 'separator' }, 96 | { role: 'services', submenu: [] }, 97 | { type: 'separator' }, 98 | { role: 'hide' }, 99 | { role: 'hideothers' }, 100 | { role: 'unhide' }, 101 | { type: 'separator' }, 102 | { role: 'quit' } 103 | ] 104 | }) 105 | 106 | // Edit menu 107 | template[1].submenu.push( 108 | { type: 'separator' }, 109 | { 110 | label: 'Speech', 111 | submenu: [ 112 | { role: 'startspeaking' }, 113 | { role: 'stopspeaking' } 114 | ] 115 | } 116 | ) 117 | 118 | // Window menu 119 | template[3].submenu = [ 120 | { role: 'close' }, 121 | { role: 'minimize' }, 122 | { role: 'zoom' }, 123 | { type: 'separator' }, 124 | { role: 'front' } 125 | ] 126 | } 127 | 128 | let menu = Menu.buildFromTemplate(template); 129 | Menu.setApplicationMenu(menu); 130 | } 131 | 132 | 133 | app.on('ready', () => 134 | { 135 | createWindow(); 136 | }); 137 | 138 | app.on('activate', () => 139 | { 140 | if (window === null) { 141 | createWindow() 142 | } 143 | }); 144 | 145 | app.on('window-all-closed', () => { 146 | if (process.platform !== 'darwin') { 147 | app.quit() 148 | } 149 | }); 150 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/lb.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/chemical-element/chemical-element.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 93 | 94 | 95 | 96 | 97 | -------------------------------------------------------------------------------- /periodic-table/periodic-table-content/settings-dialog/language-selection/languages/gi.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | --------------------------------------------------------------------------------