From 111b3de6f2cc30d4a4c5bd08208e78fca05d7d75 Mon Sep 17 00:00:00 2001 From: MengMengCode <227010654+MengMengCode@users.noreply.github.com> Date: Tue, 11 Aug 2026 15:59:47 +0800 Subject: [PATCH] support offline flag --- web/public/flags/README.md | 8 + web/public/flags/ad.svg | 150 ++++ web/public/flags/ae.svg | 6 + web/public/flags/af.svg | 81 ++ web/public/flags/ag.svg | 14 + web/public/flags/ai.svg | 29 + web/public/flags/al.svg | 5 + web/public/flags/am.svg | 5 + web/public/flags/ao.svg | 13 + web/public/flags/aq.svg | 5 + web/public/flags/ar.svg | 32 + web/public/flags/arab.svg | 109 +++ web/public/flags/as.svg | 72 ++ web/public/flags/asean.svg | 13 + web/public/flags/at.svg | 4 + web/public/flags/au.svg | 8 + web/public/flags/aw.svg | 186 +++++ web/public/flags/ax.svg | 18 + web/public/flags/az.svg | 8 + web/public/flags/ba.svg | 12 + web/public/flags/bb.svg | 6 + web/public/flags/bd.svg | 4 + web/public/flags/be.svg | 7 + web/public/flags/bf.svg | 7 + web/public/flags/bg.svg | 5 + web/public/flags/bh.svg | 4 + web/public/flags/bi.svg | 15 + web/public/flags/bj.svg | 14 + web/public/flags/bl.svg | 5 + web/public/flags/bm.svg | 97 +++ web/public/flags/bn.svg | 36 + web/public/flags/bo.svg | 673 +++++++++++++++++ web/public/flags/bq.svg | 5 + web/public/flags/br.svg | 45 ++ web/public/flags/bs.svg | 13 + web/public/flags/bt.svg | 89 +++ web/public/flags/bv.svg | 13 + web/public/flags/bw.svg | 7 + web/public/flags/by.svg | 18 + web/public/flags/bz.svg | 145 ++++ web/public/flags/ca.svg | 4 + web/public/flags/cc.svg | 19 + web/public/flags/cd.svg | 5 + web/public/flags/cefta.svg | 13 + web/public/flags/cf.svg | 15 + web/public/flags/cg.svg | 12 + web/public/flags/ch.svg | 9 + web/public/flags/ci.svg | 7 + web/public/flags/ck.svg | 9 + web/public/flags/cl.svg | 13 + web/public/flags/cm.svg | 15 + web/public/flags/cn.svg | 11 + web/public/flags/co.svg | 7 + web/public/flags/cp.svg | 7 + web/public/flags/cr.svg | 7 + web/public/flags/cu.svg | 13 + web/public/flags/cv.svg | 13 + web/public/flags/cw.svg | 14 + web/public/flags/cx.svg | 15 + web/public/flags/cy.svg | 6 + web/public/flags/cz.svg | 5 + web/public/flags/de.svg | 5 + web/public/flags/dg.svg | 130 ++++ web/public/flags/dj.svg | 13 + web/public/flags/dk.svg | 5 + web/public/flags/dm.svg | 152 ++++ web/public/flags/do.svg | 121 +++ web/public/flags/dz.svg | 5 + web/public/flags/eac.svg | 48 ++ web/public/flags/ec.svg | 138 ++++ web/public/flags/ee.svg | 5 + web/public/flags/eg.svg | 38 + web/public/flags/eh.svg | 16 + web/public/flags/er.svg | 8 + web/public/flags/es-ct.svg | 4 + web/public/flags/es-ga.svg | 187 +++++ web/public/flags/es-pv.svg | 5 + web/public/flags/es.svg | 544 ++++++++++++++ web/public/flags/et.svg | 14 + web/public/flags/eu.svg | 28 + web/public/flags/fi.svg | 5 + web/public/flags/fj.svg | 120 +++ web/public/flags/fk.svg | 90 +++ web/public/flags/fm.svg | 11 + web/public/flags/fo.svg | 12 + web/public/flags/fr.svg | 5 + web/public/flags/ga.svg | 7 + web/public/flags/gb-eng.svg | 5 + web/public/flags/gb-nir.svg | 132 ++++ web/public/flags/gb-sct.svg | 4 + web/public/flags/gb-wls.svg | 9 + web/public/flags/gb.svg | 7 + web/public/flags/gd.svg | 27 + web/public/flags/ge.svg | 6 + web/public/flags/gf.svg | 5 + web/public/flags/gg.svg | 9 + web/public/flags/gh.svg | 6 + web/public/flags/gi.svg | 32 + web/public/flags/gl.svg | 4 + web/public/flags/gm.svg | 14 + web/public/flags/gn.svg | 7 + web/public/flags/gp.svg | 5 + web/public/flags/gq.svg | 23 + web/public/flags/gr.svg | 16 + web/public/flags/gs.svg | 133 ++++ web/public/flags/gt.svg | 204 ++++++ web/public/flags/gu.svg | 19 + web/public/flags/gw.svg | 13 + web/public/flags/gy.svg | 9 + web/public/flags/hk.svg | 8 + web/public/flags/hm.svg | 8 + web/public/flags/hn.svg | 18 + web/public/flags/hr.svg | 58 ++ web/public/flags/ht.svg | 116 +++ web/public/flags/hu.svg | 7 + web/public/flags/ic.svg | 7 + web/public/flags/id.svg | 4 + web/public/flags/ie.svg | 7 + web/public/flags/il.svg | 14 + web/public/flags/im.svg | 36 + web/public/flags/in.svg | 25 + web/public/flags/io.svg | 130 ++++ web/public/flags/iq.svg | 10 + web/public/flags/ir.svg | 219 ++++++ web/public/flags/is.svg | 12 + web/public/flags/it.svg | 7 + web/public/flags/je.svg | 62 ++ web/public/flags/jm.svg | 8 + web/public/flags/jo.svg | 16 + web/public/flags/jp.svg | 11 + web/public/flags/ke.svg | 23 + web/public/flags/kg.svg | 4 + web/public/flags/kh.svg | 61 ++ web/public/flags/ki.svg | 36 + web/public/flags/km.svg | 16 + web/public/flags/kn.svg | 14 + web/public/flags/kp.svg | 15 + web/public/flags/kr.svg | 24 + web/public/flags/kw.svg | 13 + web/public/flags/ky.svg | 103 +++ web/public/flags/kz.svg | 36 + web/public/flags/la.svg | 12 + web/public/flags/lb.svg | 15 + web/public/flags/lc.svg | 8 + web/public/flags/li.svg | 43 ++ web/public/flags/lk.svg | 22 + web/public/flags/lr.svg | 14 + web/public/flags/ls.svg | 8 + web/public/flags/lt.svg | 7 + web/public/flags/lu.svg | 5 + web/public/flags/lv.svg | 6 + web/public/flags/ly.svg | 13 + web/public/flags/ma.svg | 4 + web/public/flags/mc.svg | 6 + web/public/flags/md.svg | 70 ++ web/public/flags/me.svg | 116 +++ web/public/flags/mf.svg | 5 + web/public/flags/mg.svg | 7 + web/public/flags/mh.svg | 7 + web/public/flags/mk.svg | 5 + web/public/flags/ml.svg | 7 + web/public/flags/mm.svg | 12 + web/public/flags/mn.svg | 14 + web/public/flags/mo.svg | 9 + web/public/flags/mp.svg | 86 +++ web/public/flags/mq.svg | 5 + web/public/flags/mr.svg | 6 + web/public/flags/ms.svg | 29 + web/public/flags/mt.svg | 58 ++ web/public/flags/mu.svg | 8 + web/public/flags/mv.svg | 6 + web/public/flags/mw.svg | 10 + web/public/flags/mx.svg | 382 ++++++++++ web/public/flags/my.svg | 26 + web/public/flags/mz.svg | 21 + web/public/flags/na.svg | 16 + web/public/flags/nc.svg | 13 + web/public/flags/ne.svg | 6 + web/public/flags/nf.svg | 9 + web/public/flags/ng.svg | 6 + web/public/flags/ni.svg | 129 ++++ web/public/flags/nl.svg | 5 + web/public/flags/no.svg | 7 + web/public/flags/np.svg | 13 + web/public/flags/nr.svg | 12 + web/public/flags/nu.svg | 10 + web/public/flags/nz.svg | 36 + web/public/flags/om.svg | 115 +++ web/public/flags/pa.svg | 14 + web/public/flags/pc.svg | 33 + web/public/flags/pe.svg | 4 + web/public/flags/pf.svg | 19 + web/public/flags/pg.svg | 9 + web/public/flags/ph.svg | 6 + web/public/flags/pk.svg | 15 + web/public/flags/pl.svg | 6 + web/public/flags/pm.svg | 5 + web/public/flags/pn.svg | 53 ++ web/public/flags/pr.svg | 13 + web/public/flags/ps.svg | 15 + web/public/flags/pt.svg | 57 ++ web/public/flags/pw.svg | 11 + web/public/flags/py.svg | 157 ++++ web/public/flags/qa.svg | 4 + web/public/flags/re.svg | 5 + web/public/flags/ro.svg | 7 + web/public/flags/rs.svg | 292 ++++++++ web/public/flags/ru.svg | 5 + web/public/flags/rw.svg | 13 + web/public/flags/sa.svg | 25 + web/public/flags/sb.svg | 13 + web/public/flags/sc.svg | 7 + web/public/flags/sd.svg | 13 + web/public/flags/se.svg | 4 + web/public/flags/sg.svg | 13 + web/public/flags/sh-ac.svg | 689 ++++++++++++++++++ web/public/flags/sh-hl.svg | 164 +++++ web/public/flags/sh-ta.svg | 76 ++ web/public/flags/sh.svg | 7 + web/public/flags/si.svg | 18 + web/public/flags/sj.svg | 7 + web/public/flags/sk.svg | 9 + web/public/flags/sl.svg | 7 + web/public/flags/sm.svg | 75 ++ web/public/flags/sn.svg | 8 + web/public/flags/so.svg | 11 + web/public/flags/sr.svg | 6 + web/public/flags/ss.svg | 8 + web/public/flags/st.svg | 16 + web/public/flags/sv.svg | 593 +++++++++++++++ web/public/flags/sx.svg | 56 ++ web/public/flags/sy.svg | 6 + web/public/flags/sz.svg | 34 + web/public/flags/tc.svg | 50 ++ web/public/flags/td.svg | 7 + web/public/flags/tf.svg | 15 + web/public/flags/tg.svg | 14 + web/public/flags/th.svg | 7 + web/public/flags/tj.svg | 22 + web/public/flags/tk.svg | 5 + web/public/flags/tl.svg | 13 + web/public/flags/tm.svg | 204 ++++++ web/public/flags/tn.svg | 4 + web/public/flags/to.svg | 10 + web/public/flags/tr.svg | 8 + web/public/flags/tt.svg | 5 + web/public/flags/tv.svg | 9 + web/public/flags/tw.svg | 34 + web/public/flags/tz.svg | 13 + web/public/flags/ua.svg | 6 + web/public/flags/ug.svg | 30 + web/public/flags/um.svg | 9 + web/public/flags/un.svg | 16 + web/public/flags/us.svg | 9 + web/public/flags/uy.svg | 28 + web/public/flags/uz.svg | 30 + web/public/flags/va.svg | 190 +++++ web/public/flags/vc.svg | 8 + web/public/flags/ve.svg | 26 + web/public/flags/vg.svg | 59 ++ web/public/flags/vi.svg | 28 + web/public/flags/vn.svg | 11 + web/public/flags/vu.svg | 21 + web/public/flags/wf.svg | 5 + web/public/flags/ws.svg | 7 + web/public/flags/xk.svg | 5 + web/public/flags/xx.svg | 4 + web/public/flags/ye.svg | 7 + web/public/flags/yt.svg | 5 + web/public/flags/za.svg | 17 + web/public/flags/zm.svg | 27 + web/public/flags/zw.svg | 21 + web/src/components/CountryFlag.tsx | 42 ++ web/src/components/devices/CandidateRow.tsx | 4 +- web/src/components/devices/FieldRow.tsx | 8 +- .../devices/OverviewNetworkCard.tsx | 11 +- .../devices/OverviewNetworkPanel.tsx | 8 +- .../components/devices/OverviewSimPanel.tsx | 14 +- web/src/lib/carrier.ts | 10 - 279 files changed, 10834 insertions(+), 27 deletions(-) create mode 100644 web/public/flags/README.md create mode 100644 web/public/flags/ad.svg create mode 100644 web/public/flags/ae.svg create mode 100644 web/public/flags/af.svg create mode 100644 web/public/flags/ag.svg create mode 100644 web/public/flags/ai.svg create mode 100644 web/public/flags/al.svg create mode 100644 web/public/flags/am.svg create mode 100644 web/public/flags/ao.svg create mode 100644 web/public/flags/aq.svg create mode 100644 web/public/flags/ar.svg create mode 100644 web/public/flags/arab.svg create mode 100644 web/public/flags/as.svg create mode 100644 web/public/flags/asean.svg create mode 100644 web/public/flags/at.svg create mode 100644 web/public/flags/au.svg create mode 100644 web/public/flags/aw.svg create mode 100644 web/public/flags/ax.svg create mode 100644 web/public/flags/az.svg create mode 100644 web/public/flags/ba.svg create mode 100644 web/public/flags/bb.svg create mode 100644 web/public/flags/bd.svg create mode 100644 web/public/flags/be.svg create mode 100644 web/public/flags/bf.svg create mode 100644 web/public/flags/bg.svg create mode 100644 web/public/flags/bh.svg create mode 100644 web/public/flags/bi.svg create mode 100644 web/public/flags/bj.svg create mode 100644 web/public/flags/bl.svg create mode 100644 web/public/flags/bm.svg create mode 100644 web/public/flags/bn.svg create mode 100644 web/public/flags/bo.svg create mode 100644 web/public/flags/bq.svg create mode 100644 web/public/flags/br.svg create mode 100644 web/public/flags/bs.svg create mode 100644 web/public/flags/bt.svg create mode 100644 web/public/flags/bv.svg create mode 100644 web/public/flags/bw.svg create mode 100644 web/public/flags/by.svg create mode 100644 web/public/flags/bz.svg create mode 100644 web/public/flags/ca.svg create mode 100644 web/public/flags/cc.svg create mode 100644 web/public/flags/cd.svg create mode 100644 web/public/flags/cefta.svg create mode 100644 web/public/flags/cf.svg create mode 100644 web/public/flags/cg.svg create mode 100644 web/public/flags/ch.svg create mode 100644 web/public/flags/ci.svg create mode 100644 web/public/flags/ck.svg create mode 100644 web/public/flags/cl.svg create mode 100644 web/public/flags/cm.svg create mode 100644 web/public/flags/cn.svg create mode 100644 web/public/flags/co.svg create mode 100644 web/public/flags/cp.svg create mode 100644 web/public/flags/cr.svg create mode 100644 web/public/flags/cu.svg create mode 100644 web/public/flags/cv.svg create mode 100644 web/public/flags/cw.svg create mode 100644 web/public/flags/cx.svg create mode 100644 web/public/flags/cy.svg create mode 100644 web/public/flags/cz.svg create mode 100644 web/public/flags/de.svg create mode 100644 web/public/flags/dg.svg create mode 100644 web/public/flags/dj.svg create mode 100644 web/public/flags/dk.svg create mode 100644 web/public/flags/dm.svg create mode 100644 web/public/flags/do.svg create mode 100644 web/public/flags/dz.svg create mode 100644 web/public/flags/eac.svg create mode 100644 web/public/flags/ec.svg create mode 100644 web/public/flags/ee.svg create mode 100644 web/public/flags/eg.svg create mode 100644 web/public/flags/eh.svg create mode 100644 web/public/flags/er.svg create mode 100644 web/public/flags/es-ct.svg create mode 100644 web/public/flags/es-ga.svg create mode 100644 web/public/flags/es-pv.svg create mode 100644 web/public/flags/es.svg create mode 100644 web/public/flags/et.svg create mode 100644 web/public/flags/eu.svg create mode 100644 web/public/flags/fi.svg create mode 100644 web/public/flags/fj.svg create mode 100644 web/public/flags/fk.svg create mode 100644 web/public/flags/fm.svg create mode 100644 web/public/flags/fo.svg create mode 100644 web/public/flags/fr.svg create mode 100644 web/public/flags/ga.svg create mode 100644 web/public/flags/gb-eng.svg create mode 100644 web/public/flags/gb-nir.svg create mode 100644 web/public/flags/gb-sct.svg create mode 100644 web/public/flags/gb-wls.svg create mode 100644 web/public/flags/gb.svg create mode 100644 web/public/flags/gd.svg create mode 100644 web/public/flags/ge.svg create mode 100644 web/public/flags/gf.svg create mode 100644 web/public/flags/gg.svg create mode 100644 web/public/flags/gh.svg create mode 100644 web/public/flags/gi.svg create mode 100644 web/public/flags/gl.svg create mode 100644 web/public/flags/gm.svg create mode 100644 web/public/flags/gn.svg create mode 100644 web/public/flags/gp.svg create mode 100644 web/public/flags/gq.svg create mode 100644 web/public/flags/gr.svg create mode 100644 web/public/flags/gs.svg create mode 100644 web/public/flags/gt.svg create mode 100644 web/public/flags/gu.svg create mode 100644 web/public/flags/gw.svg create mode 100644 web/public/flags/gy.svg create mode 100644 web/public/flags/hk.svg create mode 100644 web/public/flags/hm.svg create mode 100644 web/public/flags/hn.svg create mode 100644 web/public/flags/hr.svg create mode 100644 web/public/flags/ht.svg create mode 100644 web/public/flags/hu.svg create mode 100644 web/public/flags/ic.svg create mode 100644 web/public/flags/id.svg create mode 100644 web/public/flags/ie.svg create mode 100644 web/public/flags/il.svg create mode 100644 web/public/flags/im.svg create mode 100644 web/public/flags/in.svg create mode 100644 web/public/flags/io.svg create mode 100644 web/public/flags/iq.svg create mode 100644 web/public/flags/ir.svg create mode 100644 web/public/flags/is.svg create mode 100644 web/public/flags/it.svg create mode 100644 web/public/flags/je.svg create mode 100644 web/public/flags/jm.svg create mode 100644 web/public/flags/jo.svg create mode 100644 web/public/flags/jp.svg create mode 100644 web/public/flags/ke.svg create mode 100644 web/public/flags/kg.svg create mode 100644 web/public/flags/kh.svg create mode 100644 web/public/flags/ki.svg create mode 100644 web/public/flags/km.svg create mode 100644 web/public/flags/kn.svg create mode 100644 web/public/flags/kp.svg create mode 100644 web/public/flags/kr.svg create mode 100644 web/public/flags/kw.svg create mode 100644 web/public/flags/ky.svg create mode 100644 web/public/flags/kz.svg create mode 100644 web/public/flags/la.svg create mode 100644 web/public/flags/lb.svg create mode 100644 web/public/flags/lc.svg create mode 100644 web/public/flags/li.svg create mode 100644 web/public/flags/lk.svg create mode 100644 web/public/flags/lr.svg create mode 100644 web/public/flags/ls.svg create mode 100644 web/public/flags/lt.svg create mode 100644 web/public/flags/lu.svg create mode 100644 web/public/flags/lv.svg create mode 100644 web/public/flags/ly.svg create mode 100644 web/public/flags/ma.svg create mode 100644 web/public/flags/mc.svg create mode 100644 web/public/flags/md.svg create mode 100644 web/public/flags/me.svg create mode 100644 web/public/flags/mf.svg create mode 100644 web/public/flags/mg.svg create mode 100644 web/public/flags/mh.svg create mode 100644 web/public/flags/mk.svg create mode 100644 web/public/flags/ml.svg create mode 100644 web/public/flags/mm.svg create mode 100644 web/public/flags/mn.svg create mode 100644 web/public/flags/mo.svg create mode 100644 web/public/flags/mp.svg create mode 100644 web/public/flags/mq.svg create mode 100644 web/public/flags/mr.svg create mode 100644 web/public/flags/ms.svg create mode 100644 web/public/flags/mt.svg create mode 100644 web/public/flags/mu.svg create mode 100644 web/public/flags/mv.svg create mode 100644 web/public/flags/mw.svg create mode 100644 web/public/flags/mx.svg create mode 100644 web/public/flags/my.svg create mode 100644 web/public/flags/mz.svg create mode 100644 web/public/flags/na.svg create mode 100644 web/public/flags/nc.svg create mode 100644 web/public/flags/ne.svg create mode 100644 web/public/flags/nf.svg create mode 100644 web/public/flags/ng.svg create mode 100644 web/public/flags/ni.svg create mode 100644 web/public/flags/nl.svg create mode 100644 web/public/flags/no.svg create mode 100644 web/public/flags/np.svg create mode 100644 web/public/flags/nr.svg create mode 100644 web/public/flags/nu.svg create mode 100644 web/public/flags/nz.svg create mode 100644 web/public/flags/om.svg create mode 100644 web/public/flags/pa.svg create mode 100644 web/public/flags/pc.svg create mode 100644 web/public/flags/pe.svg create mode 100644 web/public/flags/pf.svg create mode 100644 web/public/flags/pg.svg create mode 100644 web/public/flags/ph.svg create mode 100644 web/public/flags/pk.svg create mode 100644 web/public/flags/pl.svg create mode 100644 web/public/flags/pm.svg create mode 100644 web/public/flags/pn.svg create mode 100644 web/public/flags/pr.svg create mode 100644 web/public/flags/ps.svg create mode 100644 web/public/flags/pt.svg create mode 100644 web/public/flags/pw.svg create mode 100644 web/public/flags/py.svg create mode 100644 web/public/flags/qa.svg create mode 100644 web/public/flags/re.svg create mode 100644 web/public/flags/ro.svg create mode 100644 web/public/flags/rs.svg create mode 100644 web/public/flags/ru.svg create mode 100644 web/public/flags/rw.svg create mode 100644 web/public/flags/sa.svg create mode 100644 web/public/flags/sb.svg create mode 100644 web/public/flags/sc.svg create mode 100644 web/public/flags/sd.svg create mode 100644 web/public/flags/se.svg create mode 100644 web/public/flags/sg.svg create mode 100644 web/public/flags/sh-ac.svg create mode 100644 web/public/flags/sh-hl.svg create mode 100644 web/public/flags/sh-ta.svg create mode 100644 web/public/flags/sh.svg create mode 100644 web/public/flags/si.svg create mode 100644 web/public/flags/sj.svg create mode 100644 web/public/flags/sk.svg create mode 100644 web/public/flags/sl.svg create mode 100644 web/public/flags/sm.svg create mode 100644 web/public/flags/sn.svg create mode 100644 web/public/flags/so.svg create mode 100644 web/public/flags/sr.svg create mode 100644 web/public/flags/ss.svg create mode 100644 web/public/flags/st.svg create mode 100644 web/public/flags/sv.svg create mode 100644 web/public/flags/sx.svg create mode 100644 web/public/flags/sy.svg create mode 100644 web/public/flags/sz.svg create mode 100644 web/public/flags/tc.svg create mode 100644 web/public/flags/td.svg create mode 100644 web/public/flags/tf.svg create mode 100644 web/public/flags/tg.svg create mode 100644 web/public/flags/th.svg create mode 100644 web/public/flags/tj.svg create mode 100644 web/public/flags/tk.svg create mode 100644 web/public/flags/tl.svg create mode 100644 web/public/flags/tm.svg create mode 100644 web/public/flags/tn.svg create mode 100644 web/public/flags/to.svg create mode 100644 web/public/flags/tr.svg create mode 100644 web/public/flags/tt.svg create mode 100644 web/public/flags/tv.svg create mode 100644 web/public/flags/tw.svg create mode 100644 web/public/flags/tz.svg create mode 100644 web/public/flags/ua.svg create mode 100644 web/public/flags/ug.svg create mode 100644 web/public/flags/um.svg create mode 100644 web/public/flags/un.svg create mode 100644 web/public/flags/us.svg create mode 100644 web/public/flags/uy.svg create mode 100644 web/public/flags/uz.svg create mode 100644 web/public/flags/va.svg create mode 100644 web/public/flags/vc.svg create mode 100644 web/public/flags/ve.svg create mode 100644 web/public/flags/vg.svg create mode 100644 web/public/flags/vi.svg create mode 100644 web/public/flags/vn.svg create mode 100644 web/public/flags/vu.svg create mode 100644 web/public/flags/wf.svg create mode 100644 web/public/flags/ws.svg create mode 100644 web/public/flags/xk.svg create mode 100644 web/public/flags/xx.svg create mode 100644 web/public/flags/ye.svg create mode 100644 web/public/flags/yt.svg create mode 100644 web/public/flags/za.svg create mode 100644 web/public/flags/zm.svg create mode 100644 web/public/flags/zw.svg create mode 100644 web/src/components/CountryFlag.tsx diff --git a/web/public/flags/README.md b/web/public/flags/README.md new file mode 100644 index 0000000..7823875 --- /dev/null +++ b/web/public/flags/README.md @@ -0,0 +1,8 @@ +# Bundled country flags + +These 4:3 SVG flags are vendored from +[`lipis/flag-icons` v7.3.2](https://github.com/lipis/flag-icons/tree/v7.3.2) +so the web UI does not depend on the device's emoji font or a remote CDN. + +The artwork is distributed under the MIT License. See `LICENSE.txt` in this +directory. diff --git a/web/public/flags/ad.svg b/web/public/flags/ad.svg new file mode 100644 index 0000000..c67bcb0 --- /dev/null +++ b/web/public/flags/ad.svg @@ -0,0 +1,150 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/ae.svg b/web/public/flags/ae.svg new file mode 100644 index 0000000..651ac85 --- /dev/null +++ b/web/public/flags/ae.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/af.svg b/web/public/flags/af.svg new file mode 100644 index 0000000..f6bdcd0 --- /dev/null +++ b/web/public/flags/af.svg @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/ag.svg b/web/public/flags/ag.svg new file mode 100644 index 0000000..243c3d8 --- /dev/null +++ b/web/public/flags/ag.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/web/public/flags/ai.svg b/web/public/flags/ai.svg new file mode 100644 index 0000000..9c2ea33 --- /dev/null +++ b/web/public/flags/ai.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/al.svg b/web/public/flags/al.svg new file mode 100644 index 0000000..e85d95f --- /dev/null +++ b/web/public/flags/al.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/am.svg b/web/public/flags/am.svg new file mode 100644 index 0000000..99fa4dc --- /dev/null +++ b/web/public/flags/am.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/ao.svg b/web/public/flags/ao.svg new file mode 100644 index 0000000..b73b1ec --- /dev/null +++ b/web/public/flags/ao.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/aq.svg b/web/public/flags/aq.svg new file mode 100644 index 0000000..c7e3536 --- /dev/null +++ b/web/public/flags/aq.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/ar.svg b/web/public/flags/ar.svg new file mode 100644 index 0000000..6c5479c --- /dev/null +++ b/web/public/flags/ar.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/arab.svg b/web/public/flags/arab.svg new file mode 100644 index 0000000..6a81f34 --- /dev/null +++ b/web/public/flags/arab.svg @@ -0,0 +1,109 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/as.svg b/web/public/flags/as.svg new file mode 100644 index 0000000..3e9ca5e --- /dev/null +++ b/web/public/flags/as.svg @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/asean.svg b/web/public/flags/asean.svg new file mode 100644 index 0000000..753db85 --- /dev/null +++ b/web/public/flags/asean.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/at.svg b/web/public/flags/at.svg new file mode 100644 index 0000000..9d2775c --- /dev/null +++ b/web/public/flags/at.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/au.svg b/web/public/flags/au.svg new file mode 100644 index 0000000..96e8076 --- /dev/null +++ b/web/public/flags/au.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/web/public/flags/aw.svg b/web/public/flags/aw.svg new file mode 100644 index 0000000..413b7c4 --- /dev/null +++ b/web/public/flags/aw.svg @@ -0,0 +1,186 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/ax.svg b/web/public/flags/ax.svg new file mode 100644 index 0000000..0584d71 --- /dev/null +++ b/web/public/flags/ax.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/az.svg b/web/public/flags/az.svg new file mode 100644 index 0000000..3557522 --- /dev/null +++ b/web/public/flags/az.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/web/public/flags/ba.svg b/web/public/flags/ba.svg new file mode 100644 index 0000000..93bd9cf --- /dev/null +++ b/web/public/flags/ba.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/web/public/flags/bb.svg b/web/public/flags/bb.svg new file mode 100644 index 0000000..cecd5cc --- /dev/null +++ b/web/public/flags/bb.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/bd.svg b/web/public/flags/bd.svg new file mode 100644 index 0000000..16b794d --- /dev/null +++ b/web/public/flags/bd.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/be.svg b/web/public/flags/be.svg new file mode 100644 index 0000000..ac706a0 --- /dev/null +++ b/web/public/flags/be.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/bf.svg b/web/public/flags/bf.svg new file mode 100644 index 0000000..4713822 --- /dev/null +++ b/web/public/flags/bf.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/bg.svg b/web/public/flags/bg.svg new file mode 100644 index 0000000..af2d0d0 --- /dev/null +++ b/web/public/flags/bg.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/bh.svg b/web/public/flags/bh.svg new file mode 100644 index 0000000..7a2ea54 --- /dev/null +++ b/web/public/flags/bh.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/bi.svg b/web/public/flags/bi.svg new file mode 100644 index 0000000..a4434a9 --- /dev/null +++ b/web/public/flags/bi.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/web/public/flags/bj.svg b/web/public/flags/bj.svg new file mode 100644 index 0000000..0846724 --- /dev/null +++ b/web/public/flags/bj.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/web/public/flags/bl.svg b/web/public/flags/bl.svg new file mode 100644 index 0000000..f84cbba --- /dev/null +++ b/web/public/flags/bl.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/bm.svg b/web/public/flags/bm.svg new file mode 100644 index 0000000..53f3f03 --- /dev/null +++ b/web/public/flags/bm.svg @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/bn.svg b/web/public/flags/bn.svg new file mode 100644 index 0000000..25894f8 --- /dev/null +++ b/web/public/flags/bn.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/bo.svg b/web/public/flags/bo.svg new file mode 100644 index 0000000..bddc1e5 --- /dev/null +++ b/web/public/flags/bo.svg @@ -0,0 +1,673 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/bq.svg b/web/public/flags/bq.svg new file mode 100644 index 0000000..0e6bc76 --- /dev/null +++ b/web/public/flags/bq.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/br.svg b/web/public/flags/br.svg new file mode 100644 index 0000000..fe1d416 --- /dev/null +++ b/web/public/flags/br.svg @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/bs.svg b/web/public/flags/bs.svg new file mode 100644 index 0000000..5cc918e --- /dev/null +++ b/web/public/flags/bs.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/bt.svg b/web/public/flags/bt.svg new file mode 100644 index 0000000..20aef3a --- /dev/null +++ b/web/public/flags/bt.svg @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/bv.svg b/web/public/flags/bv.svg new file mode 100644 index 0000000..40e16d9 --- /dev/null +++ b/web/public/flags/bv.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/bw.svg b/web/public/flags/bw.svg new file mode 100644 index 0000000..3435608 --- /dev/null +++ b/web/public/flags/bw.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/by.svg b/web/public/flags/by.svg new file mode 100644 index 0000000..948784f --- /dev/null +++ b/web/public/flags/by.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/bz.svg b/web/public/flags/bz.svg new file mode 100644 index 0000000..d05a726 --- /dev/null +++ b/web/public/flags/bz.svg @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/ca.svg b/web/public/flags/ca.svg new file mode 100644 index 0000000..c9b23b4 --- /dev/null +++ b/web/public/flags/ca.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/cc.svg b/web/public/flags/cc.svg new file mode 100644 index 0000000..a42dec6 --- /dev/null +++ b/web/public/flags/cc.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/cd.svg b/web/public/flags/cd.svg new file mode 100644 index 0000000..b9cf528 --- /dev/null +++ b/web/public/flags/cd.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/cefta.svg b/web/public/flags/cefta.svg new file mode 100644 index 0000000..f748d08 --- /dev/null +++ b/web/public/flags/cefta.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/cf.svg b/web/public/flags/cf.svg new file mode 100644 index 0000000..a6cd367 --- /dev/null +++ b/web/public/flags/cf.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/web/public/flags/cg.svg b/web/public/flags/cg.svg new file mode 100644 index 0000000..f5a0e42 --- /dev/null +++ b/web/public/flags/cg.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/web/public/flags/ch.svg b/web/public/flags/ch.svg new file mode 100644 index 0000000..b42d670 --- /dev/null +++ b/web/public/flags/ch.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/web/public/flags/ci.svg b/web/public/flags/ci.svg new file mode 100644 index 0000000..e400f0c --- /dev/null +++ b/web/public/flags/ci.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/ck.svg b/web/public/flags/ck.svg new file mode 100644 index 0000000..18e547b --- /dev/null +++ b/web/public/flags/ck.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/web/public/flags/cl.svg b/web/public/flags/cl.svg new file mode 100644 index 0000000..5b3c72f --- /dev/null +++ b/web/public/flags/cl.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/cm.svg b/web/public/flags/cm.svg new file mode 100644 index 0000000..70adc8b --- /dev/null +++ b/web/public/flags/cm.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/web/public/flags/cn.svg b/web/public/flags/cn.svg new file mode 100644 index 0000000..10d3489 --- /dev/null +++ b/web/public/flags/cn.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/web/public/flags/co.svg b/web/public/flags/co.svg new file mode 100644 index 0000000..ebd0a0f --- /dev/null +++ b/web/public/flags/co.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/cp.svg b/web/public/flags/cp.svg new file mode 100644 index 0000000..b8aa9cf --- /dev/null +++ b/web/public/flags/cp.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/cr.svg b/web/public/flags/cr.svg new file mode 100644 index 0000000..5a409ee --- /dev/null +++ b/web/public/flags/cr.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/cu.svg b/web/public/flags/cu.svg new file mode 100644 index 0000000..053c9ee --- /dev/null +++ b/web/public/flags/cu.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/cv.svg b/web/public/flags/cv.svg new file mode 100644 index 0000000..aec8994 --- /dev/null +++ b/web/public/flags/cv.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/cw.svg b/web/public/flags/cw.svg new file mode 100644 index 0000000..bb0ece2 --- /dev/null +++ b/web/public/flags/cw.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/web/public/flags/cx.svg b/web/public/flags/cx.svg new file mode 100644 index 0000000..3a83c23 --- /dev/null +++ b/web/public/flags/cx.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/web/public/flags/cy.svg b/web/public/flags/cy.svg new file mode 100644 index 0000000..ee4b0c7 --- /dev/null +++ b/web/public/flags/cy.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/cz.svg b/web/public/flags/cz.svg new file mode 100644 index 0000000..7913de3 --- /dev/null +++ b/web/public/flags/cz.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/de.svg b/web/public/flags/de.svg new file mode 100644 index 0000000..71aa2d2 --- /dev/null +++ b/web/public/flags/de.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/dg.svg b/web/public/flags/dg.svg new file mode 100644 index 0000000..dfee2bb --- /dev/null +++ b/web/public/flags/dg.svg @@ -0,0 +1,130 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/dj.svg b/web/public/flags/dj.svg new file mode 100644 index 0000000..9b00a82 --- /dev/null +++ b/web/public/flags/dj.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/dk.svg b/web/public/flags/dk.svg new file mode 100644 index 0000000..563277f --- /dev/null +++ b/web/public/flags/dk.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/dm.svg b/web/public/flags/dm.svg new file mode 100644 index 0000000..5aa9cea --- /dev/null +++ b/web/public/flags/dm.svg @@ -0,0 +1,152 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/do.svg b/web/public/flags/do.svg new file mode 100644 index 0000000..b5f4c8f --- /dev/null +++ b/web/public/flags/do.svg @@ -0,0 +1,121 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/dz.svg b/web/public/flags/dz.svg new file mode 100644 index 0000000..5ff29a7 --- /dev/null +++ b/web/public/flags/dz.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/eac.svg b/web/public/flags/eac.svg new file mode 100644 index 0000000..bd26128 --- /dev/null +++ b/web/public/flags/eac.svg @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/ec.svg b/web/public/flags/ec.svg new file mode 100644 index 0000000..88c50bf --- /dev/null +++ b/web/public/flags/ec.svg @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/ee.svg b/web/public/flags/ee.svg new file mode 100644 index 0000000..8b98c2c --- /dev/null +++ b/web/public/flags/ee.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/eg.svg b/web/public/flags/eg.svg new file mode 100644 index 0000000..c1c945b --- /dev/null +++ b/web/public/flags/eg.svg @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/eh.svg b/web/public/flags/eh.svg new file mode 100644 index 0000000..6aec728 --- /dev/null +++ b/web/public/flags/eh.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/web/public/flags/er.svg b/web/public/flags/er.svg new file mode 100644 index 0000000..48a13b4 --- /dev/null +++ b/web/public/flags/er.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/web/public/flags/es-ct.svg b/web/public/flags/es-ct.svg new file mode 100644 index 0000000..4d85911 --- /dev/null +++ b/web/public/flags/es-ct.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/es-ga.svg b/web/public/flags/es-ga.svg new file mode 100644 index 0000000..6f76cfa --- /dev/null +++ b/web/public/flags/es-ga.svg @@ -0,0 +1,187 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/es-pv.svg b/web/public/flags/es-pv.svg new file mode 100644 index 0000000..63c19f4 --- /dev/null +++ b/web/public/flags/es-pv.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/es.svg b/web/public/flags/es.svg new file mode 100644 index 0000000..f1675a3 --- /dev/null +++ b/web/public/flags/es.svg @@ -0,0 +1,544 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/et.svg b/web/public/flags/et.svg new file mode 100644 index 0000000..3f99be4 --- /dev/null +++ b/web/public/flags/et.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/web/public/flags/eu.svg b/web/public/flags/eu.svg new file mode 100644 index 0000000..b0874c1 --- /dev/null +++ b/web/public/flags/eu.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/fi.svg b/web/public/flags/fi.svg new file mode 100644 index 0000000..470be2d --- /dev/null +++ b/web/public/flags/fi.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/fj.svg b/web/public/flags/fj.svg new file mode 100644 index 0000000..a342977 --- /dev/null +++ b/web/public/flags/fj.svg @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/fk.svg b/web/public/flags/fk.svg new file mode 100644 index 0000000..defaa80 --- /dev/null +++ b/web/public/flags/fk.svg @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/fm.svg b/web/public/flags/fm.svg new file mode 100644 index 0000000..c1b7c97 --- /dev/null +++ b/web/public/flags/fm.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/web/public/flags/fo.svg b/web/public/flags/fo.svg new file mode 100644 index 0000000..f802d28 --- /dev/null +++ b/web/public/flags/fo.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/web/public/flags/fr.svg b/web/public/flags/fr.svg new file mode 100644 index 0000000..4110e59 --- /dev/null +++ b/web/public/flags/fr.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/ga.svg b/web/public/flags/ga.svg new file mode 100644 index 0000000..76edab4 --- /dev/null +++ b/web/public/flags/ga.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/gb-eng.svg b/web/public/flags/gb-eng.svg new file mode 100644 index 0000000..12e3b67 --- /dev/null +++ b/web/public/flags/gb-eng.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/gb-nir.svg b/web/public/flags/gb-nir.svg new file mode 100644 index 0000000..e22190a --- /dev/null +++ b/web/public/flags/gb-nir.svg @@ -0,0 +1,132 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/gb-sct.svg b/web/public/flags/gb-sct.svg new file mode 100644 index 0000000..f50cd32 --- /dev/null +++ b/web/public/flags/gb-sct.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/gb-wls.svg b/web/public/flags/gb-wls.svg new file mode 100644 index 0000000..d7f5791 --- /dev/null +++ b/web/public/flags/gb-wls.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/web/public/flags/gb.svg b/web/public/flags/gb.svg new file mode 100644 index 0000000..7991383 --- /dev/null +++ b/web/public/flags/gb.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/gd.svg b/web/public/flags/gd.svg new file mode 100644 index 0000000..b3d250d --- /dev/null +++ b/web/public/flags/gd.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/ge.svg b/web/public/flags/ge.svg new file mode 100644 index 0000000..ab08a9a --- /dev/null +++ b/web/public/flags/ge.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/gf.svg b/web/public/flags/gf.svg new file mode 100644 index 0000000..f8fe94c --- /dev/null +++ b/web/public/flags/gf.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/gg.svg b/web/public/flags/gg.svg new file mode 100644 index 0000000..f8216c8 --- /dev/null +++ b/web/public/flags/gg.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/web/public/flags/gh.svg b/web/public/flags/gh.svg new file mode 100644 index 0000000..5c3e3e6 --- /dev/null +++ b/web/public/flags/gh.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/gi.svg b/web/public/flags/gi.svg new file mode 100644 index 0000000..a5d7570 --- /dev/null +++ b/web/public/flags/gi.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/gl.svg b/web/public/flags/gl.svg new file mode 100644 index 0000000..eb5a52e --- /dev/null +++ b/web/public/flags/gl.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/gm.svg b/web/public/flags/gm.svg new file mode 100644 index 0000000..8fe9d66 --- /dev/null +++ b/web/public/flags/gm.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/web/public/flags/gn.svg b/web/public/flags/gn.svg new file mode 100644 index 0000000..40d6ad4 --- /dev/null +++ b/web/public/flags/gn.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/gp.svg b/web/public/flags/gp.svg new file mode 100644 index 0000000..ee55c4b --- /dev/null +++ b/web/public/flags/gp.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/gq.svg b/web/public/flags/gq.svg new file mode 100644 index 0000000..64c8eb2 --- /dev/null +++ b/web/public/flags/gq.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/gr.svg b/web/public/flags/gr.svg new file mode 100644 index 0000000..599741e --- /dev/null +++ b/web/public/flags/gr.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/web/public/flags/gs.svg b/web/public/flags/gs.svg new file mode 100644 index 0000000..434e043 --- /dev/null +++ b/web/public/flags/gs.svg @@ -0,0 +1,133 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/gt.svg b/web/public/flags/gt.svg new file mode 100644 index 0000000..b48446d --- /dev/null +++ b/web/public/flags/gt.svg @@ -0,0 +1,204 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/gu.svg b/web/public/flags/gu.svg new file mode 100644 index 0000000..3b95219 --- /dev/null +++ b/web/public/flags/gu.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/gw.svg b/web/public/flags/gw.svg new file mode 100644 index 0000000..d470bac --- /dev/null +++ b/web/public/flags/gw.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/gy.svg b/web/public/flags/gy.svg new file mode 100644 index 0000000..569fb56 --- /dev/null +++ b/web/public/flags/gy.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/web/public/flags/hk.svg b/web/public/flags/hk.svg new file mode 100644 index 0000000..4fd55bc --- /dev/null +++ b/web/public/flags/hk.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/web/public/flags/hm.svg b/web/public/flags/hm.svg new file mode 100644 index 0000000..815c482 --- /dev/null +++ b/web/public/flags/hm.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/web/public/flags/hn.svg b/web/public/flags/hn.svg new file mode 100644 index 0000000..11fde67 --- /dev/null +++ b/web/public/flags/hn.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/hr.svg b/web/public/flags/hr.svg new file mode 100644 index 0000000..c25901c --- /dev/null +++ b/web/public/flags/hr.svg @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/ht.svg b/web/public/flags/ht.svg new file mode 100644 index 0000000..659b9b6 --- /dev/null +++ b/web/public/flags/ht.svg @@ -0,0 +1,116 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/hu.svg b/web/public/flags/hu.svg new file mode 100644 index 0000000..baddf7f --- /dev/null +++ b/web/public/flags/hu.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/ic.svg b/web/public/flags/ic.svg new file mode 100644 index 0000000..81e6ee2 --- /dev/null +++ b/web/public/flags/ic.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/id.svg b/web/public/flags/id.svg new file mode 100644 index 0000000..3b7c8fc --- /dev/null +++ b/web/public/flags/id.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/ie.svg b/web/public/flags/ie.svg new file mode 100644 index 0000000..049be14 --- /dev/null +++ b/web/public/flags/ie.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/il.svg b/web/public/flags/il.svg new file mode 100644 index 0000000..f43be7e --- /dev/null +++ b/web/public/flags/il.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/web/public/flags/im.svg b/web/public/flags/im.svg new file mode 100644 index 0000000..2b65aac --- /dev/null +++ b/web/public/flags/im.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/in.svg b/web/public/flags/in.svg new file mode 100644 index 0000000..bc47d74 --- /dev/null +++ b/web/public/flags/in.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/io.svg b/web/public/flags/io.svg new file mode 100644 index 0000000..3058f7d --- /dev/null +++ b/web/public/flags/io.svg @@ -0,0 +1,130 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/iq.svg b/web/public/flags/iq.svg new file mode 100644 index 0000000..8044514 --- /dev/null +++ b/web/public/flags/iq.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/web/public/flags/ir.svg b/web/public/flags/ir.svg new file mode 100644 index 0000000..8c6d516 --- /dev/null +++ b/web/public/flags/ir.svg @@ -0,0 +1,219 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/is.svg b/web/public/flags/is.svg new file mode 100644 index 0000000..a6588af --- /dev/null +++ b/web/public/flags/is.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/web/public/flags/it.svg b/web/public/flags/it.svg new file mode 100644 index 0000000..20a8bfd --- /dev/null +++ b/web/public/flags/it.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/je.svg b/web/public/flags/je.svg new file mode 100644 index 0000000..26e302c --- /dev/null +++ b/web/public/flags/je.svg @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/jm.svg b/web/public/flags/jm.svg new file mode 100644 index 0000000..269df03 --- /dev/null +++ b/web/public/flags/jm.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/web/public/flags/jo.svg b/web/public/flags/jo.svg new file mode 100644 index 0000000..d6f927d --- /dev/null +++ b/web/public/flags/jo.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/web/public/flags/jp.svg b/web/public/flags/jp.svg new file mode 100644 index 0000000..cc1c181 --- /dev/null +++ b/web/public/flags/jp.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/web/public/flags/ke.svg b/web/public/flags/ke.svg new file mode 100644 index 0000000..3a67ca3 --- /dev/null +++ b/web/public/flags/ke.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/kg.svg b/web/public/flags/kg.svg new file mode 100644 index 0000000..2e1e42e --- /dev/null +++ b/web/public/flags/kg.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/kh.svg b/web/public/flags/kh.svg new file mode 100644 index 0000000..a7d52f2 --- /dev/null +++ b/web/public/flags/kh.svg @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/ki.svg b/web/public/flags/ki.svg new file mode 100644 index 0000000..fda03f3 --- /dev/null +++ b/web/public/flags/ki.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/km.svg b/web/public/flags/km.svg new file mode 100644 index 0000000..414d65e --- /dev/null +++ b/web/public/flags/km.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/web/public/flags/kn.svg b/web/public/flags/kn.svg new file mode 100644 index 0000000..47fe64d --- /dev/null +++ b/web/public/flags/kn.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/web/public/flags/kp.svg b/web/public/flags/kp.svg new file mode 100644 index 0000000..ad1b713 --- /dev/null +++ b/web/public/flags/kp.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/web/public/flags/kr.svg b/web/public/flags/kr.svg new file mode 100644 index 0000000..6947eab --- /dev/null +++ b/web/public/flags/kr.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/kw.svg b/web/public/flags/kw.svg new file mode 100644 index 0000000..3dd89e9 --- /dev/null +++ b/web/public/flags/kw.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/ky.svg b/web/public/flags/ky.svg new file mode 100644 index 0000000..dc5d2f0 --- /dev/null +++ b/web/public/flags/ky.svg @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/kz.svg b/web/public/flags/kz.svg new file mode 100644 index 0000000..1f9758d --- /dev/null +++ b/web/public/flags/kz.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/la.svg b/web/public/flags/la.svg new file mode 100644 index 0000000..6aea6b7 --- /dev/null +++ b/web/public/flags/la.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/web/public/flags/lb.svg b/web/public/flags/lb.svg new file mode 100644 index 0000000..bde2581 --- /dev/null +++ b/web/public/flags/lb.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/web/public/flags/lc.svg b/web/public/flags/lc.svg new file mode 100644 index 0000000..bb25654 --- /dev/null +++ b/web/public/flags/lc.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/web/public/flags/li.svg b/web/public/flags/li.svg new file mode 100644 index 0000000..706ff4e --- /dev/null +++ b/web/public/flags/li.svg @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/lk.svg b/web/public/flags/lk.svg new file mode 100644 index 0000000..cbd660a --- /dev/null +++ b/web/public/flags/lk.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/lr.svg b/web/public/flags/lr.svg new file mode 100644 index 0000000..e482ab9 --- /dev/null +++ b/web/public/flags/lr.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/web/public/flags/ls.svg b/web/public/flags/ls.svg new file mode 100644 index 0000000..a7c01a9 --- /dev/null +++ b/web/public/flags/ls.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/web/public/flags/lt.svg b/web/public/flags/lt.svg new file mode 100644 index 0000000..90ec5d2 --- /dev/null +++ b/web/public/flags/lt.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/lu.svg b/web/public/flags/lu.svg new file mode 100644 index 0000000..cc12206 --- /dev/null +++ b/web/public/flags/lu.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/lv.svg b/web/public/flags/lv.svg new file mode 100644 index 0000000..6a9e75e --- /dev/null +++ b/web/public/flags/lv.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/ly.svg b/web/public/flags/ly.svg new file mode 100644 index 0000000..1eaa51e --- /dev/null +++ b/web/public/flags/ly.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/ma.svg b/web/public/flags/ma.svg new file mode 100644 index 0000000..7ce56ef --- /dev/null +++ b/web/public/flags/ma.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/mc.svg b/web/public/flags/mc.svg new file mode 100644 index 0000000..9cb6c9e --- /dev/null +++ b/web/public/flags/mc.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/md.svg b/web/public/flags/md.svg new file mode 100644 index 0000000..e9ba506 --- /dev/null +++ b/web/public/flags/md.svg @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/me.svg b/web/public/flags/me.svg new file mode 100644 index 0000000..0b0d99c --- /dev/null +++ b/web/public/flags/me.svg @@ -0,0 +1,116 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/mf.svg b/web/public/flags/mf.svg new file mode 100644 index 0000000..6305edc --- /dev/null +++ b/web/public/flags/mf.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/mg.svg b/web/public/flags/mg.svg new file mode 100644 index 0000000..5fa2d24 --- /dev/null +++ b/web/public/flags/mg.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/mh.svg b/web/public/flags/mh.svg new file mode 100644 index 0000000..7b9f490 --- /dev/null +++ b/web/public/flags/mh.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/mk.svg b/web/public/flags/mk.svg new file mode 100644 index 0000000..4f5cae7 --- /dev/null +++ b/web/public/flags/mk.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/ml.svg b/web/public/flags/ml.svg new file mode 100644 index 0000000..6f6b716 --- /dev/null +++ b/web/public/flags/ml.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/mm.svg b/web/public/flags/mm.svg new file mode 100644 index 0000000..42b4dee --- /dev/null +++ b/web/public/flags/mm.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/web/public/flags/mn.svg b/web/public/flags/mn.svg new file mode 100644 index 0000000..6a38a71 --- /dev/null +++ b/web/public/flags/mn.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/web/public/flags/mo.svg b/web/public/flags/mo.svg new file mode 100644 index 0000000..f638b6c --- /dev/null +++ b/web/public/flags/mo.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/web/public/flags/mp.svg b/web/public/flags/mp.svg new file mode 100644 index 0000000..26bfa22 --- /dev/null +++ b/web/public/flags/mp.svg @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/mq.svg b/web/public/flags/mq.svg new file mode 100644 index 0000000..b221951 --- /dev/null +++ b/web/public/flags/mq.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/mr.svg b/web/public/flags/mr.svg new file mode 100644 index 0000000..d859972 --- /dev/null +++ b/web/public/flags/mr.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/ms.svg b/web/public/flags/ms.svg new file mode 100644 index 0000000..4367505 --- /dev/null +++ b/web/public/flags/ms.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/mt.svg b/web/public/flags/mt.svg new file mode 100644 index 0000000..706c50f --- /dev/null +++ b/web/public/flags/mt.svg @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/mu.svg b/web/public/flags/mu.svg new file mode 100644 index 0000000..82d7a3b --- /dev/null +++ b/web/public/flags/mu.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/web/public/flags/mv.svg b/web/public/flags/mv.svg new file mode 100644 index 0000000..10450f9 --- /dev/null +++ b/web/public/flags/mv.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/mw.svg b/web/public/flags/mw.svg new file mode 100644 index 0000000..137ff87 --- /dev/null +++ b/web/public/flags/mw.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/web/public/flags/mx.svg b/web/public/flags/mx.svg new file mode 100644 index 0000000..5a67d62 --- /dev/null +++ b/web/public/flags/mx.svg @@ -0,0 +1,382 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/my.svg b/web/public/flags/my.svg new file mode 100644 index 0000000..115f864 --- /dev/null +++ b/web/public/flags/my.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/mz.svg b/web/public/flags/mz.svg new file mode 100644 index 0000000..d30b8a1 --- /dev/null +++ b/web/public/flags/mz.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/na.svg b/web/public/flags/na.svg new file mode 100644 index 0000000..35b9f78 --- /dev/null +++ b/web/public/flags/na.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/web/public/flags/nc.svg b/web/public/flags/nc.svg new file mode 100644 index 0000000..fa15551 --- /dev/null +++ b/web/public/flags/nc.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/ne.svg b/web/public/flags/ne.svg new file mode 100644 index 0000000..39a82b8 --- /dev/null +++ b/web/public/flags/ne.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/nf.svg b/web/public/flags/nf.svg new file mode 100644 index 0000000..fd61b25 --- /dev/null +++ b/web/public/flags/nf.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/web/public/flags/ng.svg b/web/public/flags/ng.svg new file mode 100644 index 0000000..81eb35f --- /dev/null +++ b/web/public/flags/ng.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/ni.svg b/web/public/flags/ni.svg new file mode 100644 index 0000000..dc0ccc7 --- /dev/null +++ b/web/public/flags/ni.svg @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/nl.svg b/web/public/flags/nl.svg new file mode 100644 index 0000000..e90f5b0 --- /dev/null +++ b/web/public/flags/nl.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/no.svg b/web/public/flags/no.svg new file mode 100644 index 0000000..a5f2a15 --- /dev/null +++ b/web/public/flags/no.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/np.svg b/web/public/flags/np.svg new file mode 100644 index 0000000..6242856 --- /dev/null +++ b/web/public/flags/np.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/nr.svg b/web/public/flags/nr.svg new file mode 100644 index 0000000..ff394c4 --- /dev/null +++ b/web/public/flags/nr.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/web/public/flags/nu.svg b/web/public/flags/nu.svg new file mode 100644 index 0000000..4067baf --- /dev/null +++ b/web/public/flags/nu.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/web/public/flags/nz.svg b/web/public/flags/nz.svg new file mode 100644 index 0000000..935d8a7 --- /dev/null +++ b/web/public/flags/nz.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/om.svg b/web/public/flags/om.svg new file mode 100644 index 0000000..d74303a --- /dev/null +++ b/web/public/flags/om.svg @@ -0,0 +1,115 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/pa.svg b/web/public/flags/pa.svg new file mode 100644 index 0000000..8dc03bc --- /dev/null +++ b/web/public/flags/pa.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/web/public/flags/pc.svg b/web/public/flags/pc.svg new file mode 100644 index 0000000..5202d6d --- /dev/null +++ b/web/public/flags/pc.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/pe.svg b/web/public/flags/pe.svg new file mode 100644 index 0000000..33e6cfd --- /dev/null +++ b/web/public/flags/pe.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/pf.svg b/web/public/flags/pf.svg new file mode 100644 index 0000000..bea0354 --- /dev/null +++ b/web/public/flags/pf.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/pg.svg b/web/public/flags/pg.svg new file mode 100644 index 0000000..7b7e77a --- /dev/null +++ b/web/public/flags/pg.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/web/public/flags/ph.svg b/web/public/flags/ph.svg new file mode 100644 index 0000000..b910e24 --- /dev/null +++ b/web/public/flags/ph.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/pk.svg b/web/public/flags/pk.svg new file mode 100644 index 0000000..4ddc19f --- /dev/null +++ b/web/public/flags/pk.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/web/public/flags/pl.svg b/web/public/flags/pl.svg new file mode 100644 index 0000000..0fa5145 --- /dev/null +++ b/web/public/flags/pl.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/pm.svg b/web/public/flags/pm.svg new file mode 100644 index 0000000..19a9330 --- /dev/null +++ b/web/public/flags/pm.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/pn.svg b/web/public/flags/pn.svg new file mode 100644 index 0000000..439f515 --- /dev/null +++ b/web/public/flags/pn.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/pr.svg b/web/public/flags/pr.svg new file mode 100644 index 0000000..ec51831 --- /dev/null +++ b/web/public/flags/pr.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/ps.svg b/web/public/flags/ps.svg new file mode 100644 index 0000000..b33824a --- /dev/null +++ b/web/public/flags/ps.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/web/public/flags/pt.svg b/web/public/flags/pt.svg new file mode 100644 index 0000000..6a8b6f5 --- /dev/null +++ b/web/public/flags/pt.svg @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/pw.svg b/web/public/flags/pw.svg new file mode 100644 index 0000000..9f89c5f --- /dev/null +++ b/web/public/flags/pw.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/web/public/flags/py.svg b/web/public/flags/py.svg new file mode 100644 index 0000000..0d433c8 --- /dev/null +++ b/web/public/flags/py.svg @@ -0,0 +1,157 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/qa.svg b/web/public/flags/qa.svg new file mode 100644 index 0000000..901f3fa --- /dev/null +++ b/web/public/flags/qa.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/re.svg b/web/public/flags/re.svg new file mode 100644 index 0000000..64e788e --- /dev/null +++ b/web/public/flags/re.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/ro.svg b/web/public/flags/ro.svg new file mode 100644 index 0000000..fda0f7b --- /dev/null +++ b/web/public/flags/ro.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/rs.svg b/web/public/flags/rs.svg new file mode 100644 index 0000000..82d3984 --- /dev/null +++ b/web/public/flags/rs.svg @@ -0,0 +1,292 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/ru.svg b/web/public/flags/ru.svg new file mode 100644 index 0000000..cf24301 --- /dev/null +++ b/web/public/flags/ru.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/rw.svg b/web/public/flags/rw.svg new file mode 100644 index 0000000..06e26ae --- /dev/null +++ b/web/public/flags/rw.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/sa.svg b/web/public/flags/sa.svg new file mode 100644 index 0000000..89d0cff --- /dev/null +++ b/web/public/flags/sa.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/sb.svg b/web/public/flags/sb.svg new file mode 100644 index 0000000..6066f94 --- /dev/null +++ b/web/public/flags/sb.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/sc.svg b/web/public/flags/sc.svg new file mode 100644 index 0000000..9a46b36 --- /dev/null +++ b/web/public/flags/sc.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/sd.svg b/web/public/flags/sd.svg new file mode 100644 index 0000000..12818b4 --- /dev/null +++ b/web/public/flags/sd.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/se.svg b/web/public/flags/se.svg new file mode 100644 index 0000000..8ba745a --- /dev/null +++ b/web/public/flags/se.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/sg.svg b/web/public/flags/sg.svg new file mode 100644 index 0000000..c4dd4ac --- /dev/null +++ b/web/public/flags/sg.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/sh-ac.svg b/web/public/flags/sh-ac.svg new file mode 100644 index 0000000..a79d593 --- /dev/null +++ b/web/public/flags/sh-ac.svg @@ -0,0 +1,689 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/sh-hl.svg b/web/public/flags/sh-hl.svg new file mode 100644 index 0000000..c22a72b --- /dev/null +++ b/web/public/flags/sh-hl.svg @@ -0,0 +1,164 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/sh-ta.svg b/web/public/flags/sh-ta.svg new file mode 100644 index 0000000..ca418f6 --- /dev/null +++ b/web/public/flags/sh-ta.svg @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/sh.svg b/web/public/flags/sh.svg new file mode 100644 index 0000000..7aba0ae --- /dev/null +++ b/web/public/flags/sh.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/si.svg b/web/public/flags/si.svg new file mode 100644 index 0000000..1bbdd94 --- /dev/null +++ b/web/public/flags/si.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/sj.svg b/web/public/flags/sj.svg new file mode 100644 index 0000000..bb2799c --- /dev/null +++ b/web/public/flags/sj.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/sk.svg b/web/public/flags/sk.svg new file mode 100644 index 0000000..676018e --- /dev/null +++ b/web/public/flags/sk.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/web/public/flags/sl.svg b/web/public/flags/sl.svg new file mode 100644 index 0000000..a07baf7 --- /dev/null +++ b/web/public/flags/sl.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/sm.svg b/web/public/flags/sm.svg new file mode 100644 index 0000000..e41d2f7 --- /dev/null +++ b/web/public/flags/sm.svg @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/sn.svg b/web/public/flags/sn.svg new file mode 100644 index 0000000..7c0673d --- /dev/null +++ b/web/public/flags/sn.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/web/public/flags/so.svg b/web/public/flags/so.svg new file mode 100644 index 0000000..a581ac6 --- /dev/null +++ b/web/public/flags/so.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/web/public/flags/sr.svg b/web/public/flags/sr.svg new file mode 100644 index 0000000..5e71c40 --- /dev/null +++ b/web/public/flags/sr.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/ss.svg b/web/public/flags/ss.svg new file mode 100644 index 0000000..b257aa0 --- /dev/null +++ b/web/public/flags/ss.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/web/public/flags/st.svg b/web/public/flags/st.svg new file mode 100644 index 0000000..1294bcb --- /dev/null +++ b/web/public/flags/st.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/web/public/flags/sv.svg b/web/public/flags/sv.svg new file mode 100644 index 0000000..42cea75 --- /dev/null +++ b/web/public/flags/sv.svg @@ -0,0 +1,593 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/sx.svg b/web/public/flags/sx.svg new file mode 100644 index 0000000..54b5579 --- /dev/null +++ b/web/public/flags/sx.svg @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/sy.svg b/web/public/flags/sy.svg new file mode 100644 index 0000000..97c05cf --- /dev/null +++ b/web/public/flags/sy.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/sz.svg b/web/public/flags/sz.svg new file mode 100644 index 0000000..eb538e4 --- /dev/null +++ b/web/public/flags/sz.svg @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/tc.svg b/web/public/flags/tc.svg new file mode 100644 index 0000000..1258971 --- /dev/null +++ b/web/public/flags/tc.svg @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/td.svg b/web/public/flags/td.svg new file mode 100644 index 0000000..fa3bd92 --- /dev/null +++ b/web/public/flags/td.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/tf.svg b/web/public/flags/tf.svg new file mode 100644 index 0000000..fba2335 --- /dev/null +++ b/web/public/flags/tf.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/web/public/flags/tg.svg b/web/public/flags/tg.svg new file mode 100644 index 0000000..9d6ea6c --- /dev/null +++ b/web/public/flags/tg.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/web/public/flags/th.svg b/web/public/flags/th.svg new file mode 100644 index 0000000..1e93a61 --- /dev/null +++ b/web/public/flags/th.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/tj.svg b/web/public/flags/tj.svg new file mode 100644 index 0000000..f8c9a03 --- /dev/null +++ b/web/public/flags/tj.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/tk.svg b/web/public/flags/tk.svg new file mode 100644 index 0000000..05d3e86 --- /dev/null +++ b/web/public/flags/tk.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/tl.svg b/web/public/flags/tl.svg new file mode 100644 index 0000000..3d0701a --- /dev/null +++ b/web/public/flags/tl.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/tm.svg b/web/public/flags/tm.svg new file mode 100644 index 0000000..4154ed7 --- /dev/null +++ b/web/public/flags/tm.svg @@ -0,0 +1,204 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/tn.svg b/web/public/flags/tn.svg new file mode 100644 index 0000000..5735c19 --- /dev/null +++ b/web/public/flags/tn.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/to.svg b/web/public/flags/to.svg new file mode 100644 index 0000000..d072337 --- /dev/null +++ b/web/public/flags/to.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/web/public/flags/tr.svg b/web/public/flags/tr.svg new file mode 100644 index 0000000..b96da21 --- /dev/null +++ b/web/public/flags/tr.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/web/public/flags/tt.svg b/web/public/flags/tt.svg new file mode 100644 index 0000000..bc24938 --- /dev/null +++ b/web/public/flags/tt.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/tv.svg b/web/public/flags/tv.svg new file mode 100644 index 0000000..675210e --- /dev/null +++ b/web/public/flags/tv.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/web/public/flags/tw.svg b/web/public/flags/tw.svg new file mode 100644 index 0000000..57fd98b --- /dev/null +++ b/web/public/flags/tw.svg @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/tz.svg b/web/public/flags/tz.svg new file mode 100644 index 0000000..a2cfbca --- /dev/null +++ b/web/public/flags/tz.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/web/public/flags/ua.svg b/web/public/flags/ua.svg new file mode 100644 index 0000000..a339eb1 --- /dev/null +++ b/web/public/flags/ua.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/public/flags/ug.svg b/web/public/flags/ug.svg new file mode 100644 index 0000000..520eee5 --- /dev/null +++ b/web/public/flags/ug.svg @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/um.svg b/web/public/flags/um.svg new file mode 100644 index 0000000..9e9edda --- /dev/null +++ b/web/public/flags/um.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/web/public/flags/un.svg b/web/public/flags/un.svg new file mode 100644 index 0000000..5610bff --- /dev/null +++ b/web/public/flags/un.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/web/public/flags/us.svg b/web/public/flags/us.svg new file mode 100644 index 0000000..9cfd0c9 --- /dev/null +++ b/web/public/flags/us.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/web/public/flags/uy.svg b/web/public/flags/uy.svg new file mode 100644 index 0000000..62c36f8 --- /dev/null +++ b/web/public/flags/uy.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/uz.svg b/web/public/flags/uz.svg new file mode 100644 index 0000000..0ccca1b --- /dev/null +++ b/web/public/flags/uz.svg @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/va.svg b/web/public/flags/va.svg new file mode 100644 index 0000000..2080b51 --- /dev/null +++ b/web/public/flags/va.svg @@ -0,0 +1,190 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/vc.svg b/web/public/flags/vc.svg new file mode 100644 index 0000000..f26c2d8 --- /dev/null +++ b/web/public/flags/vc.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/web/public/flags/ve.svg b/web/public/flags/ve.svg new file mode 100644 index 0000000..314e7f5 --- /dev/null +++ b/web/public/flags/ve.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/vg.svg b/web/public/flags/vg.svg new file mode 100644 index 0000000..db0d9ac --- /dev/null +++ b/web/public/flags/vg.svg @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/vi.svg b/web/public/flags/vi.svg new file mode 100644 index 0000000..d88d68f --- /dev/null +++ b/web/public/flags/vi.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/vn.svg b/web/public/flags/vn.svg new file mode 100644 index 0000000..7e4bac8 --- /dev/null +++ b/web/public/flags/vn.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/web/public/flags/vu.svg b/web/public/flags/vu.svg new file mode 100644 index 0000000..326d29e --- /dev/null +++ b/web/public/flags/vu.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/wf.svg b/web/public/flags/wf.svg new file mode 100644 index 0000000..054c57d --- /dev/null +++ b/web/public/flags/wf.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/ws.svg b/web/public/flags/ws.svg new file mode 100644 index 0000000..0e758a7 --- /dev/null +++ b/web/public/flags/ws.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/xk.svg b/web/public/flags/xk.svg new file mode 100644 index 0000000..93bea81 --- /dev/null +++ b/web/public/flags/xk.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/xx.svg b/web/public/flags/xx.svg new file mode 100644 index 0000000..9333be3 --- /dev/null +++ b/web/public/flags/xx.svg @@ -0,0 +1,4 @@ + + + + diff --git a/web/public/flags/ye.svg b/web/public/flags/ye.svg new file mode 100644 index 0000000..1c9e6d6 --- /dev/null +++ b/web/public/flags/ye.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/web/public/flags/yt.svg b/web/public/flags/yt.svg new file mode 100644 index 0000000..e7776b3 --- /dev/null +++ b/web/public/flags/yt.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/web/public/flags/za.svg b/web/public/flags/za.svg new file mode 100644 index 0000000..d563adb --- /dev/null +++ b/web/public/flags/za.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/zm.svg b/web/public/flags/zm.svg new file mode 100644 index 0000000..360f37a --- /dev/null +++ b/web/public/flags/zm.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/flags/zw.svg b/web/public/flags/zw.svg new file mode 100644 index 0000000..fa49455 --- /dev/null +++ b/web/public/flags/zw.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/web/src/components/CountryFlag.tsx b/web/src/components/CountryFlag.tsx new file mode 100644 index 0000000..61a786f --- /dev/null +++ b/web/src/components/CountryFlag.tsx @@ -0,0 +1,42 @@ +import { cx } from "../lib/utils"; + +export interface CountryFlagProps { + countryCode?: string; + className?: string; +} + +const FLAG_CODE_ALIASES: Record = { + // The offline carrier table still contains the retired Netherlands Antilles + // code for Curacao networks. flag-icons follows the current ISO list. + an: "cw", +}; + +function normalizedCountryCode(countryCode?: string): string { + const code = String(countryCode ?? "").trim().toLowerCase(); + if (!/^[a-z]{2}$/.test(code)) return ""; + return FLAG_CODE_ALIASES[code] ?? code; +} + +// Render a bundled SVG instead of a flag emoji. Some platforms display the +// regional-indicator characters behind flag emoji as a plain country code. +export function CountryFlag({ countryCode, className }: CountryFlagProps) { + const code = normalizedCountryCode(countryCode); + if (!code) return null; + + return ( + { + event.currentTarget.hidden = true; + }} + /> + ); +} diff --git a/web/src/components/devices/CandidateRow.tsx b/web/src/components/devices/CandidateRow.tsx index 0a84c4d..0ef2599 100644 --- a/web/src/components/devices/CandidateRow.tsx +++ b/web/src/components/devices/CandidateRow.tsx @@ -1,7 +1,7 @@ import { Button } from "../ui"; import type { OperatorCandidate } from "./types"; import { useI18n } from "../../lib/i18n"; -import { flagEmoji } from "../../lib/carrier"; +import { CountryFlag } from "../CountryFlag"; function ratsText(c: OperatorCandidate): string { const list = (c.rats || []).filter(Boolean) as string[]; @@ -21,7 +21,7 @@ export function CandidateRow({ candidate, onLock }: { candidate: OperatorCandida >
- {c.countryCode ? : null} + {c.operatorName || c.shortName || t("未知网络")}{" "} {c.status === "current" ? ( diff --git a/web/src/components/devices/FieldRow.tsx b/web/src/components/devices/FieldRow.tsx index 0aaf303..f927ce5 100644 --- a/web/src/components/devices/FieldRow.tsx +++ b/web/src/components/devices/FieldRow.tsx @@ -6,6 +6,7 @@ import { useI18n } from "../../lib/i18n"; export interface FieldRowProps { label: ReactNode; value?: unknown; + prefix?: ReactNode; copyable?: boolean; monospace?: boolean; placeholder?: string; @@ -13,7 +14,7 @@ export interface FieldRowProps { } // Label/value row used across the overview tab. Click to copy when copyable. -export function FieldRow({ label, value, copyable, monospace, placeholder, sensitive }: FieldRowProps) { +export function FieldRow({ label, value, prefix, copyable, monospace, placeholder, sensitive }: FieldRowProps) { const { t } = useI18n(); const display = (value == null ? "" : String(value)).trim() || placeholder || "--"; const canCopy = !!copyable && !!display && display !== "--" && display !== "---"; @@ -28,7 +29,7 @@ export function FieldRow({ label, value, copyable, monospace, placeholder, sensi {label} - {display} + {prefix} + {display}
); diff --git a/web/src/components/devices/OverviewNetworkCard.tsx b/web/src/components/devices/OverviewNetworkCard.tsx index 5be425a..441744b 100644 --- a/web/src/components/devices/OverviewNetworkCard.tsx +++ b/web/src/components/devices/OverviewNetworkCard.tsx @@ -5,7 +5,7 @@ import { FieldRow } from "./FieldRow"; import { isDeviceOnline, isRegistered, isRecoveringPhase, lifecycleLabel, signalLevel, signalTone } from "./shared"; import type { DeviceDetail } from "./types"; import { useI18n } from "../../lib/i18n"; -import { flagEmoji } from "../../lib/carrier"; +import { CountryFlag } from "../CountryFlag"; const BAR_HEIGHTS = ["h-[28%]", "h-[46%]", "h-[64%]", "h-[82%]", "h-full"]; const TEXT_TONE = { @@ -81,11 +81,12 @@ export function OverviewNetworkCard({ device, onOpenOperatorSelection }: { devic > {vowifiRegistered ? ( <>{t("WiFi Calling 已注册")} - ) : registered ? ( - <> - {modem?.operatorCountryCode ? `${flagEmoji(modem.operatorCountryCode)} ` : ""}{modem?.operator || "--"}{" "} + ) : registered ? ( + + + {modem?.operator || "--"}{" "} {modem?.networkMode ? · {netMode} : null} - + ) : ( statusText )} diff --git a/web/src/components/devices/OverviewNetworkPanel.tsx b/web/src/components/devices/OverviewNetworkPanel.tsx index cb2625a..0c3e822 100644 --- a/web/src/components/devices/OverviewNetworkPanel.tsx +++ b/web/src/components/devices/OverviewNetworkPanel.tsx @@ -4,7 +4,7 @@ import type { DeviceDetail } from "./types"; import { useI18n } from "../../lib/i18n"; import { api, apiMessage } from "../../api"; import { Button, message } from "../ui"; -import { flagEmoji } from "../../lib/carrier"; +import { CountryFlag } from "../CountryFlag"; interface PublicIPInfo { detected?: boolean; @@ -95,7 +95,11 @@ export function OverviewNetworkPanel({ device, trafficMinuteRx, trafficMinuteTx,
- + : null} + /> {off ? (
{t("数据未开启")}
) : ( diff --git a/web/src/components/devices/OverviewSimPanel.tsx b/web/src/components/devices/OverviewSimPanel.tsx index bfec14a..2b03657 100644 --- a/web/src/components/devices/OverviewSimPanel.tsx +++ b/web/src/components/devices/OverviewSimPanel.tsx @@ -4,7 +4,8 @@ import { FieldRow } from "./FieldRow"; import { useShowSensitive } from "./shared"; import type { DeviceDetail } from "./types"; import { useI18n } from "../../lib/i18n"; -import { carrierBrandIso, flagEmoji } from "../../lib/carrier"; +import { carrierBrandIso } from "../../lib/carrier"; +import { CountryFlag } from "../CountryFlag"; export interface OverviewSimPanelProps { device: DeviceDetail; @@ -20,9 +21,7 @@ export function OverviewSimPanel({ device, simOperatorDisplay, e911Starting, onS const sensitive = !showSensitive; const activeEsim = (device.activeEsimProfileName || "").trim(); const flightOn = device.vowifiActive || modem?.operatingMode === 0 || modem?.operatingMode === 4; - const carrierFlag = flagEmoji(carrierBrandIso(modem?.nativeSpn, modem?.imsi)); - const operatorValue = - carrierFlag && simOperatorDisplay !== "--" ? `${carrierFlag} ${simOperatorDisplay}` : simOperatorDisplay; + const carrierCountryCode = carrierBrandIso(modem?.nativeSpn, modem?.imsi); const backendLabel = device.backendMode === "qmi" ? "QMI" : device.backendMode === "mbim" ? "MBIM" : device.backendMode === "at" ? "AT" : "Auto"; @@ -51,7 +50,12 @@ export function OverviewSimPanel({ device, simOperatorDisplay, e911Starting, onS ) : null} {activeEsim ? : null} - + : null} + copyable + />
{t("飞行模式")} diff --git a/web/src/lib/carrier.ts b/web/src/lib/carrier.ts index 8701d06..ceb3e80 100644 --- a/web/src/lib/carrier.ts +++ b/web/src/lib/carrier.ts @@ -57,13 +57,3 @@ export function carrierBrandIso(spn?: string, imsi?: string): string { if (brand.includes("lebara") && digits.startsWith("20404")) return "gb"; return carrierIso(imsi); } - -// flagEmoji converts an alpha-2 country code to its regional-indicator flag emoji. -export function flagEmoji(iso?: string): string { - const s = String(iso ?? "").trim().toUpperCase(); - if (s.length !== 2) return ""; - const a = s.charCodeAt(0); - const b = s.charCodeAt(1); - if (a < 65 || a > 90 || b < 65 || b > 90) return ""; - return String.fromCodePoint(0x1f1e6 + (a - 65)) + String.fromCodePoint(0x1f1e6 + (b - 65)); -}