From 68da44633de16704489bf557f3f06879b62e153a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Kuna?= <1282324+codecalm@users.noreply.github.com> Date: Mon, 19 Oct 2026 21:33:24 +0200 Subject: [PATCH] Import the flags from Tabler Flags (#3334) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .build/import-flags.ts | 147 ++ .changeset/import-tabler-flags.md | 7 + .github/release-notes/1.7.0-flags-dark.png | Bin 0 -> 16449 bytes .github/release-notes/1.7.0-flags.png | Bin 0 -> 30962 bytes core/img/flags/abkhazia.svg | 1 + core/img/flags/ad.svg | 2 +- core/img/flags/ae.svg | 2 +- core/img/flags/af.svg | 2 +- core/img/flags/african-union.svg | 1 + core/img/flags/afrun.svg | 2 +- core/img/flags/ag.svg | 2 +- core/img/flags/ai.svg | 2 +- core/img/flags/al.svg | 2 +- core/img/flags/am.svg | 2 +- core/img/flags/ao.svg | 2 +- core/img/flags/aq.svg | 2 +- core/img/flags/ar.svg | 2 +- core/img/flags/arab-league.svg | 1 + core/img/flags/as.svg | 2 +- core/img/flags/asean.svg | 1 + core/img/flags/at.svg | 2 +- core/img/flags/au.svg | 2 +- core/img/flags/aw.svg | 2 +- core/img/flags/ax.svg | 2 +- core/img/flags/az.svg | 2 +- core/img/flags/ba.svg | 2 +- core/img/flags/bb.svg | 2 +- core/img/flags/bd.svg | 2 +- core/img/flags/be.svg | 2 +- core/img/flags/bf.svg | 2 +- core/img/flags/bg.svg | 2 +- core/img/flags/bh.svg | 2 +- core/img/flags/bi.svg | 2 +- core/img/flags/bj.svg | 2 +- core/img/flags/bl.svg | 2 +- core/img/flags/bm.svg | 2 +- core/img/flags/bn.svg | 2 +- core/img/flags/bo.svg | 2 +- core/img/flags/bq-bo.svg | 2 +- core/img/flags/bq-sa.svg | 2 +- core/img/flags/bq-se.svg | 2 +- core/img/flags/bq.svg | 1 + core/img/flags/bq1.svg | 1 + core/img/flags/bq2.svg | 1 + core/img/flags/bq3.svg | 1 + core/img/flags/br.svg | 2 +- core/img/flags/bs.svg | 2 +- core/img/flags/bt.svg | 2 +- core/img/flags/bv.svg | 2 +- core/img/flags/bw.svg | 2 +- core/img/flags/by.svg | 2 +- core/img/flags/bz.svg | 2 +- core/img/flags/ca.svg | 2 +- core/img/flags/cabinda.svg | 1 + core/img/flags/cc.svg | 2 +- core/img/flags/cd.svg | 2 +- core/img/flags/cefta.svg | 1 + core/img/flags/cf.svg | 2 +- core/img/flags/cg.svg | 2 +- core/img/flags/ch.svg | 2 +- core/img/flags/chechnya.svg | 1 + core/img/flags/chequered.svg | 1 + core/img/flags/ci.svg | 2 +- core/img/flags/ck.svg | 2 +- core/img/flags/cl.svg | 2 +- core/img/flags/cm.svg | 2 +- core/img/flags/cn.svg | 2 +- core/img/flags/co.svg | 2 +- .../commonwealth-of-independent-states.svg | 1 + core/img/flags/commonwealth-of-nations.svg | 1 + core/img/flags/cr.svg | 2 +- core/img/flags/cu.svg | 2 +- core/img/flags/cv.svg | 2 +- core/img/flags/cw.svg | 2 +- core/img/flags/cx.svg | 2 +- core/img/flags/cy.svg | 2 +- core/img/flags/cz.svg | 2 +- core/img/flags/de.svg | 2 +- core/img/flags/dg.svg | 1 + core/img/flags/diver-down.svg | 1 + core/img/flags/dj.svg | 2 +- core/img/flags/dk.svg | 2 +- core/img/flags/dm.svg | 2 +- core/img/flags/do.svg | 2 +- core/img/flags/dz.svg | 2 +- core/img/flags/eac.svg | 1 + core/img/flags/ec.svg | 2 +- core/img/flags/ee.svg | 2 +- core/img/flags/eg.svg | 2 +- core/img/flags/eh.svg | 2 +- core/img/flags/er.svg | 2 +- core/img/flags/es-ct.svg | 1 + core/img/flags/es-ga.svg | 1 + core/img/flags/es-pv.svg | 1 + core/img/flags/es.svg | 2 +- core/img/flags/et.svg | 2 +- core/img/flags/eu.svg | 2 +- core/img/flags/fi.svg | 2 +- core/img/flags/fj.svg | 2 +- core/img/flags/fk.svg | 2 +- core/img/flags/fm.svg | 2 +- core/img/flags/fo.svg | 2 +- core/img/flags/fr.svg | 2 +- core/img/flags/ga.svg | 2 +- core/img/flags/gb-eng.svg | 2 +- core/img/flags/gb-nir.svg | 2 +- core/img/flags/gb-sct.svg | 2 +- core/img/flags/gb-wls.svg | 2 +- core/img/flags/gb.svg | 2 +- core/img/flags/gd.svg | 2 +- core/img/flags/ge.svg | 2 +- core/img/flags/gf.svg | 2 +- core/img/flags/gg.svg | 2 +- core/img/flags/gh.svg | 2 +- core/img/flags/gi.svg | 2 +- core/img/flags/gl.svg | 2 +- core/img/flags/gm.svg | 2 +- core/img/flags/gn.svg | 2 +- core/img/flags/gp.svg | 2 +- core/img/flags/gq.svg | 2 +- core/img/flags/gr.svg | 2 +- core/img/flags/gs.svg | 2 +- core/img/flags/gt.svg | 2 +- core/img/flags/gu.svg | 2 +- core/img/flags/gw.svg | 2 +- core/img/flags/gy.svg | 2 +- core/img/flags/hk.svg | 2 +- core/img/flags/hm.svg | 2 +- core/img/flags/hn.svg | 2 +- core/img/flags/hr.svg | 2 +- core/img/flags/ht.svg | 2 +- core/img/flags/hu.svg | 2 +- core/img/flags/ic.svg | 1 + core/img/flags/id.svg | 2 +- core/img/flags/ie.svg | 2 +- core/img/flags/il.svg | 2 +- core/img/flags/im.svg | 2 +- core/img/flags/in.svg | 2 +- core/img/flags/io.svg | 2 +- core/img/flags/iq.svg | 2 +- core/img/flags/ir.svg | 2 +- core/img/flags/is.svg | 2 +- core/img/flags/it.svg | 2 +- core/img/flags/je.svg | 2 +- core/img/flags/jm.svg | 2 +- core/img/flags/jo.svg | 2 +- core/img/flags/jp.svg | 2 +- core/img/flags/jubaland.svg | 1 + core/img/flags/ke.svg | 2 +- core/img/flags/kg.svg | 2 +- core/img/flags/kh.svg | 2 +- core/img/flags/ki.svg | 2 +- core/img/flags/km.svg | 2 +- core/img/flags/kn-sk.svg | 2 +- core/img/flags/kn.svg | 2 +- core/img/flags/kp.svg | 2 +- core/img/flags/kr.svg | 2 +- core/img/flags/kurdistan.svg | 1 + core/img/flags/kw.svg | 2 +- core/img/flags/ky.svg | 2 +- core/img/flags/kz.svg | 2 +- core/img/flags/la.svg | 2 +- core/img/flags/lb.svg | 2 +- core/img/flags/lc.svg | 2 +- core/img/flags/li.svg | 2 +- core/img/flags/lk.svg | 2 +- core/img/flags/lr.svg | 2 +- core/img/flags/ls.svg | 2 +- core/img/flags/lt.svg | 2 +- core/img/flags/lu.svg | 2 +- core/img/flags/lv.svg | 2 +- core/img/flags/ly.svg | 2 +- core/img/flags/ma.svg | 2 +- core/img/flags/maltese-cross.svg | 1 + core/img/flags/mc.svg | 2 +- core/img/flags/md.svg | 2 +- core/img/flags/me.svg | 2 +- core/img/flags/mercosur.svg | 1 + core/img/flags/mf.svg | 2 +- core/img/flags/mg.svg | 2 +- core/img/flags/mh.svg | 2 +- core/img/flags/mk.svg | 2 +- core/img/flags/ml.svg | 2 +- core/img/flags/mm.svg | 2 +- core/img/flags/mn.svg | 2 +- core/img/flags/mo.svg | 2 +- core/img/flags/mp.svg | 2 +- core/img/flags/mq.svg | 2 +- core/img/flags/mr.svg | 2 +- core/img/flags/ms.svg | 2 +- core/img/flags/mt.svg | 2 +- core/img/flags/mu.svg | 2 +- core/img/flags/mv.svg | 2 +- core/img/flags/mw.svg | 2 +- core/img/flags/mx.svg | 2 +- core/img/flags/my.svg | 2 +- core/img/flags/mz.svg | 2 +- core/img/flags/na.svg | 2 +- core/img/flags/nato.svg | 1 + core/img/flags/nc.svg | 2 +- core/img/flags/ne.svg | 2 +- core/img/flags/nf.svg | 2 +- core/img/flags/ng.svg | 2 +- core/img/flags/ni.svg | 2 +- core/img/flags/nl.svg | 2 +- core/img/flags/no.svg | 2 +- core/img/flags/nordic-council.svg | 1 + core/img/flags/northern-cyprus.svg | 1 + core/img/flags/np.svg | 2 +- core/img/flags/nr.svg | 2 +- core/img/flags/nu.svg | 2 +- core/img/flags/nz.svg | 2 +- core/img/flags/olympic.svg | 1 + core/img/flags/om.svg | 2 +- core/img/flags/pa.svg | 2 +- core/img/flags/paneuropean-union.svg | 1 + core/img/flags/paraolympic.svg | 1 + core/img/flags/pc.svg | 1 + core/img/flags/pe.svg | 2 +- core/img/flags/pf.svg | 2 +- core/img/flags/pg.svg | 2 +- core/img/flags/ph.svg | 2 +- core/img/flags/pirate.svg | 1 + core/img/flags/pk.svg | 2 +- core/img/flags/pl.svg | 2 +- core/img/flags/pm.svg | 2 +- core/img/flags/pn.svg | 2 +- core/img/flags/pr.svg | 2 +- core/img/flags/ps.svg | 2 +- core/img/flags/pt.svg | 2 +- core/img/flags/pw.svg | 2 +- core/img/flags/py.svg | 2 +- core/img/flags/qa.svg | 2 +- core/img/flags/rainbow.svg | 2 +- core/img/flags/re.svg | 2 +- core/img/flags/red-crescent.svg | 1 + core/img/flags/red-cross.svg | 1 + core/img/flags/ro.svg | 2 +- core/img/flags/rs.svg | 2 +- core/img/flags/ru.svg | 2 +- core/img/flags/rw.svg | 2 +- core/img/flags/sa.svg | 2 +- core/img/flags/sb.svg | 2 +- core/img/flags/sc.svg | 2 +- core/img/flags/sd.svg | 2 +- core/img/flags/se.svg | 2 +- core/img/flags/sealand.svg | 1 + core/img/flags/semaphore-signal.svg | 1 + core/img/flags/sg.svg | 2 +- core/img/flags/sh-ac.svg | 1 + core/img/flags/sh-hl.svg | 1 + core/img/flags/sh-ta.svg | 1 + core/img/flags/sh.svg | 2 +- core/img/flags/si.svg | 2 +- core/img/flags/sj.svg | 2 +- core/img/flags/sk.svg | 2 +- core/img/flags/sl.svg | 2 +- core/img/flags/sm.svg | 2 +- core/img/flags/sn.svg | 2 +- core/img/flags/so.svg | 2 +- core/img/flags/somaliland.svg | 1 + core/img/flags/south-american-union.svg | 1 + core/img/flags/south-ossetia.svg | 1 + core/img/flags/sr.svg | 2 +- core/img/flags/ss.svg | 2 +- core/img/flags/st.svg | 2 +- core/img/flags/sv.svg | 2 +- core/img/flags/sx.svg | 2 +- core/img/flags/sy.svg | 2 +- core/img/flags/sz.svg | 2 +- core/img/flags/tatarstan.svg | 1 + core/img/flags/tc.svg | 2 +- core/img/flags/td.svg | 2 +- core/img/flags/tf.svg | 2 +- core/img/flags/tg.svg | 2 +- core/img/flags/th.svg | 2 +- core/img/flags/tibet.svg | 1 + core/img/flags/tj.svg | 2 +- core/img/flags/tk.svg | 2 +- core/img/flags/tl.svg | 2 +- core/img/flags/tm.svg | 2 +- core/img/flags/tn.svg | 2 +- core/img/flags/to.svg | 2 +- core/img/flags/tr.svg | 2 +- core/img/flags/transnistria.svg | 1 + core/img/flags/tt.svg | 2 +- core/img/flags/turkic-states.svg | 1 + core/img/flags/tv.svg | 2 +- core/img/flags/tw.svg | 2 +- core/img/flags/tz.svg | 2 +- core/img/flags/ua.svg | 2 +- core/img/flags/ug.svg | 2 +- core/img/flags/um.svg | 2 +- core/img/flags/un.svg | 1 + core/img/flags/unasur.svg | 2 +- core/img/flags/unknown.svg | 1 + core/img/flags/us.svg | 2 +- core/img/flags/uy.svg | 2 +- core/img/flags/uz.svg | 2 +- core/img/flags/va.svg | 2 +- core/img/flags/vc.svg | 2 +- core/img/flags/ve.svg | 2 +- core/img/flags/vg.svg | 2 +- core/img/flags/vi.svg | 2 +- core/img/flags/vn.svg | 2 +- core/img/flags/vu.svg | 2 +- core/img/flags/wf.svg | 2 +- core/img/flags/ws.svg | 2 +- core/img/flags/xk.svg | 1 + core/img/flags/ye.svg | 2 +- core/img/flags/yt.svg | 2 +- core/img/flags/za.svg | 2 +- core/img/flags/zm.svg | 2 +- core/img/flags/zw.svg | 2 +- core/package.json | 4 +- core/scss/_variables-deprecated.scss | 11 + core/scss/_variables.scss | 63 +- core/scss/ui/_flags.scss | 12 +- docs/components/Flags.astro | 79 +- docs/content/ui/plugins/flags.mdx | 10 +- package.json | 1 + preview/pages/flags.astro | 48 +- screenshots/pages/flags-list.astro | 5 +- shared/data/flags.json | 2308 ++++++++++------- shared/lib/tokens.ts | 63 +- 325 files changed, 2094 insertions(+), 1234 deletions(-) create mode 100644 .build/import-flags.ts create mode 100644 .changeset/import-tabler-flags.md create mode 100644 .github/release-notes/1.7.0-flags-dark.png create mode 100644 .github/release-notes/1.7.0-flags.png create mode 100644 core/img/flags/abkhazia.svg create mode 100644 core/img/flags/african-union.svg create mode 100644 core/img/flags/arab-league.svg create mode 100644 core/img/flags/asean.svg create mode 100644 core/img/flags/bq.svg create mode 100644 core/img/flags/bq1.svg create mode 100644 core/img/flags/bq2.svg create mode 100644 core/img/flags/bq3.svg create mode 100644 core/img/flags/cabinda.svg create mode 100644 core/img/flags/cefta.svg create mode 100644 core/img/flags/chechnya.svg create mode 100644 core/img/flags/chequered.svg create mode 100644 core/img/flags/commonwealth-of-independent-states.svg create mode 100644 core/img/flags/commonwealth-of-nations.svg create mode 100644 core/img/flags/dg.svg create mode 100644 core/img/flags/diver-down.svg create mode 100644 core/img/flags/eac.svg create mode 100644 core/img/flags/es-ct.svg create mode 100644 core/img/flags/es-ga.svg create mode 100644 core/img/flags/es-pv.svg create mode 100644 core/img/flags/ic.svg create mode 100644 core/img/flags/jubaland.svg create mode 100644 core/img/flags/kurdistan.svg create mode 100644 core/img/flags/maltese-cross.svg create mode 100644 core/img/flags/mercosur.svg create mode 100644 core/img/flags/nato.svg create mode 100644 core/img/flags/nordic-council.svg create mode 100644 core/img/flags/northern-cyprus.svg create mode 100644 core/img/flags/olympic.svg create mode 100644 core/img/flags/paneuropean-union.svg create mode 100644 core/img/flags/paraolympic.svg create mode 100644 core/img/flags/pc.svg create mode 100644 core/img/flags/pirate.svg create mode 100644 core/img/flags/red-crescent.svg create mode 100644 core/img/flags/red-cross.svg create mode 100644 core/img/flags/sealand.svg create mode 100644 core/img/flags/semaphore-signal.svg create mode 100644 core/img/flags/sh-ac.svg create mode 100644 core/img/flags/sh-hl.svg create mode 100644 core/img/flags/sh-ta.svg create mode 100644 core/img/flags/somaliland.svg create mode 100644 core/img/flags/south-american-union.svg create mode 100644 core/img/flags/south-ossetia.svg create mode 100644 core/img/flags/tatarstan.svg create mode 100644 core/img/flags/tibet.svg create mode 100644 core/img/flags/transnistria.svg create mode 100644 core/img/flags/turkic-states.svg create mode 100644 core/img/flags/un.svg create mode 100644 core/img/flags/unknown.svg create mode 100644 core/img/flags/xk.svg diff --git a/.build/import-flags.ts b/.build/import-flags.ts new file mode 100644 index 000000000..cd95b21e2 --- /dev/null +++ b/.build/import-flags.ts @@ -0,0 +1,147 @@ +#!/usr/bin/env node +// Imports the flags from the tabler/tabler-flags repo: the source SVGs (plain +// variant, minified with svgo), the $flag-countries list and the demo data. +// +// A flag is keyed by its ISO code in lower case (`pl`, `sh-ac`) and, when it +// has none, by its slug (`african-union`). Aliases in flags.json (Svalbard +// flies the Norwegian flag) get a copy of the artwork under their own code. +// +// Run: pnpm run import:flags +// Then: pnpm run generate:tokens — refreshes FlagCountry in shared/lib/tokens.ts +import { execFileSync } from 'node:child_process' +import { copyFileSync, existsSync, mkdirSync, mkdtempSync, readdirSync, readFileSync, rmSync, writeFileSync } from 'node:fs' +import { tmpdir } from 'node:os' +import { join, dirname, relative } from 'node:path' +import { fileURLToPath } from 'node:url' +import { optimizeSvgDir } from './optimize-svg.js' + +const __dirname = dirname(fileURLToPath(import.meta.url)) +const repoRoot = join(__dirname, '..') +const imgDir = join(repoRoot, 'core', 'img', 'flags') +const scssFile = join(repoRoot, 'core', 'scss', '_variables.scss') +const deprecatedScssFile = join(repoRoot, 'core', 'scss', '_variables-deprecated.scss') +const dataFile = join(repoRoot, 'shared', 'data', 'flags.json') + +type FlagMeta = { name: string; category: string; iso?: string; alias?: string } +type Flag = { code: string; slug: string; name: string; category: string; iso: string | null } + +let cloneDir: string | undefined + +// In a git worktree the main checkout lives elsewhere, so also look next to it. +function mainCheckoutRoot(): string | undefined { + try { + const gitDir = execFileSync('git', ['rev-parse', '--path-format=absolute', '--git-common-dir'], { cwd: repoRoot, encoding: 'utf8' }).trim() + return dirname(gitDir) + } catch { + return undefined + } +} + +function resolveSourceDir(): string { + const mainRoot = mainCheckoutRoot() + const candidates = [process.env.TABLER_FLAGS_DIR, join(repoRoot, '..', 'tabler-flags'), mainRoot && join(mainRoot, '..', 'tabler-flags')].filter((dir): dir is string => Boolean(dir)) + for (const dir of candidates) { + if (existsSync(join(dir, 'src')) && existsSync(join(dir, 'flags.json'))) return dir + } + cloneDir = mkdtempSync(join(tmpdir(), 'tabler-flags-')) + console.log('No local checkout found, cloning tabler/tabler-flags…') + execFileSync('git', ['clone', '--depth', '1', 'https://github.com/tabler/tabler-flags.git', cloneDir], { stdio: 'inherit' }) + return cloneDir +} + +const svgNames = (dir: string) => + readdirSync(dir) + .filter((file) => file.endsWith('.svg')) + .sort() + .map((file) => file.slice(0, -'.svg'.length)) + +// Reads the `$name: (` … `);` map or list in a Sass file and returns its entries. +function readSassEntries(scss: string, name: string, file: string): string[] { + const pattern = new RegExp(`\\$${name}: \\(\\n([\\s\\S]*?)\\n\\)( !default)?;`) + const match = scss.match(pattern) + if (!match) throw new Error(`import-flags: $${name} not found in ${file}`) + return match[1] + .split('\n') + .map((line) => line.trim().replace(/,$/, '')) + .filter(Boolean) +} + +function replaceSassEntries(scss: string, name: string, entries: string[], file: string): string { + const pattern = new RegExp(`(\\$${name}: \\(\\n)[\\s\\S]*?(\\n\\)(?: !default)?;)`) + if (!pattern.test(scss)) throw new Error(`import-flags: $${name} not found in ${file}`) + return scss.replace(pattern, `$1${entries.map((entry) => ` ${entry}`).join(',\n')}$2`) +} + +try { + const sourceDir = resolveSourceDir() + const srcDir = join(sourceDir, 'src') + const metaFile = join(sourceDir, 'flags.json') + const meta = JSON.parse(readFileSync(metaFile, 'utf8')) as Record + + const flags: Flag[] = [] + const codes = new Map() + for (const [slug, { name, category, iso, alias }] of Object.entries(meta)) { + const source = alias ?? slug + if (!existsSync(join(srcDir, `${source}.svg`))) { + console.warn(`import-flags: '${slug}' has no SVG in ${relative(repoRoot, srcDir)} — skipped`) + continue + } + const code = (iso ?? slug).toLowerCase() + const taken = codes.get(code) + if (taken) throw new Error(`import-flags: code '${code}' is used by both '${taken}' and '${slug}'`) + codes.set(code, slug) + flags.push({ code, slug, name, category, iso: iso ?? null }) + } + flags.sort((a, b) => a.code.localeCompare(b.code)) + + const stray = svgNames(srcDir).filter((slug) => !meta[slug]) + if (stray.length) console.warn(`import-flags: SVGs not in flags.json, ignored: ${stray.join(', ')}`) + + // Old codes from before the tabler-flags import. They keep their class and + // their file as copies of the flag that replaced them. + const deprecatedScss = readFileSync(deprecatedScssFile, 'utf8') + const aliases = readSassEntries(deprecatedScss, 'flag-country-aliases', deprecatedScssFile).map((entry) => { + const match = entry.match(/^'([^']+)': '([^']+)'$/) + if (!match) throw new Error(`import-flags: cannot parse $flag-country-aliases entry: ${entry}`) + return { from: match[1], to: match[2] } + }) + for (const { from, to } of aliases) { + if (!codes.has(to)) throw new Error(`import-flags: alias '${from}' points to unknown flag '${to}'`) + if (codes.has(from)) throw new Error(`import-flags: alias '${from}' is also a flag in flags.json — drop the alias`) + } + + const previous = existsSync(imgDir) ? new Set(svgNames(imgDir)) : new Set() + rmSync(imgDir, { recursive: true, force: true }) + mkdirSync(imgDir, { recursive: true }) + for (const { code, slug } of flags) { + copyFileSync(join(srcDir, `${meta[slug].alias ?? slug}.svg`), join(imgDir, `${code}.svg`)) + } + for (const { from, to } of aliases) { + copyFileSync(join(imgDir, `${to}.svg`), join(imgDir, `${from}.svg`)) + } + optimizeSvgDir(imgDir) + + const scss = readFileSync(scssFile, 'utf8') + writeFileSync( + scssFile, + replaceSassEntries( + scss, + 'flag-countries', + flags.map(({ code }) => `'${code}'`), + scssFile, + ), + ) + + const data = [...flags].sort((a, b) => a.name.localeCompare(b.name)).map(({ name, code, category }) => ({ name, flag: code, category })) + writeFileSync(dataFile, `${JSON.stringify(data, null, 2)}\n`) + + const current = new Set(flags.map(({ code }) => code)) + const added = flags.filter(({ code }) => !previous.has(code)).map(({ code }) => code) + const removed = [...previous].filter((code) => !current.has(code) && !aliases.some(({ from }) => from === code)) + console.log(`Imported ${flags.length} flags from ${relative(repoRoot, sourceDir)} (${added.length} added, ${removed.length} removed, ${aliases.length} deprecated aliases kept)`) + if (added.length) console.log(` added: ${added.join(', ')}`) + if (removed.length) console.log(` removed: ${removed.join(', ')}`) + console.log('Now run `pnpm run generate:tokens` to refresh shared/lib/tokens.ts') +} finally { + if (cloneDir) rmSync(cloneDir, { recursive: true, force: true }) +} diff --git a/.changeset/import-tabler-flags.md b/.changeset/import-tabler-flags.md new file mode 100644 index 000000000..117b84628 --- /dev/null +++ b/.changeset/import-tabler-flags.md @@ -0,0 +1,7 @@ +--- +"@tabler/core": minor +"@tabler/preview": patch +"@tabler/docs": patch +--- + +Updated the flags plugin to Tabler Flags: 304 flags at a 5:4 ratio, 50 new like `.flag-country-nato`, old codes kept as aliases. diff --git a/.github/release-notes/1.7.0-flags-dark.png b/.github/release-notes/1.7.0-flags-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..04e4dbe2e931ab1fc6456963c957d1e8ecc548a8 GIT binary patch literal 16449 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 literal 0 HcmV?d00001 diff --git a/.github/release-notes/1.7.0-flags.png b/.github/release-notes/1.7.0-flags.png new file mode 100644 index 0000000000000000000000000000000000000000..d47e793f85e7aa0b02697ffa711cf04c36337d92 GIT binary patch literal 30962 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∈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 *o=>C*y( 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 literal 0 HcmV?d00001 diff --git a/core/img/flags/abkhazia.svg b/core/img/flags/abkhazia.svg new file mode 100644 index 000000000..fb560dd69 --- /dev/null +++ b/core/img/flags/abkhazia.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/ad.svg b/core/img/flags/ad.svg index 41fb86919..d32029da9 100644 --- a/core/img/flags/ad.svg +++ b/core/img/flags/ad.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ae.svg b/core/img/flags/ae.svg index 84b12dab9..3748fff68 100644 --- a/core/img/flags/ae.svg +++ b/core/img/flags/ae.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/af.svg b/core/img/flags/af.svg index 4983d2b83..3c6d3f483 100644 --- a/core/img/flags/af.svg +++ b/core/img/flags/af.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/african-union.svg b/core/img/flags/african-union.svg new file mode 100644 index 000000000..ade8ca37e --- /dev/null +++ b/core/img/flags/african-union.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/afrun.svg b/core/img/flags/afrun.svg index 2e1e49113..ade8ca37e 100644 --- a/core/img/flags/afrun.svg +++ b/core/img/flags/afrun.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ag.svg b/core/img/flags/ag.svg index 706894425..3aee7a81e 100644 --- a/core/img/flags/ag.svg +++ b/core/img/flags/ag.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ai.svg b/core/img/flags/ai.svg index 66e250420..bb925de6a 100644 --- a/core/img/flags/ai.svg +++ b/core/img/flags/ai.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/al.svg b/core/img/flags/al.svg index a8ca45386..52c2b5ded 100644 --- a/core/img/flags/al.svg +++ b/core/img/flags/al.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/am.svg b/core/img/flags/am.svg index e4a22727c..97ba9de67 100644 --- a/core/img/flags/am.svg +++ b/core/img/flags/am.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ao.svg b/core/img/flags/ao.svg index a1d1eb61d..8c826df94 100644 --- a/core/img/flags/ao.svg +++ b/core/img/flags/ao.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/aq.svg b/core/img/flags/aq.svg index 230b6144b..a0324c92d 100644 --- a/core/img/flags/aq.svg +++ b/core/img/flags/aq.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ar.svg b/core/img/flags/ar.svg index 5081d247c..af34f9d66 100644 --- a/core/img/flags/ar.svg +++ b/core/img/flags/ar.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/arab-league.svg b/core/img/flags/arab-league.svg new file mode 100644 index 000000000..adbf01f32 --- /dev/null +++ b/core/img/flags/arab-league.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/as.svg b/core/img/flags/as.svg index 48664111f..5121c898b 100644 --- a/core/img/flags/as.svg +++ b/core/img/flags/as.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/asean.svg b/core/img/flags/asean.svg new file mode 100644 index 000000000..56e47bf52 --- /dev/null +++ b/core/img/flags/asean.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/at.svg b/core/img/flags/at.svg index 72c742513..6a04fa618 100644 --- a/core/img/flags/at.svg +++ b/core/img/flags/at.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/au.svg b/core/img/flags/au.svg index c540890af..e73f1bddb 100644 --- a/core/img/flags/au.svg +++ b/core/img/flags/au.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/aw.svg b/core/img/flags/aw.svg index e31ee0d7e..65946120e 100644 --- a/core/img/flags/aw.svg +++ b/core/img/flags/aw.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ax.svg b/core/img/flags/ax.svg index 25acc6886..2ea1bb4b5 100644 --- a/core/img/flags/ax.svg +++ b/core/img/flags/ax.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/az.svg b/core/img/flags/az.svg index 9e7668886..0bdf26841 100644 --- a/core/img/flags/az.svg +++ b/core/img/flags/az.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ba.svg b/core/img/flags/ba.svg index 0ac4ab23b..36bb5ac17 100644 --- a/core/img/flags/ba.svg +++ b/core/img/flags/ba.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bb.svg b/core/img/flags/bb.svg index 816447a70..615c8a6eb 100644 --- a/core/img/flags/bb.svg +++ b/core/img/flags/bb.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bd.svg b/core/img/flags/bd.svg index 89c137db4..440ba105f 100644 --- a/core/img/flags/bd.svg +++ b/core/img/flags/bd.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/be.svg b/core/img/flags/be.svg index 605aa2575..78ac83e23 100644 --- a/core/img/flags/be.svg +++ b/core/img/flags/be.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bf.svg b/core/img/flags/bf.svg index 54e19f083..f8310268a 100644 --- a/core/img/flags/bf.svg +++ b/core/img/flags/bf.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bg.svg b/core/img/flags/bg.svg index 1a6cb209b..368db73b4 100644 --- a/core/img/flags/bg.svg +++ b/core/img/flags/bg.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bh.svg b/core/img/flags/bh.svg index cef43219b..93894e4a0 100644 --- a/core/img/flags/bh.svg +++ b/core/img/flags/bh.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bi.svg b/core/img/flags/bi.svg index dd91d007a..7a3880fd8 100644 --- a/core/img/flags/bi.svg +++ b/core/img/flags/bi.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bj.svg b/core/img/flags/bj.svg index 4fdd68050..288b94c55 100644 --- a/core/img/flags/bj.svg +++ b/core/img/flags/bj.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bl.svg b/core/img/flags/bl.svg index 67b4746c9..83ac77afe 100644 --- a/core/img/flags/bl.svg +++ b/core/img/flags/bl.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bm.svg b/core/img/flags/bm.svg index 36547a462..326547f43 100644 --- a/core/img/flags/bm.svg +++ b/core/img/flags/bm.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bn.svg b/core/img/flags/bn.svg index aa40316a7..475ce551d 100644 --- a/core/img/flags/bn.svg +++ b/core/img/flags/bn.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bo.svg b/core/img/flags/bo.svg index abcdf42d9..4e2b78f75 100644 --- a/core/img/flags/bo.svg +++ b/core/img/flags/bo.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bq-bo.svg b/core/img/flags/bq-bo.svg index e77416e6c..038916cbf 100644 --- a/core/img/flags/bq-bo.svg +++ b/core/img/flags/bq-bo.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bq-sa.svg b/core/img/flags/bq-sa.svg index e7dbe9472..692d9ebb5 100644 --- a/core/img/flags/bq-sa.svg +++ b/core/img/flags/bq-sa.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bq-se.svg b/core/img/flags/bq-se.svg index e5f4f99be..0dace607d 100644 --- a/core/img/flags/bq-se.svg +++ b/core/img/flags/bq-se.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bq.svg b/core/img/flags/bq.svg new file mode 100644 index 000000000..5ca947c7f --- /dev/null +++ b/core/img/flags/bq.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/bq1.svg b/core/img/flags/bq1.svg new file mode 100644 index 000000000..038916cbf --- /dev/null +++ b/core/img/flags/bq1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/bq2.svg b/core/img/flags/bq2.svg new file mode 100644 index 000000000..692d9ebb5 --- /dev/null +++ b/core/img/flags/bq2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/bq3.svg b/core/img/flags/bq3.svg new file mode 100644 index 000000000..0dace607d --- /dev/null +++ b/core/img/flags/bq3.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/br.svg b/core/img/flags/br.svg index 4b88d3359..b1e183199 100644 --- a/core/img/flags/br.svg +++ b/core/img/flags/br.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bs.svg b/core/img/flags/bs.svg index 5d4d118dd..2d3d5a3d7 100644 --- a/core/img/flags/bs.svg +++ b/core/img/flags/bs.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bt.svg b/core/img/flags/bt.svg index 680eb33c1..e225df527 100644 --- a/core/img/flags/bt.svg +++ b/core/img/flags/bt.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bv.svg b/core/img/flags/bv.svg index c5123a2bc..efcff85ee 100644 --- a/core/img/flags/bv.svg +++ b/core/img/flags/bv.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bw.svg b/core/img/flags/bw.svg index 0563693d8..115668ee9 100644 --- a/core/img/flags/bw.svg +++ b/core/img/flags/bw.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/by.svg b/core/img/flags/by.svg index d6a3e9589..52b95a891 100644 --- a/core/img/flags/by.svg +++ b/core/img/flags/by.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/bz.svg b/core/img/flags/bz.svg index 65dce7112..b8f65a035 100644 --- a/core/img/flags/bz.svg +++ b/core/img/flags/bz.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ca.svg b/core/img/flags/ca.svg index 78aa8255a..78714ae2f 100644 --- a/core/img/flags/ca.svg +++ b/core/img/flags/ca.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/cabinda.svg b/core/img/flags/cabinda.svg new file mode 100644 index 000000000..8f82fff24 --- /dev/null +++ b/core/img/flags/cabinda.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/cc.svg b/core/img/flags/cc.svg index d80b222c5..6be849e8d 100644 --- a/core/img/flags/cc.svg +++ b/core/img/flags/cc.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/cd.svg b/core/img/flags/cd.svg index 97b7d6024..6a0ad86f2 100644 --- a/core/img/flags/cd.svg +++ b/core/img/flags/cd.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/cefta.svg b/core/img/flags/cefta.svg new file mode 100644 index 000000000..335890334 --- /dev/null +++ b/core/img/flags/cefta.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/cf.svg b/core/img/flags/cf.svg index ec2b644fb..29c426d41 100644 --- a/core/img/flags/cf.svg +++ b/core/img/flags/cf.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/cg.svg b/core/img/flags/cg.svg index ea4ea93c5..a450fb405 100644 --- a/core/img/flags/cg.svg +++ b/core/img/flags/cg.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ch.svg b/core/img/flags/ch.svg index e99a059df..a4f783aeb 100644 --- a/core/img/flags/ch.svg +++ b/core/img/flags/ch.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/chechnya.svg b/core/img/flags/chechnya.svg new file mode 100644 index 000000000..99fb8437d --- /dev/null +++ b/core/img/flags/chechnya.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/chequered.svg b/core/img/flags/chequered.svg new file mode 100644 index 000000000..0b7a969b1 --- /dev/null +++ b/core/img/flags/chequered.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/ci.svg b/core/img/flags/ci.svg index fb572df08..efea5703d 100644 --- a/core/img/flags/ci.svg +++ b/core/img/flags/ci.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ck.svg b/core/img/flags/ck.svg index 7545da617..c8751a11d 100644 --- a/core/img/flags/ck.svg +++ b/core/img/flags/ck.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/cl.svg b/core/img/flags/cl.svg index 1f010823d..a7b4b9ffb 100644 --- a/core/img/flags/cl.svg +++ b/core/img/flags/cl.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/cm.svg b/core/img/flags/cm.svg index 1e7a7623e..9fa8bf314 100644 --- a/core/img/flags/cm.svg +++ b/core/img/flags/cm.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/cn.svg b/core/img/flags/cn.svg index 76a2b2eca..656949647 100644 --- a/core/img/flags/cn.svg +++ b/core/img/flags/cn.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/co.svg b/core/img/flags/co.svg index 511450a1b..e6d7646e9 100644 --- a/core/img/flags/co.svg +++ b/core/img/flags/co.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/commonwealth-of-independent-states.svg b/core/img/flags/commonwealth-of-independent-states.svg new file mode 100644 index 000000000..e7184e074 --- /dev/null +++ b/core/img/flags/commonwealth-of-independent-states.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/commonwealth-of-nations.svg b/core/img/flags/commonwealth-of-nations.svg new file mode 100644 index 000000000..1ef6e808b --- /dev/null +++ b/core/img/flags/commonwealth-of-nations.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/cr.svg b/core/img/flags/cr.svg index e5d15b8d4..309cfd5f7 100644 --- a/core/img/flags/cr.svg +++ b/core/img/flags/cr.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/cu.svg b/core/img/flags/cu.svg index 92e611281..10f78a5d7 100644 --- a/core/img/flags/cu.svg +++ b/core/img/flags/cu.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/cv.svg b/core/img/flags/cv.svg index fa5124020..c3bc829e8 100644 --- a/core/img/flags/cv.svg +++ b/core/img/flags/cv.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/cw.svg b/core/img/flags/cw.svg index 2ca9ba320..3c13609af 100644 --- a/core/img/flags/cw.svg +++ b/core/img/flags/cw.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/cx.svg b/core/img/flags/cx.svg index 30a84b40f..dc5c1c567 100644 --- a/core/img/flags/cx.svg +++ b/core/img/flags/cx.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/cy.svg b/core/img/flags/cy.svg index 3a55046b0..4edad61f6 100644 --- a/core/img/flags/cy.svg +++ b/core/img/flags/cy.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/cz.svg b/core/img/flags/cz.svg index 6ad3c8f5d..7dc2ef8d8 100644 --- a/core/img/flags/cz.svg +++ b/core/img/flags/cz.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/de.svg b/core/img/flags/de.svg index bb250d710..a73ef5c15 100644 --- a/core/img/flags/de.svg +++ b/core/img/flags/de.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/dg.svg b/core/img/flags/dg.svg new file mode 100644 index 000000000..9ac3b5f13 --- /dev/null +++ b/core/img/flags/dg.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/diver-down.svg b/core/img/flags/diver-down.svg new file mode 100644 index 000000000..d8ed4323f --- /dev/null +++ b/core/img/flags/diver-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/dj.svg b/core/img/flags/dj.svg index 24235cea4..bf73a23d4 100644 --- a/core/img/flags/dj.svg +++ b/core/img/flags/dj.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/dk.svg b/core/img/flags/dk.svg index 8e20f2dbd..a190f72a6 100644 --- a/core/img/flags/dk.svg +++ b/core/img/flags/dk.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/dm.svg b/core/img/flags/dm.svg index 234f5d96c..4f25ee67e 100644 --- a/core/img/flags/dm.svg +++ b/core/img/flags/dm.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/do.svg b/core/img/flags/do.svg index 84de44a2e..5e5b45974 100644 --- a/core/img/flags/do.svg +++ b/core/img/flags/do.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/dz.svg b/core/img/flags/dz.svg index c04ee29e9..09c2f449b 100644 --- a/core/img/flags/dz.svg +++ b/core/img/flags/dz.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/eac.svg b/core/img/flags/eac.svg new file mode 100644 index 000000000..50f4ae90a --- /dev/null +++ b/core/img/flags/eac.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/ec.svg b/core/img/flags/ec.svg index 8a9c9c46f..aabaf5a2c 100644 --- a/core/img/flags/ec.svg +++ b/core/img/flags/ec.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ee.svg b/core/img/flags/ee.svg index 793ef8c00..70e2e93d9 100644 --- a/core/img/flags/ee.svg +++ b/core/img/flags/ee.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/eg.svg b/core/img/flags/eg.svg index 0b89e2e26..62d5045a6 100644 --- a/core/img/flags/eg.svg +++ b/core/img/flags/eg.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/eh.svg b/core/img/flags/eh.svg index 4d9c46051..8f17fc86e 100644 --- a/core/img/flags/eh.svg +++ b/core/img/flags/eh.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/er.svg b/core/img/flags/er.svg index 51f8ef18e..fd48be28d 100644 --- a/core/img/flags/er.svg +++ b/core/img/flags/er.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/es-ct.svg b/core/img/flags/es-ct.svg new file mode 100644 index 000000000..1f3b04fc7 --- /dev/null +++ b/core/img/flags/es-ct.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/es-ga.svg b/core/img/flags/es-ga.svg new file mode 100644 index 000000000..4c396a004 --- /dev/null +++ b/core/img/flags/es-ga.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/es-pv.svg b/core/img/flags/es-pv.svg new file mode 100644 index 000000000..9e7f34c39 --- /dev/null +++ b/core/img/flags/es-pv.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/es.svg b/core/img/flags/es.svg index 44a5406fe..ee2256043 100644 --- a/core/img/flags/es.svg +++ b/core/img/flags/es.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/et.svg b/core/img/flags/et.svg index 02b6cb613..8011bc150 100644 --- a/core/img/flags/et.svg +++ b/core/img/flags/et.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/eu.svg b/core/img/flags/eu.svg index 8630bcecf..c9d5866c8 100644 --- a/core/img/flags/eu.svg +++ b/core/img/flags/eu.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/fi.svg b/core/img/flags/fi.svg index c49d319cc..4b972b40d 100644 --- a/core/img/flags/fi.svg +++ b/core/img/flags/fi.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/fj.svg b/core/img/flags/fj.svg index af36eb28b..9572a523c 100644 --- a/core/img/flags/fj.svg +++ b/core/img/flags/fj.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/fk.svg b/core/img/flags/fk.svg index db2803ece..93b353e5c 100644 --- a/core/img/flags/fk.svg +++ b/core/img/flags/fk.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/fm.svg b/core/img/flags/fm.svg index 6e11c984a..64285f057 100644 --- a/core/img/flags/fm.svg +++ b/core/img/flags/fm.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/fo.svg b/core/img/flags/fo.svg index cc7146335..ddc106ae8 100644 --- a/core/img/flags/fo.svg +++ b/core/img/flags/fo.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/fr.svg b/core/img/flags/fr.svg index a04cc0cad..3e4635c85 100644 --- a/core/img/flags/fr.svg +++ b/core/img/flags/fr.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ga.svg b/core/img/flags/ga.svg index 4a187b508..6b1519025 100644 --- a/core/img/flags/ga.svg +++ b/core/img/flags/ga.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gb-eng.svg b/core/img/flags/gb-eng.svg index 26301e0f2..6277aab6b 100644 --- a/core/img/flags/gb-eng.svg +++ b/core/img/flags/gb-eng.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gb-nir.svg b/core/img/flags/gb-nir.svg index afa709f9e..b62515d2b 100644 --- a/core/img/flags/gb-nir.svg +++ b/core/img/flags/gb-nir.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gb-sct.svg b/core/img/flags/gb-sct.svg index ce5c3ab9b..96dfba8e4 100644 --- a/core/img/flags/gb-sct.svg +++ b/core/img/flags/gb-sct.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gb-wls.svg b/core/img/flags/gb-wls.svg index f710a8f0a..60ba6675d 100644 --- a/core/img/flags/gb-wls.svg +++ b/core/img/flags/gb-wls.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gb.svg b/core/img/flags/gb.svg index afa709f9e..e93877deb 100644 --- a/core/img/flags/gb.svg +++ b/core/img/flags/gb.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gd.svg b/core/img/flags/gd.svg index d6fc19da2..fedd33324 100644 --- a/core/img/flags/gd.svg +++ b/core/img/flags/gd.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ge.svg b/core/img/flags/ge.svg index f154bcfb7..12c668d46 100644 --- a/core/img/flags/ge.svg +++ b/core/img/flags/ge.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gf.svg b/core/img/flags/gf.svg index abe4fce22..2175205f3 100644 --- a/core/img/flags/gf.svg +++ b/core/img/flags/gf.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gg.svg b/core/img/flags/gg.svg index 018c1dd41..07a3e7193 100644 --- a/core/img/flags/gg.svg +++ b/core/img/flags/gg.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gh.svg b/core/img/flags/gh.svg index 88cdf72ae..e9273d8a4 100644 --- a/core/img/flags/gh.svg +++ b/core/img/flags/gh.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gi.svg b/core/img/flags/gi.svg index 59da2dc2a..dabd09144 100644 --- a/core/img/flags/gi.svg +++ b/core/img/flags/gi.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gl.svg b/core/img/flags/gl.svg index b98984e2e..ff7beaccc 100644 --- a/core/img/flags/gl.svg +++ b/core/img/flags/gl.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gm.svg b/core/img/flags/gm.svg index 16a97abb3..4c0392af6 100644 --- a/core/img/flags/gm.svg +++ b/core/img/flags/gm.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gn.svg b/core/img/flags/gn.svg index f4640516d..f5194d4c4 100644 --- a/core/img/flags/gn.svg +++ b/core/img/flags/gn.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gp.svg b/core/img/flags/gp.svg index e6c2bf18c..e105f6777 100644 --- a/core/img/flags/gp.svg +++ b/core/img/flags/gp.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gq.svg b/core/img/flags/gq.svg index bdcc6dc34..982ad50c8 100644 --- a/core/img/flags/gq.svg +++ b/core/img/flags/gq.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gr.svg b/core/img/flags/gr.svg index 95fe13019..4c7f5d873 100644 --- a/core/img/flags/gr.svg +++ b/core/img/flags/gr.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gs.svg b/core/img/flags/gs.svg index c17d9f3ef..fe30e1d26 100644 --- a/core/img/flags/gs.svg +++ b/core/img/flags/gs.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gt.svg b/core/img/flags/gt.svg index 854fa95df..29e0bd7b5 100644 --- a/core/img/flags/gt.svg +++ b/core/img/flags/gt.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gu.svg b/core/img/flags/gu.svg index 083a00e7d..d2a16a43c 100644 --- a/core/img/flags/gu.svg +++ b/core/img/flags/gu.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gw.svg b/core/img/flags/gw.svg index 39771b080..af581dee9 100644 --- a/core/img/flags/gw.svg +++ b/core/img/flags/gw.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/gy.svg b/core/img/flags/gy.svg index e01a1893c..6d1253ba4 100644 --- a/core/img/flags/gy.svg +++ b/core/img/flags/gy.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/hk.svg b/core/img/flags/hk.svg index 3b95d6a52..4f719d1bf 100644 --- a/core/img/flags/hk.svg +++ b/core/img/flags/hk.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/hm.svg b/core/img/flags/hm.svg index 7f861577c..4848876dd 100644 --- a/core/img/flags/hm.svg +++ b/core/img/flags/hm.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/hn.svg b/core/img/flags/hn.svg index 4218fb0b3..2ced833d5 100644 --- a/core/img/flags/hn.svg +++ b/core/img/flags/hn.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/hr.svg b/core/img/flags/hr.svg index 4507d830c..87445cbca 100644 --- a/core/img/flags/hr.svg +++ b/core/img/flags/hr.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ht.svg b/core/img/flags/ht.svg index 1eef38c7d..1997c5390 100644 --- a/core/img/flags/ht.svg +++ b/core/img/flags/ht.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/hu.svg b/core/img/flags/hu.svg index 811252e81..bb9077811 100644 --- a/core/img/flags/hu.svg +++ b/core/img/flags/hu.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ic.svg b/core/img/flags/ic.svg new file mode 100644 index 000000000..8d2ab0819 --- /dev/null +++ b/core/img/flags/ic.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/id.svg b/core/img/flags/id.svg index 0eb77253c..647598e0b 100644 --- a/core/img/flags/id.svg +++ b/core/img/flags/id.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ie.svg b/core/img/flags/ie.svg index db78738e4..dfe77a585 100644 --- a/core/img/flags/ie.svg +++ b/core/img/flags/ie.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/il.svg b/core/img/flags/il.svg index 8dcf86df3..e19cc8ea9 100644 --- a/core/img/flags/il.svg +++ b/core/img/flags/il.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/im.svg b/core/img/flags/im.svg index 4944b8cdc..fe4458aa7 100644 --- a/core/img/flags/im.svg +++ b/core/img/flags/im.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/in.svg b/core/img/flags/in.svg index f21884bda..3be512e8d 100644 --- a/core/img/flags/in.svg +++ b/core/img/flags/in.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/io.svg b/core/img/flags/io.svg index a2784f91c..9ac3b5f13 100644 --- a/core/img/flags/io.svg +++ b/core/img/flags/io.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/iq.svg b/core/img/flags/iq.svg index b2ad2336d..3c024c7cc 100644 --- a/core/img/flags/iq.svg +++ b/core/img/flags/iq.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ir.svg b/core/img/flags/ir.svg index 879a41a24..fbe445682 100644 --- a/core/img/flags/ir.svg +++ b/core/img/flags/ir.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/is.svg b/core/img/flags/is.svg index dcbdff9bf..d7460212b 100644 --- a/core/img/flags/is.svg +++ b/core/img/flags/is.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/it.svg b/core/img/flags/it.svg index d48a65aa0..30d7d3bc0 100644 --- a/core/img/flags/it.svg +++ b/core/img/flags/it.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/je.svg b/core/img/flags/je.svg index 9ee508325..8208d0716 100644 --- a/core/img/flags/je.svg +++ b/core/img/flags/je.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/jm.svg b/core/img/flags/jm.svg index 296446350..02689fe08 100644 --- a/core/img/flags/jm.svg +++ b/core/img/flags/jm.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/jo.svg b/core/img/flags/jo.svg index 877d438fc..8959b54b4 100644 --- a/core/img/flags/jo.svg +++ b/core/img/flags/jo.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/jp.svg b/core/img/flags/jp.svg index 054e4101d..e2a904289 100644 --- a/core/img/flags/jp.svg +++ b/core/img/flags/jp.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/jubaland.svg b/core/img/flags/jubaland.svg new file mode 100644 index 000000000..0a4d73061 --- /dev/null +++ b/core/img/flags/jubaland.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/ke.svg b/core/img/flags/ke.svg index cf5f68508..9509fe469 100644 --- a/core/img/flags/ke.svg +++ b/core/img/flags/ke.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/kg.svg b/core/img/flags/kg.svg index a456b9842..2cba3764d 100644 --- a/core/img/flags/kg.svg +++ b/core/img/flags/kg.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/kh.svg b/core/img/flags/kh.svg index ba0e6bbe8..539f98d29 100644 --- a/core/img/flags/kh.svg +++ b/core/img/flags/kh.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ki.svg b/core/img/flags/ki.svg index 0dec18e6e..848637b7a 100644 --- a/core/img/flags/ki.svg +++ b/core/img/flags/ki.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/km.svg b/core/img/flags/km.svg index 6c6a74c54..84ba66fda 100644 --- a/core/img/flags/km.svg +++ b/core/img/flags/km.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/kn-sk.svg b/core/img/flags/kn-sk.svg index a2c8fcaf7..bb2a0fac7 100644 --- a/core/img/flags/kn-sk.svg +++ b/core/img/flags/kn-sk.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/kn.svg b/core/img/flags/kn.svg index bf519b916..bb2a0fac7 100644 --- a/core/img/flags/kn.svg +++ b/core/img/flags/kn.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/kp.svg b/core/img/flags/kp.svg index f7f1e2e1e..5e2e6cc4d 100644 --- a/core/img/flags/kp.svg +++ b/core/img/flags/kp.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/kr.svg b/core/img/flags/kr.svg index 2f655643a..c22210c5a 100644 --- a/core/img/flags/kr.svg +++ b/core/img/flags/kr.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/kurdistan.svg b/core/img/flags/kurdistan.svg new file mode 100644 index 000000000..a8aaec5bd --- /dev/null +++ b/core/img/flags/kurdistan.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/kw.svg b/core/img/flags/kw.svg index 330558516..41b6ed429 100644 --- a/core/img/flags/kw.svg +++ b/core/img/flags/kw.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ky.svg b/core/img/flags/ky.svg index df0d93b4f..6a6c63504 100644 --- a/core/img/flags/ky.svg +++ b/core/img/flags/ky.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/kz.svg b/core/img/flags/kz.svg index 86cb8519f..dfa818d7d 100644 --- a/core/img/flags/kz.svg +++ b/core/img/flags/kz.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/la.svg b/core/img/flags/la.svg index e8b140699..39230336d 100644 --- a/core/img/flags/la.svg +++ b/core/img/flags/la.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/lb.svg b/core/img/flags/lb.svg index 74e3a2704..12e25ce63 100644 --- a/core/img/flags/lb.svg +++ b/core/img/flags/lb.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/lc.svg b/core/img/flags/lc.svg index bd86b2b71..27339a99b 100644 --- a/core/img/flags/lc.svg +++ b/core/img/flags/lc.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/li.svg b/core/img/flags/li.svg index 72b9545ff..83b8f9fce 100644 --- a/core/img/flags/li.svg +++ b/core/img/flags/li.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/lk.svg b/core/img/flags/lk.svg index 2a999779a..e2861c99f 100644 --- a/core/img/flags/lk.svg +++ b/core/img/flags/lk.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/lr.svg b/core/img/flags/lr.svg index 91de037d5..9b79f6ce0 100644 --- a/core/img/flags/lr.svg +++ b/core/img/flags/lr.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ls.svg b/core/img/flags/ls.svg index ea4f2e4d2..c97316b9d 100644 --- a/core/img/flags/ls.svg +++ b/core/img/flags/ls.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/lt.svg b/core/img/flags/lt.svg index e01f54d1e..b44720073 100644 --- a/core/img/flags/lt.svg +++ b/core/img/flags/lt.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/lu.svg b/core/img/flags/lu.svg index a6fd2c521..f496e5d6d 100644 --- a/core/img/flags/lu.svg +++ b/core/img/flags/lu.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/lv.svg b/core/img/flags/lv.svg index 4bffc4c8d..66e38d09e 100644 --- a/core/img/flags/lv.svg +++ b/core/img/flags/lv.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ly.svg b/core/img/flags/ly.svg index 447142595..083b2b6df 100644 --- a/core/img/flags/ly.svg +++ b/core/img/flags/ly.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ma.svg b/core/img/flags/ma.svg index 10fa80389..66966c15d 100644 --- a/core/img/flags/ma.svg +++ b/core/img/flags/ma.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/maltese-cross.svg b/core/img/flags/maltese-cross.svg new file mode 100644 index 000000000..e66f645fb --- /dev/null +++ b/core/img/flags/maltese-cross.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/mc.svg b/core/img/flags/mc.svg index 750c9be4b..fcb3a13fd 100644 --- a/core/img/flags/mc.svg +++ b/core/img/flags/mc.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/md.svg b/core/img/flags/md.svg index 3651f7ff5..02558dc15 100644 --- a/core/img/flags/md.svg +++ b/core/img/flags/md.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/me.svg b/core/img/flags/me.svg index 4c3d88579..4765ea0c1 100644 --- a/core/img/flags/me.svg +++ b/core/img/flags/me.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mercosur.svg b/core/img/flags/mercosur.svg new file mode 100644 index 000000000..f8198a152 --- /dev/null +++ b/core/img/flags/mercosur.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/mf.svg b/core/img/flags/mf.svg index a558a8958..3e4635c85 100644 --- a/core/img/flags/mf.svg +++ b/core/img/flags/mf.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mg.svg b/core/img/flags/mg.svg index f4599ac64..282d6ca1d 100644 --- a/core/img/flags/mg.svg +++ b/core/img/flags/mg.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mh.svg b/core/img/flags/mh.svg index b9d8a90af..fca53b44a 100644 --- a/core/img/flags/mh.svg +++ b/core/img/flags/mh.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mk.svg b/core/img/flags/mk.svg index a6574b71d..1fe956bbc 100644 --- a/core/img/flags/mk.svg +++ b/core/img/flags/mk.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ml.svg b/core/img/flags/ml.svg index e690df159..d5f7bc100 100644 --- a/core/img/flags/ml.svg +++ b/core/img/flags/ml.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mm.svg b/core/img/flags/mm.svg index c2a0ec84d..9033de1d0 100644 --- a/core/img/flags/mm.svg +++ b/core/img/flags/mm.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mn.svg b/core/img/flags/mn.svg index c5b9b677f..7d1a1a617 100644 --- a/core/img/flags/mn.svg +++ b/core/img/flags/mn.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mo.svg b/core/img/flags/mo.svg index 1d886e25e..6ae19a0e5 100644 --- a/core/img/flags/mo.svg +++ b/core/img/flags/mo.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mp.svg b/core/img/flags/mp.svg index 479d7741d..7c3dad98f 100644 --- a/core/img/flags/mp.svg +++ b/core/img/flags/mp.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mq.svg b/core/img/flags/mq.svg index cdad8bf47..d84aa7bdd 100644 --- a/core/img/flags/mq.svg +++ b/core/img/flags/mq.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mr.svg b/core/img/flags/mr.svg index da5af6ad2..620c9bce7 100644 --- a/core/img/flags/mr.svg +++ b/core/img/flags/mr.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ms.svg b/core/img/flags/ms.svg index 6aac52807..1915f0b1e 100644 --- a/core/img/flags/ms.svg +++ b/core/img/flags/ms.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mt.svg b/core/img/flags/mt.svg index c38143ca5..c262c6c5a 100644 --- a/core/img/flags/mt.svg +++ b/core/img/flags/mt.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mu.svg b/core/img/flags/mu.svg index 2dfa87497..8311445c3 100644 --- a/core/img/flags/mu.svg +++ b/core/img/flags/mu.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mv.svg b/core/img/flags/mv.svg index 0d22e72c3..071846796 100644 --- a/core/img/flags/mv.svg +++ b/core/img/flags/mv.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mw.svg b/core/img/flags/mw.svg index d6c028b61..0883979eb 100644 --- a/core/img/flags/mw.svg +++ b/core/img/flags/mw.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mx.svg b/core/img/flags/mx.svg index 2b51d45a4..a59350cd9 100644 --- a/core/img/flags/mx.svg +++ b/core/img/flags/mx.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/my.svg b/core/img/flags/my.svg index 1a01b5452..1f68e856d 100644 --- a/core/img/flags/my.svg +++ b/core/img/flags/my.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/mz.svg b/core/img/flags/mz.svg index c2218aa06..74e156d6c 100644 --- a/core/img/flags/mz.svg +++ b/core/img/flags/mz.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/na.svg b/core/img/flags/na.svg index 28419c484..41220b2a4 100644 --- a/core/img/flags/na.svg +++ b/core/img/flags/na.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/nato.svg b/core/img/flags/nato.svg new file mode 100644 index 000000000..64c20ff46 --- /dev/null +++ b/core/img/flags/nato.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/nc.svg b/core/img/flags/nc.svg index 236804138..cfe06b114 100644 --- a/core/img/flags/nc.svg +++ b/core/img/flags/nc.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ne.svg b/core/img/flags/ne.svg index 4191650f8..38b45d667 100644 --- a/core/img/flags/ne.svg +++ b/core/img/flags/ne.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/nf.svg b/core/img/flags/nf.svg index 04e88dd23..eaebe5655 100644 --- a/core/img/flags/nf.svg +++ b/core/img/flags/nf.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ng.svg b/core/img/flags/ng.svg index 067b03b59..c4312adc7 100644 --- a/core/img/flags/ng.svg +++ b/core/img/flags/ng.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ni.svg b/core/img/flags/ni.svg index efcae914c..2f8eb9dcd 100644 --- a/core/img/flags/ni.svg +++ b/core/img/flags/ni.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/nl.svg b/core/img/flags/nl.svg index ef508c916..5ca947c7f 100644 --- a/core/img/flags/nl.svg +++ b/core/img/flags/nl.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/no.svg b/core/img/flags/no.svg index c5123a2bc..efcff85ee 100644 --- a/core/img/flags/no.svg +++ b/core/img/flags/no.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/nordic-council.svg b/core/img/flags/nordic-council.svg new file mode 100644 index 000000000..b3d7a74ae --- /dev/null +++ b/core/img/flags/nordic-council.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/northern-cyprus.svg b/core/img/flags/northern-cyprus.svg new file mode 100644 index 000000000..b6e40224c --- /dev/null +++ b/core/img/flags/northern-cyprus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/np.svg b/core/img/flags/np.svg index 96499339e..a0104002b 100644 --- a/core/img/flags/np.svg +++ b/core/img/flags/np.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/nr.svg b/core/img/flags/nr.svg index f12de7450..972566c5c 100644 --- a/core/img/flags/nr.svg +++ b/core/img/flags/nr.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/nu.svg b/core/img/flags/nu.svg index 0f1681c55..174b9ffeb 100644 --- a/core/img/flags/nu.svg +++ b/core/img/flags/nu.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/nz.svg b/core/img/flags/nz.svg index 915c943e1..e32ca96f0 100644 --- a/core/img/flags/nz.svg +++ b/core/img/flags/nz.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/olympic.svg b/core/img/flags/olympic.svg new file mode 100644 index 000000000..2d01b941e --- /dev/null +++ b/core/img/flags/olympic.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/om.svg b/core/img/flags/om.svg index b2251f657..b635f0d61 100644 --- a/core/img/flags/om.svg +++ b/core/img/flags/om.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/pa.svg b/core/img/flags/pa.svg index 54dd1e376..df309a8c6 100644 --- a/core/img/flags/pa.svg +++ b/core/img/flags/pa.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/paneuropean-union.svg b/core/img/flags/paneuropean-union.svg new file mode 100644 index 000000000..9624ba66f --- /dev/null +++ b/core/img/flags/paneuropean-union.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/paraolympic.svg b/core/img/flags/paraolympic.svg new file mode 100644 index 000000000..2820527f0 --- /dev/null +++ b/core/img/flags/paraolympic.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/pc.svg b/core/img/flags/pc.svg new file mode 100644 index 000000000..3843d687a --- /dev/null +++ b/core/img/flags/pc.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/pe.svg b/core/img/flags/pe.svg index 12c592046..fea27d9e6 100644 --- a/core/img/flags/pe.svg +++ b/core/img/flags/pe.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/pf.svg b/core/img/flags/pf.svg index 2eafb6f41..e41a6f72e 100644 --- a/core/img/flags/pf.svg +++ b/core/img/flags/pf.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/pg.svg b/core/img/flags/pg.svg index 1e43a9161..9cd91ae9b 100644 --- a/core/img/flags/pg.svg +++ b/core/img/flags/pg.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ph.svg b/core/img/flags/ph.svg index 214c60797..8851b35c5 100644 --- a/core/img/flags/ph.svg +++ b/core/img/flags/ph.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/pirate.svg b/core/img/flags/pirate.svg new file mode 100644 index 000000000..1bd7aec7c --- /dev/null +++ b/core/img/flags/pirate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/pk.svg b/core/img/flags/pk.svg index 2eb6f44bf..e3b8522d2 100644 --- a/core/img/flags/pk.svg +++ b/core/img/flags/pk.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/pl.svg b/core/img/flags/pl.svg index 43ea62ae5..1e3eb2cb4 100644 --- a/core/img/flags/pl.svg +++ b/core/img/flags/pl.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/pm.svg b/core/img/flags/pm.svg index 42107eb22..e2e89eb54 100644 --- a/core/img/flags/pm.svg +++ b/core/img/flags/pm.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/pn.svg b/core/img/flags/pn.svg index b9bb0a985..6ab042421 100644 --- a/core/img/flags/pn.svg +++ b/core/img/flags/pn.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/pr.svg b/core/img/flags/pr.svg index b5df0bc9f..9ecfd91e5 100644 --- a/core/img/flags/pr.svg +++ b/core/img/flags/pr.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ps.svg b/core/img/flags/ps.svg index 056421fdf..c897e109f 100644 --- a/core/img/flags/ps.svg +++ b/core/img/flags/ps.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/pt.svg b/core/img/flags/pt.svg index 9de6d1a7c..9e60c63d9 100644 --- a/core/img/flags/pt.svg +++ b/core/img/flags/pt.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/pw.svg b/core/img/flags/pw.svg index 7b7675b0f..066556072 100644 --- a/core/img/flags/pw.svg +++ b/core/img/flags/pw.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/py.svg b/core/img/flags/py.svg index 8d2653907..b6b3831e1 100644 --- a/core/img/flags/py.svg +++ b/core/img/flags/py.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/qa.svg b/core/img/flags/qa.svg index 40902f3de..e9e6a7a45 100644 --- a/core/img/flags/qa.svg +++ b/core/img/flags/qa.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/rainbow.svg b/core/img/flags/rainbow.svg index 50d3d1267..ea125537a 100644 --- a/core/img/flags/rainbow.svg +++ b/core/img/flags/rainbow.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/re.svg b/core/img/flags/re.svg index 236804138..c38506d4f 100644 --- a/core/img/flags/re.svg +++ b/core/img/flags/re.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/red-crescent.svg b/core/img/flags/red-crescent.svg new file mode 100644 index 000000000..f5585872c --- /dev/null +++ b/core/img/flags/red-crescent.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/red-cross.svg b/core/img/flags/red-cross.svg new file mode 100644 index 000000000..7efc480e4 --- /dev/null +++ b/core/img/flags/red-cross.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/ro.svg b/core/img/flags/ro.svg index 47b2e34e5..dca2ed2fc 100644 --- a/core/img/flags/ro.svg +++ b/core/img/flags/ro.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/rs.svg b/core/img/flags/rs.svg index 811b8c8cc..764e29e09 100644 --- a/core/img/flags/rs.svg +++ b/core/img/flags/rs.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ru.svg b/core/img/flags/ru.svg index 615263eef..7d3a929fc 100644 --- a/core/img/flags/ru.svg +++ b/core/img/flags/ru.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/rw.svg b/core/img/flags/rw.svg index a5d8c4053..cd35c2669 100644 --- a/core/img/flags/rw.svg +++ b/core/img/flags/rw.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sa.svg b/core/img/flags/sa.svg index 66b97036f..cbcae2bc9 100644 --- a/core/img/flags/sa.svg +++ b/core/img/flags/sa.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sb.svg b/core/img/flags/sb.svg index 90ab86a7a..84190f1ed 100644 --- a/core/img/flags/sb.svg +++ b/core/img/flags/sb.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sc.svg b/core/img/flags/sc.svg index d09e39e5b..8da1e27bf 100644 --- a/core/img/flags/sc.svg +++ b/core/img/flags/sc.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sd.svg b/core/img/flags/sd.svg index 09aee0dd8..28af45c34 100644 --- a/core/img/flags/sd.svg +++ b/core/img/flags/sd.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/se.svg b/core/img/flags/se.svg index 2ad7fc6e7..741d07a8b 100644 --- a/core/img/flags/se.svg +++ b/core/img/flags/se.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sealand.svg b/core/img/flags/sealand.svg new file mode 100644 index 000000000..dfb9e6e16 --- /dev/null +++ b/core/img/flags/sealand.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/semaphore-signal.svg b/core/img/flags/semaphore-signal.svg new file mode 100644 index 000000000..71327f456 --- /dev/null +++ b/core/img/flags/semaphore-signal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/sg.svg b/core/img/flags/sg.svg index b7a551dcc..b91f29828 100644 --- a/core/img/flags/sg.svg +++ b/core/img/flags/sg.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sh-ac.svg b/core/img/flags/sh-ac.svg new file mode 100644 index 000000000..04c974730 --- /dev/null +++ b/core/img/flags/sh-ac.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/sh-hl.svg b/core/img/flags/sh-hl.svg new file mode 100644 index 000000000..139651de4 --- /dev/null +++ b/core/img/flags/sh-hl.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/sh-ta.svg b/core/img/flags/sh-ta.svg new file mode 100644 index 000000000..dc445aa51 --- /dev/null +++ b/core/img/flags/sh-ta.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/sh.svg b/core/img/flags/sh.svg index a4724030d..139651de4 100644 --- a/core/img/flags/sh.svg +++ b/core/img/flags/sh.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/si.svg b/core/img/flags/si.svg index aac42e37b..360458c22 100644 --- a/core/img/flags/si.svg +++ b/core/img/flags/si.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sj.svg b/core/img/flags/sj.svg index c5123a2bc..efcff85ee 100644 --- a/core/img/flags/sj.svg +++ b/core/img/flags/sj.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sk.svg b/core/img/flags/sk.svg index b7288f966..80643adce 100644 --- a/core/img/flags/sk.svg +++ b/core/img/flags/sk.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sl.svg b/core/img/flags/sl.svg index f148bcfa9..20a8d1b03 100644 --- a/core/img/flags/sl.svg +++ b/core/img/flags/sl.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sm.svg b/core/img/flags/sm.svg index b5c5eebdb..42e1e3387 100644 --- a/core/img/flags/sm.svg +++ b/core/img/flags/sm.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sn.svg b/core/img/flags/sn.svg index 428a7e83c..a79864580 100644 --- a/core/img/flags/sn.svg +++ b/core/img/flags/sn.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/so.svg b/core/img/flags/so.svg index 83e49ff00..cd6bc9aa8 100644 --- a/core/img/flags/so.svg +++ b/core/img/flags/so.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/somaliland.svg b/core/img/flags/somaliland.svg new file mode 100644 index 000000000..92f41f27f --- /dev/null +++ b/core/img/flags/somaliland.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/south-american-union.svg b/core/img/flags/south-american-union.svg new file mode 100644 index 000000000..abe201f00 --- /dev/null +++ b/core/img/flags/south-american-union.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/south-ossetia.svg b/core/img/flags/south-ossetia.svg new file mode 100644 index 000000000..cf135f8be --- /dev/null +++ b/core/img/flags/south-ossetia.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/sr.svg b/core/img/flags/sr.svg index 26993102c..31efc147a 100644 --- a/core/img/flags/sr.svg +++ b/core/img/flags/sr.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ss.svg b/core/img/flags/ss.svg index 11700377d..326713680 100644 --- a/core/img/flags/ss.svg +++ b/core/img/flags/ss.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/st.svg b/core/img/flags/st.svg index b7a4c862e..00a6e662f 100644 --- a/core/img/flags/st.svg +++ b/core/img/flags/st.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sv.svg b/core/img/flags/sv.svg index 5bf41ee8c..4afbde9be 100644 --- a/core/img/flags/sv.svg +++ b/core/img/flags/sv.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sx.svg b/core/img/flags/sx.svg index 280759a6d..0229a1437 100644 --- a/core/img/flags/sx.svg +++ b/core/img/flags/sx.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sy.svg b/core/img/flags/sy.svg index 3264bb205..07c601867 100644 --- a/core/img/flags/sy.svg +++ b/core/img/flags/sy.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/sz.svg b/core/img/flags/sz.svg index 3a23a7029..5fb849f1b 100644 --- a/core/img/flags/sz.svg +++ b/core/img/flags/sz.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/tatarstan.svg b/core/img/flags/tatarstan.svg new file mode 100644 index 000000000..e568ac892 --- /dev/null +++ b/core/img/flags/tatarstan.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/tc.svg b/core/img/flags/tc.svg index eab04b089..c94f03d6a 100644 --- a/core/img/flags/tc.svg +++ b/core/img/flags/tc.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/td.svg b/core/img/flags/td.svg index af3e64738..6c37c285a 100644 --- a/core/img/flags/td.svg +++ b/core/img/flags/td.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/tf.svg b/core/img/flags/tf.svg index d1653d4d3..0c0ec05d0 100644 --- a/core/img/flags/tf.svg +++ b/core/img/flags/tf.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/tg.svg b/core/img/flags/tg.svg index c19ecc3c7..6e57650bb 100644 --- a/core/img/flags/tg.svg +++ b/core/img/flags/tg.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/th.svg b/core/img/flags/th.svg index 2e35ad8c6..e4b51ef59 100644 --- a/core/img/flags/th.svg +++ b/core/img/flags/th.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/tibet.svg b/core/img/flags/tibet.svg new file mode 100644 index 000000000..54946db1d --- /dev/null +++ b/core/img/flags/tibet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/tj.svg b/core/img/flags/tj.svg index 719309587..a7b65274c 100644 --- a/core/img/flags/tj.svg +++ b/core/img/flags/tj.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/tk.svg b/core/img/flags/tk.svg index 921db5c1a..97ef87b0d 100644 --- a/core/img/flags/tk.svg +++ b/core/img/flags/tk.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/tl.svg b/core/img/flags/tl.svg index dced2801f..3581f9412 100644 --- a/core/img/flags/tl.svg +++ b/core/img/flags/tl.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/tm.svg b/core/img/flags/tm.svg index 5b661a0f0..aafdc17b3 100644 --- a/core/img/flags/tm.svg +++ b/core/img/flags/tm.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/tn.svg b/core/img/flags/tn.svg index 02f0336b6..a15f35017 100644 --- a/core/img/flags/tn.svg +++ b/core/img/flags/tn.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/to.svg b/core/img/flags/to.svg index 5fd994273..4b1173799 100644 --- a/core/img/flags/to.svg +++ b/core/img/flags/to.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/tr.svg b/core/img/flags/tr.svg index ca4fd230c..219f02139 100644 --- a/core/img/flags/tr.svg +++ b/core/img/flags/tr.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/transnistria.svg b/core/img/flags/transnistria.svg new file mode 100644 index 000000000..05acd1637 --- /dev/null +++ b/core/img/flags/transnistria.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/tt.svg b/core/img/flags/tt.svg index 52e108197..91170286b 100644 --- a/core/img/flags/tt.svg +++ b/core/img/flags/tt.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/turkic-states.svg b/core/img/flags/turkic-states.svg new file mode 100644 index 000000000..e189e28c6 --- /dev/null +++ b/core/img/flags/turkic-states.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/tv.svg b/core/img/flags/tv.svg index e61acad14..83171c45c 100644 --- a/core/img/flags/tv.svg +++ b/core/img/flags/tv.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/tw.svg b/core/img/flags/tw.svg index 0118184ab..be3526bf1 100644 --- a/core/img/flags/tw.svg +++ b/core/img/flags/tw.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/tz.svg b/core/img/flags/tz.svg index 69307455c..7f3b4c0c7 100644 --- a/core/img/flags/tz.svg +++ b/core/img/flags/tz.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ua.svg b/core/img/flags/ua.svg index d01094f0c..68725d3a6 100644 --- a/core/img/flags/ua.svg +++ b/core/img/flags/ua.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ug.svg b/core/img/flags/ug.svg index c75339821..cee8fa6c5 100644 --- a/core/img/flags/ug.svg +++ b/core/img/flags/ug.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/um.svg b/core/img/flags/um.svg index 4dfe2db18..c67ac254c 100644 --- a/core/img/flags/um.svg +++ b/core/img/flags/um.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/un.svg b/core/img/flags/un.svg new file mode 100644 index 000000000..2ece2ae45 --- /dev/null +++ b/core/img/flags/un.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/unasur.svg b/core/img/flags/unasur.svg index dbd4697ff..abe201f00 100644 --- a/core/img/flags/unasur.svg +++ b/core/img/flags/unasur.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/unknown.svg b/core/img/flags/unknown.svg new file mode 100644 index 000000000..1360c879f --- /dev/null +++ b/core/img/flags/unknown.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/us.svg b/core/img/flags/us.svg index 4dfe2db18..c67ac254c 100644 --- a/core/img/flags/us.svg +++ b/core/img/flags/us.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/uy.svg b/core/img/flags/uy.svg index 95367f20e..8562ed6ac 100644 --- a/core/img/flags/uy.svg +++ b/core/img/flags/uy.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/uz.svg b/core/img/flags/uz.svg index 988209161..5d0d26cdc 100644 --- a/core/img/flags/uz.svg +++ b/core/img/flags/uz.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/va.svg b/core/img/flags/va.svg index fe3e84f73..4dfe0c1e9 100644 --- a/core/img/flags/va.svg +++ b/core/img/flags/va.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/vc.svg b/core/img/flags/vc.svg index ca81abc05..e03c91cdd 100644 --- a/core/img/flags/vc.svg +++ b/core/img/flags/vc.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ve.svg b/core/img/flags/ve.svg index 4cbc14227..a98ae87f5 100644 --- a/core/img/flags/ve.svg +++ b/core/img/flags/ve.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/vg.svg b/core/img/flags/vg.svg index 777c3276e..06a040ab9 100644 --- a/core/img/flags/vg.svg +++ b/core/img/flags/vg.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/vi.svg b/core/img/flags/vi.svg index 0a1eb06ac..daae60b4a 100644 --- a/core/img/flags/vi.svg +++ b/core/img/flags/vi.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/vn.svg b/core/img/flags/vn.svg index 25b434bee..5dced02bb 100644 --- a/core/img/flags/vn.svg +++ b/core/img/flags/vn.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/vu.svg b/core/img/flags/vu.svg index 16ecb2b14..887cd8e29 100644 --- a/core/img/flags/vu.svg +++ b/core/img/flags/vu.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/wf.svg b/core/img/flags/wf.svg index afb81d983..f2978afed 100644 --- a/core/img/flags/wf.svg +++ b/core/img/flags/wf.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/ws.svg b/core/img/flags/ws.svg index 5d102ad04..d6de3f9d4 100644 --- a/core/img/flags/ws.svg +++ b/core/img/flags/ws.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/xk.svg b/core/img/flags/xk.svg new file mode 100644 index 000000000..aba4e3149 --- /dev/null +++ b/core/img/flags/xk.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/core/img/flags/ye.svg b/core/img/flags/ye.svg index daf851b50..63887710e 100644 --- a/core/img/flags/ye.svg +++ b/core/img/flags/ye.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/yt.svg b/core/img/flags/yt.svg index 713137e46..9a0fe8f51 100644 --- a/core/img/flags/yt.svg +++ b/core/img/flags/yt.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/za.svg b/core/img/flags/za.svg index cae964ad9..72bc3999a 100644 --- a/core/img/flags/za.svg +++ b/core/img/flags/za.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/zm.svg b/core/img/flags/zm.svg index eaae7c325..01034c5fd 100644 --- a/core/img/flags/zm.svg +++ b/core/img/flags/zm.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/img/flags/zw.svg b/core/img/flags/zw.svg index da7d78874..a87d24e17 100644 --- a/core/img/flags/zw.svg +++ b/core/img/flags/zw.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/core/package.json b/core/package.json index 33764f942..3d3652e0c 100644 --- a/core/package.json +++ b/core/package.json @@ -106,7 +106,7 @@ }, { "path": "./dist/css/tabler-flags.min.css", - "maxSize": "2.1 kB" + "maxSize": "2.5 kB" }, { "path": "./dist/css/tabler-flags.rtl.css", @@ -114,7 +114,7 @@ }, { "path": "./dist/css/tabler-flags.rtl.min.css", - "maxSize": "2.1 kB" + "maxSize": "2.5 kB" }, { "path": "./dist/css/tabler-marketing.css", diff --git a/core/scss/_variables-deprecated.scss b/core/scss/_variables-deprecated.scss index 5f1b7edfe..d7fb6536f 100644 --- a/core/scss/_variables-deprecated.scss +++ b/core/scss/_variables-deprecated.scss @@ -58,3 +58,14 @@ $navbar-dark-toggler-icon-bg: url("data:image/svg+xml, [flag.name, `\`${flag.flag}\``, `\`.flag-country-${flag.flag}\``]), -) +const categories = ['Countries', 'Territories', 'Unions', 'Other'] +const groups = categories.map((category) => ({ category, flags: flags.filter((flag) => flag.category === category) })) + +// Same list as tables for the page's .md mirror +const markdown = groups + .map(({ category, flags }) => { + const table = markdownTable( + ['Name', 'Code', 'CSS class'], + flags.map((flag) => [flag.name, `\`${flag.flag}\``, `\`.flag-country-${flag.flag}\``]), + ) + return `### ${category}\n\n${table}` + }) + .join('\n\n') --- - - - - - - - - - - - { - flags.map((flag) => ( - - - - - - - )) - } - -
FlagNameCountry codeCSS class
-
-
{flag.name} - {flag.flag} - - .flag-country-{flag.flag} -
+{ + groups.map(({ category, flags }) => ( + +

{category}

+ + + + + + + + + + + {flags.map((flag) => ( + + + + + + + ))} + +
FlagNameCodeCSS class
+
+
{flag.name} + {flag.flag} + + .flag-country-{flag.flag} +
+
+ )) +} diff --git a/docs/content/ui/plugins/flags.mdx b/docs/content/ui/plugins/flags.mdx index 17f552040..e9d2771a4 100644 --- a/docs/content/ui/plugins/flags.mdx +++ b/docs/content/ui/plugins/flags.mdx @@ -1,6 +1,6 @@ --- title: Flags -summary: The flags plugin adds country flags as CSS classes, for language switchers, address forms and phone number fields. +summary: The flags plugin adds over 300 country, territory and organisation flags as CSS classes, for language switchers, address forms and phone number fields. description: Display country flags with the Tabler flags plugin. Add a flag with two CSS classes and scale it with ready-made size modifiers. css-plugins: [flags] source: core/scss/ui/_flags.scss @@ -10,7 +10,7 @@ classnames: desc: Container element, a rounded rectangle holding one flag color: - class: flag-country-{code} - desc: The country to show, by ISO code - for example flag-country-pl or flag-country-us + desc: The flag to show, by ISO code or slug - for example flag-country-pl, flag-country-us or flag-country-european-union size: - class: flag-{size} desc: From flag-xxs to flag-2xl; the default matches an avatar @@ -38,7 +38,9 @@ Add the `flag` class to an element and a country class from the list below. ## Country flags -The country class is `flag-country-` followed by the two-letter country code, for example `.flag-country-ad` for Andorra. The full list is at the end of this page. +The country class is `flag-country-` followed by the two-letter ISO code, for example `.flag-country-ad` for Andorra. Flags of organisations and other flags without an ISO code use a slug instead, for example `.flag-country-african-union`. The full list is at the end of this page. + +The flags come from [Tabler Flags](https://github.com/tabler/tabler-flags), which also ships them as SVG and PNG files and as React, Vue, Preact and Astro components. @@ -60,7 +62,7 @@ Add a size class from `flag-xs` to `flag-xl` to scale the flag. The names follow ## Flags list -All available countries: +All available flags, grouped by category: diff --git a/package.json b/package.json index 01286270a..efd3e032a 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,7 @@ "generate:sri": "tsx .build/generate-sri.ts", "import:icons": "tsx .build/import-icons.ts", "import:illustrations": "tsx .build/import-illustrations.ts", + "import:flags": "tsx .build/import-flags.ts", "import:payments": "tsx .build/import-payments.ts", "optimize:svg": "tsx .build/optimize-svg.ts", "update:icons": "pnpm up -w @tabler/icons@latest && pnpm run import:icons", diff --git a/preview/pages/flags.astro b/preview/pages/flags.astro index 137a98fb7..090e296e8 100644 --- a/preview/pages/flags.astro +++ b/preview/pages/flags.astro @@ -7,29 +7,41 @@ import flags from '@data/flags.json' import CardTitle from '@ui/CardTitle.astro' import DocsLink from '@ui/DocsLink.astro' +const categories = ['Countries', 'Territories', 'Unions', 'Other'] +const groups = categories.map((category) => ({ category, flags: flags.filter((flag) => flag.category === category) })) + // 21 filler divs for flexbox layout. const fillers = Array.from({ length: 21 }) --- - - - List of all flags - - -
-
- { - flags.map((country) => ( - - - - )) - } - {fillers.map(() =>
)} +
+ { + groups.map(({ category, flags }) => ( +
+ + + {category} + {flags.length} flags + + +
+
+ {flags.map((flag) => ( + + + + ))} + {fillers.map(() => ( +
+ ))} +
+
+ +
-
- - + )) + } +
diff --git a/screenshots/pages/flags-list.astro b/screenshots/pages/flags-list.astro index 6064b7bbf..ee78bbb40 100644 --- a/screenshots/pages/flags-list.astro +++ b/screenshots/pages/flags-list.astro @@ -2,8 +2,9 @@ import ScreenshotLayout from '../layouts/ScreenshotLayout.astro' import allFlags from '@data/flags.json' -// 12 most popular countries, by population/economy/recognizability. -const popularCodes = ['us', 'gb', 'de', 'fr', 'cn', 'jp', 'in', 'br', 'ca', 'au', 'pl', 'es'] +// 16 popular flags: the most recognizable countries plus two organisations +// (EU, UN) from the Tabler Flags set, in a 4x4 grid. +const popularCodes = ['us', 'gb', 'de', 'fr', 'es', 'it', 'pl', 'ua', 'cn', 'jp', 'in', 'kr', 'br', 'ca', 'eu', 'un'] const flags = popularCodes.map((code) => allFlags.find((country) => country.flag === code)).filter((country) => country !== undefined) --- diff --git a/shared/data/flags.json b/shared/data/flags.json index 381483c57..79bd7d41b 100644 --- a/shared/data/flags.json +++ b/shared/data/flags.json @@ -1,1006 +1,1522 @@ [ { - "name": "Andorra", - "flag": "ad" - }, - { - "name": "United Arab Emirates", - "flag": "ae" + "name": "Abkhazia", + "flag": "abkhazia", + "category": "Territories" }, { "name": "Afghanistan", - "flag": "af" + "flag": "af", + "category": "Countries" }, { - "name": "Antigua", - "flag": "ag" + "name": "African Union", + "flag": "african-union", + "category": "Unions" }, { - "name": "Anguilla", - "flag": "ai" + "name": "Åland Islands", + "flag": "ax", + "category": "Territories" }, { - "name": "Armenia", - "flag": "am" - }, - { - "name": "Angolan", - "flag": "ao" - }, - { - "name": "Antarctica", - "flag": "aq" - }, - { - "name": "Argentina", - "flag": "ar" - }, - { - "name": "American Samoa", - "flag": "as" - }, - { - "name": "Austria", - "flag": "at" - }, - { - "name": "Australia", - "flag": "au" - }, - { - "name": "Aruba", - "flag": "aw" - }, - { - "name": "Aslan Islands", - "flag": "ax" - }, - { - "name": "Azerbaijan", - "flag": "az" - }, - { - "name": "Bosnian", - "flag": "ba" - }, - { - "name": "Barbados", - "flag": "bb" - }, - { - "name": "Belgium", - "flag": "be" - }, - { - "name": "Burkina Faso", - "flag": "bf" - }, - { - "name": "Bulgaria", - "flag": "bg" - }, - { - "name": "Bahrain", - "flag": "bh" - }, - { - "name": "Burundi", - "flag": "bi" - }, - { - "name": "Benin", - "flag": "bj" - }, - { - "name": "Saint-Barthélemy", - "flag": "bl" - }, - { - "name": "Bermuda", - "flag": "bm" - }, - { - "name": "Bruneian", - "flag": "bn" - }, - { - "name": "Bolivia", - "flag": "bo" - }, - { - "name": "Bonaire", - "flag": "bq-bo" - }, - { - "name": "Brazil", - "flag": "br" - }, - { - "name": "Bahamas", - "flag": "bs" - }, - { - "name": "Bhutan", - "flag": "bt" - }, - { - "name": "Bouvet Island", - "flag": "bv" - }, - { - "name": "Batswana", - "flag": "bw" - }, - { - "name": "Belarus", - "flag": "by" - }, - { - "name": "Belize", - "flag": "bz" - }, - { - "name": "Canada", - "flag": "ca" - }, - { - "name": "Cocos Island", - "flag": "cc" - }, - { - "name": "Democratic Republic of Congo", - "flag": "cd" - }, - { - "name": "Central African Republic", - "flag": "cf" - }, - { - "name": "Republic of the Congo", - "flag": "cg" - }, - { - "name": "Switzerland", - "flag": "ch" - }, - { - "name": "Ivory Coast", - "flag": "ci" - }, - { - "name": "Cook Island", - "flag": "ck" - }, - { - "name": "Chile", - "flag": "cl" - }, - { - "name": "Cameroon", - "flag": "cm" - }, - { - "name": "China", - "flag": "cn" - }, - { - "name": "Colombia", - "flag": "co" - }, - { - "name": "Costa Rica", - "flag": "cr" - }, - { - "name": "Cuba", - "flag": "cu" - }, - { - "name": "Cape Verde", - "flag": "cv" - }, - { - "name": "Curacao", - "flag": "cw" - }, - { - "name": "Christmas Island", - "flag": "cx" - }, - { - "name": "Cyprus", - "flag": "cy" - }, - { - "name": "Czech Republic", - "flag": "cz" - }, - { - "name": "Germany", - "flag": "de" - }, - { - "name": "Djibouti", - "flag": "dj" - }, - { - "name": "Denmark", - "flag": "dk" - }, - { - "name": "Dominica", - "flag": "dm" - }, - { - "name": "Dominican Republic", - "flag": "do" + "name": "Albania", + "flag": "al", + "category": "Countries" }, { "name": "Algeria", - "flag": "dz" + "flag": "dz", + "category": "Countries" }, { - "name": "Ecuador", - "flag": "ec" + "name": "American Samoa", + "flag": "as", + "category": "Territories" }, { - "name": "Estonia", - "flag": "ee" + "name": "Andorra", + "flag": "ad", + "category": "Countries" }, { - "name": "Egypt", - "flag": "eg" + "name": "Angola", + "flag": "ao", + "category": "Countries" }, { - "name": "Sahrawi", - "flag": "eh" + "name": "Anguilla", + "flag": "ai", + "category": "Territories" }, { - "name": "Eritrea", - "flag": "er" + "name": "Antarctica", + "flag": "aq", + "category": "Territories" }, { - "name": "Spain", - "flag": "es" + "name": "Antigua and Barbuda", + "flag": "ag", + "category": "Countries" }, { - "name": "Ethiopia", - "flag": "et" + "name": "Arab League", + "flag": "arab-league", + "category": "Unions" }, { - "name": "European Union", - "flag": "eu" + "name": "Argentina", + "flag": "ar", + "category": "Countries" }, { - "name": "Finland", - "flag": "fi" + "name": "Armenia", + "flag": "am", + "category": "Countries" }, { - "name": "Fiji", - "flag": "fj" + "name": "Aruba", + "flag": "aw", + "category": "Territories" }, { - "name": "Falkland Islands", - "flag": "fk" + "name": "Ascension Island", + "flag": "sh-ac", + "category": "Territories" }, { - "name": "Federate States of Micronesia", - "flag": "fm" + "name": "ASEAN Union", + "flag": "asean", + "category": "Unions" }, { - "name": "Faroe Islands", - "flag": "fo" + "name": "Australia", + "flag": "au", + "category": "Countries" }, { - "name": "France", - "flag": "fr" + "name": "Austria", + "flag": "at", + "category": "Countries" }, { - "name": "Gabon", - "flag": "ga" + "name": "Azerbaijan", + "flag": "az", + "category": "Countries" }, { - "name": "Great Britain", - "flag": "gb" + "name": "Bahamas", + "flag": "bs", + "category": "Countries" }, { - "name": "England", - "flag": "gb-eng" + "name": "Bahrain", + "flag": "bh", + "category": "Countries" }, { - "name": "Nothern Ireland", - "flag": "gb-nir" + "name": "Bangladesh", + "flag": "bd", + "category": "Countries" }, { - "name": "Scotland", - "flag": "gb-sct" + "name": "Barbados", + "flag": "bb", + "category": "Countries" }, { - "name": "Wales", - "flag": "gb-wls" + "name": "Basque Country", + "flag": "es-pv", + "category": "Territories" }, { - "name": "Grenada", - "flag": "gd" + "name": "Belarus", + "flag": "by", + "category": "Countries" }, { - "name": "Georgia", - "flag": "ge" + "name": "Belgium", + "flag": "be", + "category": "Countries" }, { - "name": "Guyana", - "flag": "gf" + "name": "Belize", + "flag": "bz", + "category": "Countries" }, { - "name": "Guernsey", - "flag": "gg" + "name": "Benin", + "flag": "bj", + "category": "Countries" }, { - "name": "Ghana", - "flag": "gh" + "name": "Bermuda", + "flag": "bm", + "category": "Territories" }, { - "name": "Gibraltar", - "flag": "gi" + "name": "Bhutan", + "flag": "bt", + "category": "Countries" }, { - "name": "Greenland", - "flag": "gl" + "name": "Bolivia", + "flag": "bo", + "category": "Countries" }, { - "name": "Gambia", - "flag": "gm" + "name": "Bonaire", + "flag": "bq1", + "category": "Territories" }, { - "name": "Guinea", - "flag": "gn" + "name": "Bosnia and Herzegovina", + "flag": "ba", + "category": "Countries" }, { - "name": "Guadeloupe", - "flag": "gp" + "name": "Botswana", + "flag": "bw", + "category": "Countries" }, { - "name": "Equatorial Guinea", - "flag": "gq" + "name": "Bouvet Island", + "flag": "bv", + "category": "Territories" }, { - "name": "Greece", - "flag": "gr" - }, - { - "name": "South Georgia", - "flag": "gs" - }, - { - "name": "Guatemala", - "flag": "gt" - }, - { - "name": "Guam", - "flag": "gu" - }, - { - "name": "Guinea-Bissau", - "flag": "gw" - }, - { - "name": "Guyana", - "flag": "gy" - }, - { - "name": "Hong Kong", - "flag": "hk" - }, - { - "name": "Heard and McDonald Islands", - "flag": "hm" - }, - { - "name": "Honduras", - "flag": "hn" - }, - { - "name": "Croatia", - "flag": "hr" - }, - { - "name": "Haiti", - "flag": "ht" - }, - { - "name": "Hungary", - "flag": "hu" - }, - { - "name": "Indonesia", - "flag": "id" - }, - { - "name": "Ireland", - "flag": "ie" - }, - { - "name": "Israel", - "flag": "il" - }, - { - "name": "Isle of Man", - "flag": "im" - }, - { - "name": "India", - "flag": "in" + "name": "Brazil", + "flag": "br", + "category": "Countries" }, { "name": "British Indian Ocean Territory", - "flag": "io" - }, - { - "name": "Iraq", - "flag": "iq" - }, - { - "name": "Iran", - "flag": "ir" - }, - { - "name": "Iceland", - "flag": "is" - }, - { - "name": "Italy", - "flag": "it" - }, - { - "name": "Jersey", - "flag": "je" - }, - { - "name": "Jamaica", - "flag": "jm" - }, - { - "name": "Jordan", - "flag": "jo" - }, - { - "name": "Japan", - "flag": "jp" - }, - { - "name": "Kenya", - "flag": "ke" - }, - { - "name": "Kyrgyzstan", - "flag": "kg" - }, - { - "name": "Cambodia", - "flag": "kh" - }, - { - "name": "Kiribati", - "flag": "ki" - }, - { - "name": "Comoros", - "flag": "km" - }, - { - "name": "Saint Kitts and Nevis", - "flag": "kn" - }, - { - "name": "North Korea", - "flag": "kp" - }, - { - "name": "South Korea", - "flag": "kr" - }, - { - "name": "Kuwait", - "flag": "kw" - }, - { - "name": "Cayman Islands", - "flag": "ky" - }, - { - "name": "Kazakhstan", - "flag": "kz" - }, - { - "name": "Laos", - "flag": "la" - }, - { - "name": "Lebanese", - "flag": "lb" - }, - { - "name": "Saint Lucia", - "flag": "lc" - }, - { - "name": "Liechtenstein", - "flag": "li" - }, - { - "name": "Sri Lanka", - "flag": "lk" - }, - { - "name": "Liberia", - "flag": "lr" - }, - { - "name": "Lesotho", - "flag": "ls" - }, - { - "name": "Lithuania", - "flag": "lt" - }, - { - "name": "Luxembourg", - "flag": "lu" - }, - { - "name": "Latvia", - "flag": "lv" - }, - { - "name": "Libya", - "flag": "ly" - }, - { - "name": "Morocco", - "flag": "ma" - }, - { - "name": "Monaco", - "flag": "mc" - }, - { - "name": "Moldova", - "flag": "md" - }, - { - "name": "Montenegro", - "flag": "me" - }, - { - "name": "Saint Martin", - "flag": "mf" - }, - { - "name": "Madagascar", - "flag": "mg" - }, - { - "name": "Marshall Islands", - "flag": "mh" - }, - { - "name": "Macedonia", - "flag": "mk" - }, - { - "name": "Mali", - "flag": "ml" - }, - { - "name": "Myanmar", - "flag": "mm" - }, - { - "name": "Mongolia", - "flag": "mn" - }, - { - "name": "Macao", - "flag": "mo" - }, - { - "name": "Nothern Mariana Islands", - "flag": "mp" - }, - { - "name": "Martinique", - "flag": "mq" - }, - { - "name": "Mauritania", - "flag": "mr" - }, - { - "name": "Montserrat", - "flag": "ms" - }, - { - "name": "Malta", - "flag": "mt" - }, - { - "name": "Mauritius", - "flag": "mu" - }, - { - "name": "Maldives", - "flag": "mv" - }, - { - "name": "Malawi", - "flag": "mw" - }, - { - "name": "Mexico", - "flag": "mx" - }, - { - "name": "Malaysia", - "flag": "my" - }, - { - "name": "Mozambique", - "flag": "mz" - }, - { - "name": "Namibia", - "flag": "na" - }, - { - "name": "New Caledonia", - "flag": "nc" - }, - { - "name": "Niger", - "flag": "ne" - }, - { - "name": "Norfolk Island", - "flag": "nf" - }, - { - "name": "Nigeria", - "flag": "ng" - }, - { - "name": "Nicaragua", - "flag": "ni" - }, - { - "name": "Norway", - "flag": "no" - }, - { - "name": "Nepal", - "flag": "np" - }, - { - "name": "Nauruan", - "flag": "nr" - }, - { - "name": "Niger", - "flag": "nu" - }, - { - "name": "New Zealand", - "flag": "nz" - }, - { - "name": "Oman", - "flag": "om" - }, - { - "name": "Panama", - "flag": "pa" - }, - { - "name": "Peru", - "flag": "pe" - }, - { - "name": "French Polynesia", - "flag": "pf" - }, - { - "name": "Papua New Guinea", - "flag": "pg" - }, - { - "name": "Philippines", - "flag": "ph" - }, - { - "name": "Pakistan", - "flag": "pk" - }, - { - "name": "Poland", - "flag": "pl" - }, - { - "name": "Saint Pierre", - "flag": "pm" - }, - { - "name": "Pitcairn Islands", - "flag": "pn" - }, - { - "name": "Puerto Rico", - "flag": "pr" - }, - { - "name": "Palestine", - "flag": "ps" - }, - { - "name": "Portugal", - "flag": "pt" - }, - { - "name": "Palau", - "flag": "pw" - }, - { - "name": "Paraguay", - "flag": "py" - }, - { - "name": "Qatar", - "flag": "qa" - }, - { - "name": "Reunion Island", - "flag": "re" - }, - { - "name": "Romania", - "flag": "ro" - }, - { - "name": "Serbia", - "flag": "rs" - }, - { - "name": "Russia", - "flag": "ru" - }, - { - "name": "Rwanda", - "flag": "rw" - }, - { - "name": "Saudi Arabia", - "flag": "sa" - }, - { - "name": "Solomon Islands", - "flag": "sb" - }, - { - "name": "Seychelles", - "flag": "sc" - }, - { - "name": "Sudan", - "flag": "sd" - }, - { - "name": "Sweden", - "flag": "se" - }, - { - "name": "Singapore", - "flag": "sg" - }, - { - "name": "Saint Helena", - "flag": "sh" - }, - { - "name": "Slovenia", - "flag": "si" - }, - { - "name": "Svalbard Island", - "flag": "sj" - }, - { - "name": "Slovakia", - "flag": "sk" - }, - { - "name": "Sierra Leone", - "flag": "sl" - }, - { - "name": "San Marino", - "flag": "sm" - }, - { - "name": "Senegal", - "flag": "sn" - }, - { - "name": "Somalia", - "flag": "so" - }, - { - "name": "Suriname", - "flag": "sr" - }, - { - "name": "South Sudan", - "flag": "ss" - }, - { - "name": "Sao Tome", - "flag": "st" - }, - { - "name": "El Salvador", - "flag": "sv" - }, - { - "name": "Sint Maarten", - "flag": "sx" - }, - { - "name": "Syria", - "flag": "sy" - }, - { - "name": "Swaziland", - "flag": "sz" - }, - { - "name": "Turks and Caicos", - "flag": "tc" - }, - { - "name": "Chad", - "flag": "td" - }, - { - "name": "French Southern and Antarctic Lands", - "flag": "tf" - }, - { - "name": "Togo", - "flag": "tg" - }, - { - "name": "Thailand", - "flag": "th" - }, - { - "name": "Tajikistan", - "flag": "tj" - }, - { - "name": "Tokelau", - "flag": "tk" - }, - { - "name": "Timor Leste", - "flag": "tl" - }, - { - "name": "Turkmenistan", - "flag": "tm" - }, - { - "name": "Tunisia", - "flag": "tn" - }, - { - "name": "Tonga", - "flag": "to" - }, - { - "name": "Turkey", - "flag": "tr" - }, - { - "name": "Trinidad and Tobago", - "flag": "tt" - }, - { - "name": "Tuvalu", - "flag": "tv" - }, - { - "name": "Taiwan", - "flag": "tw" - }, - { - "name": "Tanzania", - "flag": "tz" - }, - { - "name": "Ukraine", - "flag": "ua" - }, - { - "name": "Uganda", - "flag": "ug" - }, - { - "name": "United States Minor Islands", - "flag": "um" - }, - { - "name": "United States of America", - "flag": "us" - }, - { - "name": "Uruguay", - "flag": "uy" - }, - { - "name": "Uzbekistan", - "flag": "uz" - }, - { - "name": "Vatican City", - "flag": "va" - }, - { - "name": "Saint Vincent", - "flag": "vc" - }, - { - "name": "Venezuela", - "flag": "ve" + "flag": "io", + "category": "Territories" }, { "name": "British Virgin Islands", - "flag": "vg" + "flag": "vg", + "category": "Territories" }, { - "name": "Virgiin Islands", - "flag": "vi" + "name": "Brunei", + "flag": "bn", + "category": "Countries" }, { - "name": "Vietnam", - "flag": "vn" + "name": "Bulgaria", + "flag": "bg", + "category": "Countries" }, { - "name": "Vanuatu", - "flag": "vu" + "name": "Burkina Faso", + "flag": "bf", + "category": "Countries" }, { - "name": "Wallis and Futuna", - "flag": "wf" + "name": "Burundi", + "flag": "bi", + "category": "Countries" }, { - "name": "Samoa", - "flag": "ws" + "name": "Cabinda", + "flag": "cabinda", + "category": "Territories" }, { - "name": "Yemen", - "flag": "ye" + "name": "Cambodia", + "flag": "kh", + "category": "Countries" + }, + { + "name": "Cameroon", + "flag": "cm", + "category": "Countries" + }, + { + "name": "Canada", + "flag": "ca", + "category": "Countries" + }, + { + "name": "Canary Islands", + "flag": "ic", + "category": "Territories" + }, + { + "name": "Cape Verde", + "flag": "cv", + "category": "Countries" + }, + { + "name": "Caribbean Netherlands", + "flag": "bq", + "category": "Territories" + }, + { + "name": "Catalonia", + "flag": "es-ct", + "category": "Territories" + }, + { + "name": "Cayman Islands", + "flag": "ky", + "category": "Territories" + }, + { + "name": "Central African Republic", + "flag": "cf", + "category": "Countries" + }, + { + "name": "Central European Free Trade Agreement", + "flag": "cefta", + "category": "Unions" + }, + { + "name": "Chad", + "flag": "td", + "category": "Countries" + }, + { + "name": "Chechnya", + "flag": "chechnya", + "category": "Territories" + }, + { + "name": "Chequered", + "flag": "chequered", + "category": "Other" + }, + { + "name": "Chile", + "flag": "cl", + "category": "Countries" + }, + { + "name": "China", + "flag": "cn", + "category": "Countries" + }, + { + "name": "Christmas Island", + "flag": "cx", + "category": "Territories" + }, + { + "name": "Cocos (Keeling) Islands", + "flag": "cc", + "category": "Territories" + }, + { + "name": "Colombia", + "flag": "co", + "category": "Countries" + }, + { + "name": "Commonwealth of Independent States", + "flag": "commonwealth-of-independent-states", + "category": "Unions" + }, + { + "name": "Commonwealth of Nations", + "flag": "commonwealth-of-nations", + "category": "Unions" + }, + { + "name": "Comoros", + "flag": "km", + "category": "Countries" + }, + { + "name": "Cook Islands", + "flag": "ck", + "category": "Territories" + }, + { + "name": "Costa Rica", + "flag": "cr", + "category": "Countries" + }, + { + "name": "Croatia", + "flag": "hr", + "category": "Countries" + }, + { + "name": "Cuba", + "flag": "cu", + "category": "Countries" + }, + { + "name": "Curaçao", + "flag": "cw", + "category": "Territories" + }, + { + "name": "Cyprus", + "flag": "cy", + "category": "Countries" + }, + { + "name": "Czechia", + "flag": "cz", + "category": "Countries" + }, + { + "name": "Democratic Republic of the Congo", + "flag": "cd", + "category": "Countries" + }, + { + "name": "Denmark", + "flag": "dk", + "category": "Countries" + }, + { + "name": "Diego Garcia", + "flag": "dg", + "category": "Territories" + }, + { + "name": "Diver Down", + "flag": "diver-down", + "category": "Other" + }, + { + "name": "Djibouti", + "flag": "dj", + "category": "Countries" + }, + { + "name": "Dominica", + "flag": "dm", + "category": "Countries" + }, + { + "name": "Dominican Republic", + "flag": "do", + "category": "Countries" + }, + { + "name": "East African Community", + "flag": "eac", + "category": "Unions" + }, + { + "name": "East Timor", + "flag": "tl", + "category": "Countries" + }, + { + "name": "Ecuador", + "flag": "ec", + "category": "Countries" + }, + { + "name": "Egypt", + "flag": "eg", + "category": "Countries" + }, + { + "name": "El Salvador", + "flag": "sv", + "category": "Countries" + }, + { + "name": "England", + "flag": "gb-eng", + "category": "Territories" + }, + { + "name": "Equatorial Guinea", + "flag": "gq", + "category": "Countries" + }, + { + "name": "Eritrea", + "flag": "er", + "category": "Countries" + }, + { + "name": "Estonia", + "flag": "ee", + "category": "Countries" + }, + { + "name": "Eswatini", + "flag": "sz", + "category": "Countries" + }, + { + "name": "Ethiopia", + "flag": "et", + "category": "Countries" + }, + { + "name": "European Union", + "flag": "eu", + "category": "Unions" + }, + { + "name": "Falkland Islands", + "flag": "fk", + "category": "Territories" + }, + { + "name": "Faroe Islands", + "flag": "fo", + "category": "Territories" + }, + { + "name": "Fiji", + "flag": "fj", + "category": "Countries" + }, + { + "name": "Finland", + "flag": "fi", + "category": "Countries" + }, + { + "name": "France", + "flag": "fr", + "category": "Countries" + }, + { + "name": "French Guiana", + "flag": "gf", + "category": "Territories" + }, + { + "name": "French Polynesia", + "flag": "pf", + "category": "Territories" + }, + { + "name": "French Southern Territories", + "flag": "tf", + "category": "Territories" + }, + { + "name": "Gabon", + "flag": "ga", + "category": "Countries" + }, + { + "name": "Galicia", + "flag": "es-ga", + "category": "Territories" + }, + { + "name": "Gambia", + "flag": "gm", + "category": "Countries" + }, + { + "name": "Georgia", + "flag": "ge", + "category": "Countries" + }, + { + "name": "Germany", + "flag": "de", + "category": "Countries" + }, + { + "name": "Ghana", + "flag": "gh", + "category": "Countries" + }, + { + "name": "Gibraltar", + "flag": "gi", + "category": "Territories" + }, + { + "name": "Greece", + "flag": "gr", + "category": "Countries" + }, + { + "name": "Greenland", + "flag": "gl", + "category": "Territories" + }, + { + "name": "Grenada", + "flag": "gd", + "category": "Countries" + }, + { + "name": "Guadeloupe", + "flag": "gp", + "category": "Territories" + }, + { + "name": "Guam", + "flag": "gu", + "category": "Territories" + }, + { + "name": "Guatemala", + "flag": "gt", + "category": "Countries" + }, + { + "name": "Guernsey", + "flag": "gg", + "category": "Territories" + }, + { + "name": "Guinea", + "flag": "gn", + "category": "Countries" + }, + { + "name": "Guinea-Bissau", + "flag": "gw", + "category": "Countries" + }, + { + "name": "Guyana", + "flag": "gy", + "category": "Countries" + }, + { + "name": "Haiti", + "flag": "ht", + "category": "Countries" + }, + { + "name": "Heard and McDonald Islands", + "flag": "hm", + "category": "Territories" + }, + { + "name": "Honduras", + "flag": "hn", + "category": "Countries" + }, + { + "name": "Hong Kong", + "flag": "hk", + "category": "Territories" + }, + { + "name": "Hungary", + "flag": "hu", + "category": "Countries" + }, + { + "name": "Iceland", + "flag": "is", + "category": "Countries" + }, + { + "name": "India", + "flag": "in", + "category": "Countries" + }, + { + "name": "Indonesia", + "flag": "id", + "category": "Countries" + }, + { + "name": "Iran", + "flag": "ir", + "category": "Countries" + }, + { + "name": "Iraq", + "flag": "iq", + "category": "Countries" + }, + { + "name": "Ireland", + "flag": "ie", + "category": "Countries" + }, + { + "name": "Isle of Man", + "flag": "im", + "category": "Territories" + }, + { + "name": "Israel", + "flag": "il", + "category": "Countries" + }, + { + "name": "Italy", + "flag": "it", + "category": "Countries" + }, + { + "name": "Ivory Coast", + "flag": "ci", + "category": "Countries" + }, + { + "name": "Jamaica", + "flag": "jm", + "category": "Countries" + }, + { + "name": "Japan", + "flag": "jp", + "category": "Countries" + }, + { + "name": "Jersey", + "flag": "je", + "category": "Territories" + }, + { + "name": "Jordan", + "flag": "jo", + "category": "Countries" + }, + { + "name": "Jubaland", + "flag": "jubaland", + "category": "Territories" + }, + { + "name": "Kazakhstan", + "flag": "kz", + "category": "Countries" + }, + { + "name": "Kenya", + "flag": "ke", + "category": "Countries" + }, + { + "name": "Kiribati", + "flag": "ki", + "category": "Countries" + }, + { + "name": "Kosovo", + "flag": "xk", + "category": "Countries" + }, + { + "name": "Kurdistan", + "flag": "kurdistan", + "category": "Territories" + }, + { + "name": "Kuwait", + "flag": "kw", + "category": "Countries" + }, + { + "name": "Kyrgyzstan", + "flag": "kg", + "category": "Countries" + }, + { + "name": "Laos", + "flag": "la", + "category": "Countries" + }, + { + "name": "Latvia", + "flag": "lv", + "category": "Countries" + }, + { + "name": "Lebanon", + "flag": "lb", + "category": "Countries" + }, + { + "name": "Lesotho", + "flag": "ls", + "category": "Countries" + }, + { + "name": "Liberia", + "flag": "lr", + "category": "Countries" + }, + { + "name": "Libya", + "flag": "ly", + "category": "Countries" + }, + { + "name": "Liechtenstein", + "flag": "li", + "category": "Countries" + }, + { + "name": "Lithuania", + "flag": "lt", + "category": "Countries" + }, + { + "name": "Luxembourg", + "flag": "lu", + "category": "Countries" + }, + { + "name": "Macau", + "flag": "mo", + "category": "Territories" + }, + { + "name": "Madagascar", + "flag": "mg", + "category": "Countries" + }, + { + "name": "Malawi", + "flag": "mw", + "category": "Countries" + }, + { + "name": "Malaysia", + "flag": "my", + "category": "Countries" + }, + { + "name": "Maldives", + "flag": "mv", + "category": "Countries" + }, + { + "name": "Mali", + "flag": "ml", + "category": "Countries" + }, + { + "name": "Malta", + "flag": "mt", + "category": "Countries" + }, + { + "name": "Maltese Cross", + "flag": "maltese-cross", + "category": "Other" + }, + { + "name": "Marshall Islands", + "flag": "mh", + "category": "Countries" + }, + { + "name": "Martinique", + "flag": "mq", + "category": "Territories" + }, + { + "name": "Mauritania", + "flag": "mr", + "category": "Countries" + }, + { + "name": "Mauritius", + "flag": "mu", + "category": "Countries" }, { "name": "Mayotte", - "flag": "yt" + "flag": "yt", + "category": "Territories" + }, + { + "name": "Mercosur", + "flag": "mercosur", + "category": "Unions" + }, + { + "name": "Mexico", + "flag": "mx", + "category": "Countries" + }, + { + "name": "Micronesia", + "flag": "fm", + "category": "Countries" + }, + { + "name": "Moldova", + "flag": "md", + "category": "Countries" + }, + { + "name": "Monaco", + "flag": "mc", + "category": "Countries" + }, + { + "name": "Mongolia", + "flag": "mn", + "category": "Countries" + }, + { + "name": "Montenegro", + "flag": "me", + "category": "Countries" + }, + { + "name": "Montserrat", + "flag": "ms", + "category": "Territories" + }, + { + "name": "Morocco", + "flag": "ma", + "category": "Countries" + }, + { + "name": "Mozambique", + "flag": "mz", + "category": "Countries" + }, + { + "name": "Myanmar", + "flag": "mm", + "category": "Countries" + }, + { + "name": "Namibia", + "flag": "na", + "category": "Countries" + }, + { + "name": "NATO", + "flag": "nato", + "category": "Unions" + }, + { + "name": "Nauru", + "flag": "nr", + "category": "Countries" + }, + { + "name": "Nepal", + "flag": "np", + "category": "Countries" + }, + { + "name": "Netherlands", + "flag": "nl", + "category": "Countries" + }, + { + "name": "New Caledonia", + "flag": "nc", + "category": "Territories" + }, + { + "name": "New Zealand", + "flag": "nz", + "category": "Countries" + }, + { + "name": "Nicaragua", + "flag": "ni", + "category": "Countries" + }, + { + "name": "Niger", + "flag": "ne", + "category": "Countries" + }, + { + "name": "Nigeria", + "flag": "ng", + "category": "Countries" + }, + { + "name": "Niue", + "flag": "nu", + "category": "Territories" + }, + { + "name": "Nordic Council", + "flag": "nordic-council", + "category": "Unions" + }, + { + "name": "Norfolk Island", + "flag": "nf", + "category": "Territories" + }, + { + "name": "North Korea", + "flag": "kp", + "category": "Countries" + }, + { + "name": "North Macedonia", + "flag": "mk", + "category": "Countries" + }, + { + "name": "Northern Cyprus", + "flag": "northern-cyprus", + "category": "Territories" + }, + { + "name": "Northern Ireland", + "flag": "gb-nir", + "category": "Territories" + }, + { + "name": "Northern Mariana Islands", + "flag": "mp", + "category": "Territories" + }, + { + "name": "Norway", + "flag": "no", + "category": "Countries" + }, + { + "name": "Olympic", + "flag": "olympic", + "category": "Other" + }, + { + "name": "Oman", + "flag": "om", + "category": "Countries" + }, + { + "name": "Pacific Community", + "flag": "pc", + "category": "Unions" + }, + { + "name": "Pakistan", + "flag": "pk", + "category": "Countries" + }, + { + "name": "Palau", + "flag": "pw", + "category": "Countries" + }, + { + "name": "Pan-European Union", + "flag": "paneuropean-union", + "category": "Unions" + }, + { + "name": "Panama", + "flag": "pa", + "category": "Countries" + }, + { + "name": "Papua New Guinea", + "flag": "pg", + "category": "Countries" + }, + { + "name": "Paraguay", + "flag": "py", + "category": "Countries" + }, + { + "name": "Paraolympic", + "flag": "paraolympic", + "category": "Other" + }, + { + "name": "Peru", + "flag": "pe", + "category": "Countries" + }, + { + "name": "Philippines", + "flag": "ph", + "category": "Countries" + }, + { + "name": "Pirate", + "flag": "pirate", + "category": "Other" + }, + { + "name": "Pitcairn Islands", + "flag": "pn", + "category": "Territories" + }, + { + "name": "Poland", + "flag": "pl", + "category": "Countries" + }, + { + "name": "Portugal", + "flag": "pt", + "category": "Countries" + }, + { + "name": "Puerto Rico", + "flag": "pr", + "category": "Territories" + }, + { + "name": "Qatar", + "flag": "qa", + "category": "Countries" + }, + { + "name": "Rainbow", + "flag": "rainbow", + "category": "Other" + }, + { + "name": "Red Crescent", + "flag": "red-crescent", + "category": "Other" + }, + { + "name": "Red Cross", + "flag": "red-cross", + "category": "Other" + }, + { + "name": "Republic of the Congo", + "flag": "cg", + "category": "Countries" + }, + { + "name": "Réunion", + "flag": "re", + "category": "Territories" + }, + { + "name": "Romania", + "flag": "ro", + "category": "Countries" + }, + { + "name": "Russia", + "flag": "ru", + "category": "Countries" + }, + { + "name": "Rwanda", + "flag": "rw", + "category": "Countries" + }, + { + "name": "Saba", + "flag": "bq2", + "category": "Territories" + }, + { + "name": "Saint Barthélemy", + "flag": "bl", + "category": "Territories" + }, + { + "name": "Saint Helena", + "flag": "sh-hl", + "category": "Territories" + }, + { + "name": "Saint Helena, Ascension and Tristan da Cunha", + "flag": "sh", + "category": "Territories" + }, + { + "name": "Saint Kitts and Nevis", + "flag": "kn", + "category": "Countries" + }, + { + "name": "Saint Lucia", + "flag": "lc", + "category": "Countries" + }, + { + "name": "Saint Martin", + "flag": "mf", + "category": "Territories" + }, + { + "name": "Saint Pierre and Miquelon", + "flag": "pm", + "category": "Territories" + }, + { + "name": "Saint Vincent and the Grenadines", + "flag": "vc", + "category": "Countries" + }, + { + "name": "Samoa", + "flag": "ws", + "category": "Countries" + }, + { + "name": "San Marino", + "flag": "sm", + "category": "Countries" + }, + { + "name": "São Tomé and Príncipe", + "flag": "st", + "category": "Countries" + }, + { + "name": "Saudi Arabia", + "flag": "sa", + "category": "Countries" + }, + { + "name": "Scotland", + "flag": "gb-sct", + "category": "Territories" + }, + { + "name": "Sealand", + "flag": "sealand", + "category": "Territories" + }, + { + "name": "Semaphore Signal", + "flag": "semaphore-signal", + "category": "Other" + }, + { + "name": "Senegal", + "flag": "sn", + "category": "Countries" + }, + { + "name": "Serbia", + "flag": "rs", + "category": "Countries" + }, + { + "name": "Seychelles", + "flag": "sc", + "category": "Countries" + }, + { + "name": "Sierra Leone", + "flag": "sl", + "category": "Countries" + }, + { + "name": "Singapore", + "flag": "sg", + "category": "Countries" + }, + { + "name": "Sint Eustatius", + "flag": "bq3", + "category": "Territories" + }, + { + "name": "Sint Maarten", + "flag": "sx", + "category": "Territories" + }, + { + "name": "Slovakia", + "flag": "sk", + "category": "Countries" + }, + { + "name": "Slovenia", + "flag": "si", + "category": "Countries" + }, + { + "name": "Solomon Islands", + "flag": "sb", + "category": "Territories" + }, + { + "name": "Somalia", + "flag": "so", + "category": "Countries" + }, + { + "name": "Somaliland", + "flag": "somaliland", + "category": "Territories" }, { "name": "South Africa", - "flag": "za" + "flag": "za", + "category": "Countries" + }, + { + "name": "South American Union", + "flag": "south-american-union", + "category": "Unions" + }, + { + "name": "South Georgia and the South Sandwich Islands", + "flag": "gs", + "category": "Territories" + }, + { + "name": "South Korea", + "flag": "kr", + "category": "Countries" + }, + { + "name": "South Ossetia", + "flag": "south-ossetia", + "category": "Territories" + }, + { + "name": "South Sudan", + "flag": "ss", + "category": "Countries" + }, + { + "name": "Spain", + "flag": "es", + "category": "Countries" + }, + { + "name": "Sri Lanka", + "flag": "lk", + "category": "Countries" + }, + { + "name": "State of Palestine", + "flag": "ps", + "category": "Countries" + }, + { + "name": "Sudan", + "flag": "sd", + "category": "Countries" + }, + { + "name": "Suriname", + "flag": "sr", + "category": "Countries" + }, + { + "name": "Svalbard and Jan Mayen", + "flag": "sj", + "category": "Territories" + }, + { + "name": "Sweden", + "flag": "se", + "category": "Countries" + }, + { + "name": "Switzerland", + "flag": "ch", + "category": "Countries" + }, + { + "name": "Syria", + "flag": "sy", + "category": "Countries" + }, + { + "name": "Taiwan", + "flag": "tw", + "category": "Territories" + }, + { + "name": "Tajikistan", + "flag": "tj", + "category": "Countries" + }, + { + "name": "Tanzania", + "flag": "tz", + "category": "Countries" + }, + { + "name": "Tatarstan", + "flag": "tatarstan", + "category": "Territories" + }, + { + "name": "Thailand", + "flag": "th", + "category": "Countries" + }, + { + "name": "Tibet", + "flag": "tibet", + "category": "Territories" + }, + { + "name": "Togo", + "flag": "tg", + "category": "Countries" + }, + { + "name": "Tokelau", + "flag": "tk", + "category": "Territories" + }, + { + "name": "Tonga", + "flag": "to", + "category": "Countries" + }, + { + "name": "Transnistria", + "flag": "transnistria", + "category": "Territories" + }, + { + "name": "Trinidad and Tobago", + "flag": "tt", + "category": "Countries" + }, + { + "name": "Tristan da Cunha", + "flag": "sh-ta", + "category": "Territories" + }, + { + "name": "Tunisia", + "flag": "tn", + "category": "Countries" + }, + { + "name": "Turkey", + "flag": "tr", + "category": "Countries" + }, + { + "name": "Turkic States", + "flag": "turkic-states", + "category": "Unions" + }, + { + "name": "Turkmenistan", + "flag": "tm", + "category": "Countries" + }, + { + "name": "Turks and Caicos Islands", + "flag": "tc", + "category": "Territories" + }, + { + "name": "Tuvalu", + "flag": "tv", + "category": "Countries" + }, + { + "name": "Uganda", + "flag": "ug", + "category": "Countries" + }, + { + "name": "Ukraine", + "flag": "ua", + "category": "Countries" + }, + { + "name": "United Arab Emirates", + "flag": "ae", + "category": "Countries" + }, + { + "name": "United Kingdom", + "flag": "gb", + "category": "Countries" + }, + { + "name": "United Nations", + "flag": "un", + "category": "Unions" + }, + { + "name": "United States", + "flag": "us", + "category": "Countries" + }, + { + "name": "United States Minor Outlying Islands", + "flag": "um", + "category": "Territories" + }, + { + "name": "Unknown", + "flag": "unknown", + "category": "Other" + }, + { + "name": "Uruguay", + "flag": "uy", + "category": "Countries" + }, + { + "name": "Uzbekistan", + "flag": "uz", + "category": "Countries" + }, + { + "name": "Vanuatu", + "flag": "vu", + "category": "Countries" + }, + { + "name": "Vatican", + "flag": "va", + "category": "Countries" + }, + { + "name": "Venezuela", + "flag": "ve", + "category": "Countries" + }, + { + "name": "Vietnam", + "flag": "vn", + "category": "Countries" + }, + { + "name": "Virgin Islands", + "flag": "vi", + "category": "Territories" + }, + { + "name": "Wales", + "flag": "gb-wls", + "category": "Territories" + }, + { + "name": "Wallis and Futuna", + "flag": "wf", + "category": "Territories" + }, + { + "name": "Western Sahara", + "flag": "eh", + "category": "Territories" + }, + { + "name": "Yemen", + "flag": "ye", + "category": "Countries" }, { "name": "Zambia", - "flag": "zm" + "flag": "zm", + "category": "Countries" }, { "name": "Zimbabwe", - "flag": "zw" + "flag": "zw", + "category": "Countries" } ] diff --git a/shared/lib/tokens.ts b/shared/lib/tokens.ts index d1d714247..2a29de624 100644 --- a/shared/lib/tokens.ts +++ b/shared/lib/tokens.ts @@ -213,10 +213,11 @@ export type PaymentProvider = (typeof paymentProviders)[number] /** Keys of `$flag-countries` (core/scss/_variables.scss). */ export const flagCountries = [ + 'abkhazia', 'ad', - 'af', 'ae', - 'afrun', + 'af', + 'african-union', 'ag', 'ai', 'al', @@ -224,7 +225,9 @@ export const flagCountries = [ 'ao', 'aq', 'ar', + 'arab-league', 'as', + 'asean', 'at', 'au', 'aw', @@ -243,9 +246,10 @@ export const flagCountries = [ 'bm', 'bn', 'bo', - 'bq-bo', - 'bq-sa', - 'bq-se', + 'bq', + 'bq1', + 'bq2', + 'bq3', 'br', 'bs', 'bt', @@ -254,17 +258,23 @@ export const flagCountries = [ 'by', 'bz', 'ca', + 'cabinda', 'cc', 'cd', + 'cefta', 'cf', 'cg', 'ch', + 'chechnya', + 'chequered', 'ci', 'ck', 'cl', 'cm', 'cn', 'co', + 'commonwealth-of-independent-states', + 'commonwealth-of-nations', 'cr', 'cu', 'cv', @@ -273,17 +283,23 @@ export const flagCountries = [ 'cy', 'cz', 'de', + 'dg', + 'diver-down', 'dj', 'dk', 'dm', 'do', 'dz', + 'eac', 'ec', 'ee', 'eg', 'eh', 'er', 'es', + 'es-ct', + 'es-ga', + 'es-pv', 'et', 'eu', 'fi', @@ -293,11 +309,11 @@ export const flagCountries = [ 'fo', 'fr', 'ga', - 'gb-eng', - 'gb-sct', 'gb', - 'gb-wls', + 'gb-eng', 'gb-nir', + 'gb-sct', + 'gb-wls', 'gd', 'ge', 'gf', @@ -321,6 +337,7 @@ export const flagCountries = [ 'hr', 'ht', 'hu', + 'ic', 'id', 'ie', 'il', @@ -335,6 +352,7 @@ export const flagCountries = [ 'jm', 'jo', 'jp', + 'jubaland', 'ke', 'kg', 'kh', @@ -343,6 +361,7 @@ export const flagCountries = [ 'kn', 'kp', 'kr', + 'kurdistan', 'kw', 'ky', 'kz', @@ -358,9 +377,11 @@ export const flagCountries = [ 'lv', 'ly', 'ma', + 'maltese-cross', 'mc', 'md', 'me', + 'mercosur', 'mf', 'mg', 'mh', @@ -381,6 +402,7 @@ export const flagCountries = [ 'my', 'mz', 'na', + 'nato', 'nc', 'ne', 'nf', @@ -388,16 +410,23 @@ export const flagCountries = [ 'ni', 'nl', 'no', + 'nordic-council', + 'northern-cyprus', 'np', 'nr', 'nu', 'nz', + 'olympic', 'om', 'pa', + 'paneuropean-union', + 'paraolympic', + 'pc', 'pe', 'pf', 'pg', 'ph', + 'pirate', 'pk', 'pl', 'pm', @@ -410,6 +439,8 @@ export const flagCountries = [ 'qa', 'rainbow', 're', + 'red-crescent', + 'red-cross', 'ro', 'rs', 'ru', @@ -419,8 +450,13 @@ export const flagCountries = [ 'sc', 'sd', 'se', + 'sealand', + 'semaphore-signal', 'sg', 'sh', + 'sh-ac', + 'sh-hl', + 'sh-ta', 'si', 'sj', 'sk', @@ -428,6 +464,9 @@ export const flagCountries = [ 'sm', 'sn', 'so', + 'somaliland', + 'south-american-union', + 'south-ossetia', 'sr', 'ss', 'st', @@ -435,11 +474,13 @@ export const flagCountries = [ 'sx', 'sy', 'sz', + 'tatarstan', 'tc', 'td', 'tf', 'tg', 'th', + 'tibet', 'tj', 'tk', 'tl', @@ -447,14 +488,17 @@ export const flagCountries = [ 'tn', 'to', 'tr', + 'transnistria', 'tt', + 'turkic-states', 'tv', 'tw', 'tz', 'ua', 'ug', 'um', - 'unasur', + 'un', + 'unknown', 'us', 'uy', 'uz', @@ -467,6 +511,7 @@ export const flagCountries = [ 'vu', 'wf', 'ws', + 'xk', 'ye', 'yt', 'za',