├── .distignore ├── CODEOWNERS ├── Changelog.md ├── Diagrams.md ├── LICENSE ├── MultisiteLanguageSwitcher.php ├── README.md ├── bin ├── deploy.sh ├── flags-png.php ├── flags-svg.php ├── git-release.sh └── githooks │ └── pre-commit ├── build ├── exclude ├── phploc.xml └── translations.json ├── composer.json ├── css-flags ├── css │ ├── flag-icon.css │ └── flag-icon.min.css ├── flags.php └── flags │ ├── 1x1 │ ├── ad.svg │ ├── ae.svg │ ├── af.svg │ ├── ag.svg │ ├── ai.svg │ ├── al.svg │ ├── am.svg │ ├── ao.svg │ ├── aq.svg │ ├── ar.svg │ ├── as.svg │ ├── at.svg │ ├── au.svg │ ├── aw.svg │ ├── ax.svg │ ├── az.svg │ ├── ba.svg │ ├── bb.svg │ ├── bd.svg │ ├── be.svg │ ├── bf.svg │ ├── bg.svg │ ├── bh.svg │ ├── bi.svg │ ├── bj.svg │ ├── bl.svg │ ├── bm.svg │ ├── bn.svg │ ├── bo.svg │ ├── bq.svg │ ├── br.svg │ ├── bs.svg │ ├── bt.svg │ ├── bv.svg │ ├── bw.svg │ ├── by.svg │ ├── bz.svg │ ├── ca.svg │ ├── cc.svg │ ├── cd.svg │ ├── cf.svg │ ├── cg.svg │ ├── ch.svg │ ├── ci.svg │ ├── ck.svg │ ├── cl.svg │ ├── cm.svg │ ├── cn.svg │ ├── co.svg │ ├── cr.svg │ ├── cu.svg │ ├── cv.svg │ ├── cw.svg │ ├── cx.svg │ ├── cy.svg │ ├── cz.svg │ ├── de.svg │ ├── dj.svg │ ├── dk.svg │ ├── dm.svg │ ├── do.svg │ ├── dz.svg │ ├── ec.svg │ ├── ee.svg │ ├── eg.svg │ ├── eh.svg │ ├── er.svg │ ├── es-ca.svg │ ├── es.svg │ ├── et.svg │ ├── eu.svg │ ├── fi.svg │ ├── fj.svg │ ├── fk.svg │ ├── fm.svg │ ├── fo.svg │ ├── fr.svg │ ├── ga.svg │ ├── gb-eng.svg │ ├── gb-nir.svg │ ├── gb-sct.svg │ ├── gb-wls.svg │ ├── gb.svg │ ├── gd.svg │ ├── ge.svg │ ├── gf.svg │ ├── gg.svg │ ├── gh.svg │ ├── gi.svg │ ├── gl.svg │ ├── gm.svg │ ├── gn.svg │ ├── gp.svg │ ├── gq.svg │ ├── gr.svg │ ├── gs.svg │ ├── gt.svg │ ├── gu.svg │ ├── gw.svg │ ├── gy.svg │ ├── hk.svg │ ├── hm.svg │ ├── hn.svg │ ├── hr.svg │ ├── ht.svg │ ├── hu.svg │ ├── id.svg │ ├── ie.svg │ ├── il.svg │ ├── im.svg │ ├── in.svg │ ├── io.svg │ ├── iq.svg │ ├── ir.svg │ ├── is.svg │ ├── it.svg │ ├── je.svg │ ├── jm.svg │ ├── jo.svg │ ├── jp.svg │ ├── ke.svg │ ├── kg.svg │ ├── kh.svg │ ├── ki.svg │ ├── km.svg │ ├── kn.svg │ ├── kp.svg │ ├── kr.svg │ ├── kw.svg │ ├── ky.svg │ ├── kz.svg │ ├── la.svg │ ├── lb.svg │ ├── lc.svg │ ├── li.svg │ ├── lk.svg │ ├── lr.svg │ ├── ls.svg │ ├── lt.svg │ ├── lu.svg │ ├── lv.svg │ ├── ly.svg │ ├── ma.svg │ ├── mc.svg │ ├── md.svg │ ├── me.svg │ ├── mf.svg │ ├── mg.svg │ ├── mh.svg │ ├── mk.svg │ ├── ml.svg │ ├── mm.svg │ ├── mn.svg │ ├── mo.svg │ ├── mp.svg │ ├── mq.svg │ ├── mr.svg │ ├── ms.svg │ ├── mt.svg │ ├── mu.svg │ ├── mv.svg │ ├── mw.svg │ ├── mx.svg │ ├── my.svg │ ├── mz.svg │ ├── na.svg │ ├── nc.svg │ ├── ne.svg │ ├── nf.svg │ ├── ng.svg │ ├── ni.svg │ ├── nl.svg │ ├── no.svg │ ├── np.svg │ ├── nr.svg │ ├── nu.svg │ ├── nz.svg │ ├── om.svg │ ├── pa.svg │ ├── pe.svg │ ├── pf.svg │ ├── pg.svg │ ├── ph.svg │ ├── pk.svg │ ├── pl.svg │ ├── pm.svg │ ├── pn.svg │ ├── pr.svg │ ├── ps.svg │ ├── pt.svg │ ├── pw.svg │ ├── py.svg │ ├── qa.svg │ ├── re.svg │ ├── ro.svg │ ├── rs.svg │ ├── ru.svg │ ├── rw.svg │ ├── sa.svg │ ├── sb.svg │ ├── sc.svg │ ├── sd.svg │ ├── se.svg │ ├── sg.svg │ ├── sh.svg │ ├── si.svg │ ├── sj.svg │ ├── sk.svg │ ├── sl.svg │ ├── sm.svg │ ├── sn.svg │ ├── so.svg │ ├── sr.svg │ ├── ss.svg │ ├── st.svg │ ├── sv.svg │ ├── sx.svg │ ├── sy.svg │ ├── sz.svg │ ├── tc.svg │ ├── td.svg │ ├── tf.svg │ ├── tg.svg │ ├── th.svg │ ├── tj.svg │ ├── tk.svg │ ├── tl.svg │ ├── tm.svg │ ├── tn.svg │ ├── to.svg │ ├── tr.svg │ ├── tt.svg │ ├── tv.svg │ ├── tw.svg │ ├── tz.svg │ ├── ua.svg │ ├── ug.svg │ ├── um.svg │ ├── un.svg │ ├── us.svg │ ├── uy.svg │ ├── uz.svg │ ├── va.svg │ ├── vc.svg │ ├── ve.svg │ ├── vg.svg │ ├── vi.svg │ ├── vn.svg │ ├── vu.svg │ ├── wf.svg │ ├── ws.svg │ ├── xk.svg │ ├── ye.svg │ ├── yt.svg │ ├── za.svg │ ├── zm.svg │ └── zw.svg │ └── 4x3 │ ├── ad.svg │ ├── ae.svg │ ├── af.svg │ ├── ag.svg │ ├── ai.svg │ ├── al.svg │ ├── am.svg │ ├── ao.svg │ ├── aq.svg │ ├── ar.svg │ ├── as.svg │ ├── at.svg │ ├── au.svg │ ├── aw.svg │ ├── ax.svg │ ├── az.svg │ ├── ba.svg │ ├── bb.svg │ ├── bd.svg │ ├── be.svg │ ├── bf.svg │ ├── bg.svg │ ├── bh.svg │ ├── bi.svg │ ├── bj.svg │ ├── bl.svg │ ├── bm.svg │ ├── bn.svg │ ├── bo.svg │ ├── bq.svg │ ├── br.svg │ ├── bs.svg │ ├── bt.svg │ ├── bv.svg │ ├── bw.svg │ ├── by.svg │ ├── bz.svg │ ├── ca.svg │ ├── cc.svg │ ├── cd.svg │ ├── cf.svg │ ├── cg.svg │ ├── ch.svg │ ├── ci.svg │ ├── ck.svg │ ├── cl.svg │ ├── cm.svg │ ├── cn.svg │ ├── co.svg │ ├── cr.svg │ ├── cu.svg │ ├── cv.svg │ ├── cw.svg │ ├── cx.svg │ ├── cy.svg │ ├── cz.svg │ ├── de.svg │ ├── dj.svg │ ├── dk.svg │ ├── dm.svg │ ├── do.svg │ ├── dz.svg │ ├── ec.svg │ ├── ee.svg │ ├── eg.svg │ ├── eh.svg │ ├── er.svg │ ├── es-ca.svg │ ├── es.svg │ ├── et.svg │ ├── eu.svg │ ├── fi.svg │ ├── fj.svg │ ├── fk.svg │ ├── fm.svg │ ├── fo.svg │ ├── fr.svg │ ├── ga.svg │ ├── gb-eng.svg │ ├── gb-nir.svg │ ├── gb-sct.svg │ ├── gb-wls.svg │ ├── gb.svg │ ├── gd.svg │ ├── ge.svg │ ├── gf.svg │ ├── gg.svg │ ├── gh.svg │ ├── gi.svg │ ├── gl.svg │ ├── gm.svg │ ├── gn.svg │ ├── gp.svg │ ├── gq.svg │ ├── gr.svg │ ├── gs.svg │ ├── gt.svg │ ├── gu.svg │ ├── gw.svg │ ├── gy.svg │ ├── hk.svg │ ├── hm.svg │ ├── hn.svg │ ├── hr.svg │ ├── ht.svg │ ├── hu.svg │ ├── id.svg │ ├── ie.svg │ ├── il.svg │ ├── im.svg │ ├── in.svg │ ├── io.svg │ ├── iq.svg │ ├── ir.svg │ ├── is.svg │ ├── it.svg │ ├── je.svg │ ├── jm.svg │ ├── jo.svg │ ├── jp.svg │ ├── ke.svg │ ├── kg.svg │ ├── kh.svg │ ├── ki.svg │ ├── km.svg │ ├── kn.svg │ ├── kp.svg │ ├── kr.svg │ ├── kw.svg │ ├── ky.svg │ ├── kz.svg │ ├── la.svg │ ├── lb.svg │ ├── lc.svg │ ├── li.svg │ ├── lk.svg │ ├── lr.svg │ ├── ls.svg │ ├── lt.svg │ ├── lu.svg │ ├── lv.svg │ ├── ly.svg │ ├── ma.svg │ ├── mc.svg │ ├── md.svg │ ├── me.svg │ ├── mf.svg │ ├── mg.svg │ ├── mh.svg │ ├── mk.svg │ ├── ml.svg │ ├── mm.svg │ ├── mn.svg │ ├── mo.svg │ ├── mp.svg │ ├── mq.svg │ ├── mr.svg │ ├── ms.svg │ ├── mt.svg │ ├── mu.svg │ ├── mv.svg │ ├── mw.svg │ ├── mx.svg │ ├── my.svg │ ├── mz.svg │ ├── na.svg │ ├── nc.svg │ ├── ne.svg │ ├── nf.svg │ ├── ng.svg │ ├── ni.svg │ ├── nl.svg │ ├── no.svg │ ├── np.svg │ ├── nr.svg │ ├── nu.svg │ ├── nz.svg │ ├── om.svg │ ├── pa.svg │ ├── pe.svg │ ├── pf.svg │ ├── pg.svg │ ├── ph.svg │ ├── pk.svg │ ├── pl.svg │ ├── pm.svg │ ├── pn.svg │ ├── pr.svg │ ├── ps.svg │ ├── pt.svg │ ├── pw.svg │ ├── py.svg │ ├── qa.svg │ ├── re.svg │ ├── ro.svg │ ├── rs.svg │ ├── ru.svg │ ├── rw.svg │ ├── sa.svg │ ├── sb.svg │ ├── sc.svg │ ├── sd.svg │ ├── se.svg │ ├── sg.svg │ ├── sh.svg │ ├── si.svg │ ├── sj.svg │ ├── sk.svg │ ├── sl.svg │ ├── sm.svg │ ├── sn.svg │ ├── so.svg │ ├── sr.svg │ ├── ss.svg │ ├── st.svg │ ├── sv.svg │ ├── sx.svg │ ├── sy.svg │ ├── sz.svg │ ├── tc.svg │ ├── td.svg │ ├── tf.svg │ ├── tg.svg │ ├── th.svg │ ├── tj.svg │ ├── tk.svg │ ├── tl.svg │ ├── tm.svg │ ├── tn.svg │ ├── to.svg │ ├── tr.svg │ ├── tt.svg │ ├── tv.svg │ ├── tw.svg │ ├── tz.svg │ ├── ua.svg │ ├── ug.svg │ ├── um.svg │ ├── un.svg │ ├── us.svg │ ├── uy.svg │ ├── uz.svg │ ├── va.svg │ ├── vc.svg │ ├── ve.svg │ ├── vg.svg │ ├── vi.svg │ ├── vn.svg │ ├── vu.svg │ ├── wf.svg │ ├── ws.svg │ ├── xk.svg │ ├── ye.svg │ ├── yt.svg │ ├── za.svg │ ├── zm.svg │ └── zw.svg ├── css ├── flags.php ├── index.php ├── msls.css └── msls.less ├── diagrams ├── class-diagram.png ├── msls-class.puml ├── msls-package.puml └── package-related-diagram.png ├── flags ├── ad.png ├── ae.png ├── af.png ├── ag.png ├── ai.png ├── al.png ├── am.png ├── an.png ├── ao.png ├── ar.png ├── arableague.png ├── as.png ├── at.png ├── au.png ├── aw.png ├── ax.png ├── az.png ├── ba.png ├── bb.png ├── bd.png ├── be.png ├── bf.png ├── bg.png ├── bh.png ├── bi.png ├── bj.png ├── bm.png ├── bn.png ├── bo.png ├── br.png ├── bs.png ├── bt.png ├── bv.png ├── bw.png ├── by.png ├── bz.png ├── ca.png ├── catalonia.png ├── cc.png ├── cd.png ├── cf.png ├── cg.png ├── ch.png ├── ci.png ├── ck.png ├── cl.png ├── cm.png ├── cn.png ├── co.png ├── cr.png ├── cs.png ├── cu.png ├── cv.png ├── cx.png ├── cy.png ├── cz.png ├── de.png ├── dj.png ├── dk.png ├── dm.png ├── do.png ├── dz.png ├── ec.png ├── ee.png ├── eg.png ├── eh.png ├── england.png ├── er.png ├── es.png ├── et.png ├── europeanunion.png ├── fam.png ├── fi.png ├── fj.png ├── fk.png ├── flags.php ├── fm.png ├── fo.png ├── fr.png ├── ga.png ├── gb.png ├── gd.png ├── ge.png ├── gf.png ├── gh.png ├── gi.png ├── gl.png ├── gm.png ├── gn.png ├── gp.png ├── gq.png ├── gr.png ├── gs.png ├── gt.png ├── gu.png ├── gw.png ├── gy.png ├── hk.png ├── hm.png ├── hn.png ├── hr.png ├── ht.png ├── hu.png ├── id.png ├── ie.png ├── il.png ├── in.png ├── index.php ├── io.png ├── iq.png ├── ir.png ├── is.png ├── it.png ├── jm.png ├── jo.png ├── jp.png ├── ke.png ├── kg.png ├── kh.png ├── ki.png ├── km.png ├── kn.png ├── kp.png ├── kr.png ├── kw.png ├── ky.png ├── kz.png ├── la.png ├── lb.png ├── lc.png ├── li.png ├── lk.png ├── lr.png ├── ls.png ├── lt.png ├── lu.png ├── lv.png ├── ly.png ├── ma.png ├── mc.png ├── md.png ├── me.png ├── mg.png ├── mh.png ├── mk.png ├── ml.png ├── mm.png ├── mn.png ├── mo.png ├── mp.png ├── mq.png ├── mr.png ├── ms.png ├── mt.png ├── mu.png ├── mv.png ├── mw.png ├── mx.png ├── my.png ├── mz.png ├── na.png ├── nc.png ├── ne.png ├── nf.png ├── ng.png ├── ni.png ├── nl.png ├── no.png ├── np.png ├── nr.png ├── nu.png ├── nz.png ├── om.png ├── pa.png ├── pe.png ├── pf.png ├── pg.png ├── ph.png ├── pk.png ├── pl.png ├── pm.png ├── pn.png ├── pr.png ├── ps.png ├── pt.png ├── pw.png ├── py.png ├── qa.png ├── re.png ├── ro.png ├── rs.png ├── ru.png ├── rw.png ├── sa.png ├── sb.png ├── sc.png ├── scotland.png ├── sd.png ├── se.png ├── sg.png ├── sh.png ├── si.png ├── sj.png ├── sk.png ├── sl.png ├── sm.png ├── sn.png ├── so.png ├── sr.png ├── st.png ├── sv.png ├── sy.png ├── sz.png ├── tc.png ├── td.png ├── tf.png ├── tg.png ├── th.png ├── tj.png ├── tk.png ├── tl.png ├── tm.png ├── tn.png ├── to.png ├── tr.png ├── tt.png ├── tv.png ├── tw.png ├── tz.png ├── ua.png ├── ug.png ├── um.png ├── us.png ├── uy.png ├── uz.png ├── va.png ├── vc.png ├── ve.png ├── vg.png ├── vi.png ├── vn.png ├── vu.png ├── wales.png ├── wf.png ├── ws.png ├── ye.png ├── yt.png ├── za.png ├── zm.png └── zw.png ├── images ├── index.php ├── link_add.png └── link_edit.png ├── includes ├── Component │ ├── Component.php │ ├── Icon.php │ ├── Icon │ │ ├── IconLabel.php │ │ ├── IconPng.php │ │ └── IconSvg.php │ ├── Input │ │ ├── Checkbox.php │ │ ├── Group.php │ │ ├── Label.php │ │ ├── Option.php │ │ ├── Select.php │ │ └── Text.php │ └── Wrapper.php ├── ContentImport │ ├── AttachmentPathFinder.php │ ├── ContentImporter.php │ ├── ImportCoordinates.php │ ├── ImportLogger.php │ ├── Importers │ │ ├── Attachments │ │ │ └── Linking.php │ │ ├── AttachmentsImporters.php │ │ ├── BaseImporter.php │ │ ├── Importer.php │ │ ├── ImportersBaseFactory.php │ │ ├── ImportersFactory.php │ │ ├── Map.php │ │ ├── PostFields │ │ │ └── Duplicating.php │ │ ├── PostFieldsImporters.php │ │ ├── PostMeta │ │ │ └── Duplicating.php │ │ ├── PostMetaImporters.php │ │ ├── PostThumbnail │ │ │ └── Linking.php │ │ ├── PostThumbnailImporters.php │ │ ├── Terms │ │ │ └── ShallowDuplicating.php │ │ ├── TermsImporters.php │ │ └── WithRequestPostAttributes.php │ ├── LogWriters │ │ ├── AdminNoticeLogger.php │ │ └── LogWriter.php │ ├── MetaBox.php │ ├── Relations.php │ └── Service.php ├── LinkInterface.php ├── Map │ └── HrefLang.php ├── MslsAdmin.php ├── MslsAdminBar.php ├── MslsAdminIcon.php ├── MslsAdminIconTaxonomy.php ├── MslsBlock.php ├── MslsBlog.php ├── MslsBlogCollection.php ├── MslsCli.php ├── MslsContentFilter.php ├── MslsContentTypes.php ├── MslsCustomColumn.php ├── MslsCustomColumnTaxonomy.php ├── MslsCustomFilter.php ├── MslsFields.php ├── MslsGetSet.php ├── MslsJson.php ├── MslsLanguageArray.php ├── MslsLink.php ├── MslsLinkImageOnly.php ├── MslsLinkTextImage.php ├── MslsLinkTextOnly.php ├── MslsMain.php ├── MslsMetaBox.php ├── MslsOptions.php ├── MslsOptionsPost.php ├── MslsOptionsQuery.php ├── MslsOptionsQueryAuthor.php ├── MslsOptionsQueryDay.php ├── MslsOptionsQueryMonth.php ├── MslsOptionsQueryPostType.php ├── MslsOptionsQueryYear.php ├── MslsOptionsTax.php ├── MslsOptionsTaxTerm.php ├── MslsOptionsTaxTermCategory.php ├── MslsOutput.php ├── MslsPlugin.php ├── MslsPostTag.php ├── MslsPostTagClassic.php ├── MslsPostType.php ├── MslsRegistry.php ├── MslsRegistryInstance.php ├── MslsRequest.php ├── MslsShortCode.php ├── MslsSqlCacher.php ├── MslsTaxonomy.php ├── MslsWidget.php ├── OptionsInterface.php ├── OptionsTaxInterface.php ├── Query │ ├── AbstractQuery.php │ ├── AuthorPostsCounterQuery.php │ ├── BlogsInNetworkQuery.php │ ├── CleanupOptionsQuery.php │ ├── DatePostsCounterQuery.php │ ├── MonthPostsCounterQuery.php │ ├── TranslatedPostIdQuery.php │ └── YearPostsCounterQuery.php └── index.php ├── index.php ├── js └── index.php ├── languages ├── default.pot ├── index.php ├── multisite-language-switcher-ar.mo ├── multisite-language-switcher-ar.po ├── multisite-language-switcher-bg_BG.mo ├── multisite-language-switcher-bg_BG.po ├── multisite-language-switcher-bn_BD.mo ├── multisite-language-switcher-bn_BD.po ├── multisite-language-switcher-ca.mo ├── multisite-language-switcher-ca.po ├── multisite-language-switcher-cs_CZ.mo ├── multisite-language-switcher-cs_CZ.po ├── multisite-language-switcher-de_DE.mo ├── multisite-language-switcher-de_DE.po ├── multisite-language-switcher-el.mo ├── multisite-language-switcher-el.po ├── multisite-language-switcher-es_ES.mo ├── multisite-language-switcher-es_ES.po ├── multisite-language-switcher-fr_FR.mo ├── multisite-language-switcher-fr_FR.po ├── multisite-language-switcher-hr_HR.mo ├── multisite-language-switcher-hr_HR.po ├── multisite-language-switcher-hu_HU.mo ├── multisite-language-switcher-hu_HU.po ├── multisite-language-switcher-hy_AM.mo ├── multisite-language-switcher-hy_AM.po ├── multisite-language-switcher-it_IT.mo ├── multisite-language-switcher-it_IT.po ├── multisite-language-switcher-ja.mo ├── multisite-language-switcher-ja.po ├── multisite-language-switcher-ka_GE.mo ├── multisite-language-switcher-ka_GE.po ├── multisite-language-switcher-lt_LT.mo ├── multisite-language-switcher-lt_LT.po ├── multisite-language-switcher-nb_NO.mo ├── multisite-language-switcher-nb_NO.po ├── multisite-language-switcher-nl_NL.mo ├── multisite-language-switcher-nl_NL.po ├── multisite-language-switcher-pl_PL.mo ├── multisite-language-switcher-pl_PL.po ├── multisite-language-switcher-pt_BR.mo ├── multisite-language-switcher-pt_BR.po ├── multisite-language-switcher-ro_RO.mo ├── multisite-language-switcher-ro_RO.po ├── multisite-language-switcher-ru_RU.mo ├── multisite-language-switcher-ru_RU.po ├── multisite-language-switcher-sr_RS.mo ├── multisite-language-switcher-sr_RS.po ├── multisite-language-switcher-sv_SE.mo ├── multisite-language-switcher-sv_SE.po ├── multisite-language-switcher-tr.mo ├── multisite-language-switcher-tr.po ├── multisite-language-switcher-uk.mo ├── multisite-language-switcher-uk.po ├── multisite-language-switcher-zh_CN.mo ├── multisite-language-switcher-zh_CN.po ├── multisite-language-switcher-zh_TW.mo └── multisite-language-switcher-zh_TW.po ├── package-lock.json ├── package.json ├── patchwork.json ├── phpcs.xml ├── phpdoc.xml ├── phpstan.neon.dist ├── phpunit.xml ├── playwright.config.ts ├── readme.txt ├── src ├── index.php ├── msls-widget-block │ ├── block.json │ ├── edit.js │ ├── index.js │ ├── index.php │ └── render.php └── msls.js └── tests ├── phpstan └── bootstrap.php ├── phpunit ├── Component │ └── Icon │ │ ├── TestIconPng.php │ │ └── TestIconSvg.php ├── ContentImport │ ├── Importers │ │ ├── Attachments │ │ │ └── TestLinking.php │ │ ├── PostFields │ │ │ └── TestDuplicating.php │ │ ├── PostMeta │ │ │ └── TestDuplicating.php │ │ ├── TestAttachmentsImporters.php │ │ ├── TestBaseImporter.php │ │ ├── TestImportersBaseFactory.php │ │ ├── TestMap.php │ │ ├── TestPostFieldsImporters.php │ │ ├── TestPostMetaImporters.php │ │ ├── TestPostThumbnailImporters.php │ │ └── TestTermsImporters.php │ ├── LogWriters │ │ └── TestAdminNoticeLogger.php │ ├── TestAttachmentPathFinder.php │ ├── TestContentImporter.php │ ├── TestImportCoordinates.php │ ├── TestImportLogger.php │ ├── TestMetaBox.php │ ├── TestRelations.php │ └── TestService.php ├── Map │ └── TestHrefLang.php ├── MslsUnitTestCase.php ├── Query │ └── TestTranslatedPostsQuery.php ├── TestMslsAdmin.php ├── TestMslsAdminBar.php ├── TestMslsAdminIcon.php ├── TestMslsAdminIconTaxonomy.php ├── TestMslsBlock.php ├── TestMslsBlog.php ├── TestMslsBlogCollection.php ├── TestMslsCli.php ├── TestMslsContentFilter.php ├── TestMslsContentTypes.php ├── TestMslsCustomColumn.php ├── TestMslsCustomColumnTaxonomy.php ├── TestMslsCustomFilter.php ├── TestMslsGetSet.php ├── TestMslsJson.php ├── TestMslsLanguageArray.php ├── TestMslsLink.php ├── TestMslsLinkImageOnly.php ├── TestMslsLinkTextImage.php ├── TestMslsLinkTextOnly.php ├── TestMslsMain.php ├── TestMslsMetaBox.php ├── TestMslsOptions.php ├── TestMslsOptionsPost.php ├── TestMslsOptionsQuery.php ├── TestMslsOptionsQueryAuthor.php ├── TestMslsOptionsQueryDay.php ├── TestMslsOptionsQueryMonth.php ├── TestMslsOptionsQueryPostType.php ├── TestMslsOptionsQueryYear.php ├── TestMslsOptionsTax.php ├── TestMslsOptionsTaxTerm.php ├── TestMslsOptionsTaxTermCategory.php ├── TestMslsOutput.php ├── TestMslsPlugin.php ├── TestMslsPostTag.php ├── TestMslsPostTagClassic.php ├── TestMslsPostType.php ├── TestMslsRegistry.php ├── TestMslsRequest.php ├── TestMslsShortCode.php ├── TestMslsSqlCacher.php ├── TestMslsTaxonomy.php ├── TestMslsWidget.php ├── WP_CLI.php ├── WP_Widget.php └── bootstrap.php └── playwright └── testpage.spec.ts /.distignore: -------------------------------------------------------------------------------- 1 | .distignore 2 | .gitattributes 3 | .gitignore 4 | .scrutinizer.yml 5 | /.git 6 | /.github 7 | /.idea 8 | /.phpunit.cache 9 | /.vscode 10 | /.wordpress-org 11 | /bin 12 | /build 13 | /diagrams 14 | /docs 15 | /legacy-tests 16 | /multisite-language-switcher 17 | /node_modules 18 | /out 19 | /src 20 | /tests 21 | CODEOWNERS 22 | Changelog.md 23 | Diagrams.md 24 | README.md 25 | composer.json 26 | composer.lock 27 | multisite-language-switcher.zip 28 | package-lock.json 29 | package.json 30 | patchwork.json 31 | phpcs.xml 32 | phpdoc.xml 33 | phpstan.neon.dist 34 | phpunit.xml 35 | playwright.config.ts 36 | setup.sh -------------------------------------------------------------------------------- /CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @lloc 2 | -------------------------------------------------------------------------------- /Diagrams.md: -------------------------------------------------------------------------------- 1 | # Diagrams 2 | 3 | Infrastructural overview about the plugin's PHP classes: 4 | 5 | ![PlantUML class diagram](diagrams/class-diagram.png) 6 | 7 | Package diagram: 8 | 9 | ![PlantUML class diagram](diagrams/package-related-diagram.png) 10 | -------------------------------------------------------------------------------- /bin/deploy.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | set -e 4 | 5 | npm run docs:build 6 | /usr/local/bin/phpdoc 7 | 8 | cd docs/.vuepress/dist 9 | echo 'msls.co' > CNAME 10 | 11 | git init 12 | git add -A 13 | git commit -m 'deploy' 14 | git push -f https://github.com/lloc/Multisite-Language-Switcher.git master:gh-pages 15 | 16 | cd - 17 | -------------------------------------------------------------------------------- /bin/git-release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | PROJECT_ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd )" 4 | PLUGIN_NAME="multisite-language-switcher" 5 | BUILD_PATH="$PROJECT_ROOT/$PLUGIN_NAME" 6 | ZIP_ARCHIVE="$PROJECT_ROOT/$PLUGIN_NAME.zip" 7 | 8 | rm -f $ZIP_ARCHIVE 9 | rm -rf $BUILD_PATH && mkdir $BUILD_PATH 10 | 11 | rsync -arvp --exclude-from=$PROJECT_ROOT/.distignore $PROJECT_ROOT/ $BUILD_PATH/ 12 | cd $PROJECT_ROOT && zip -r $ZIP_ARCHIVE $PLUGIN_NAME 13 | -------------------------------------------------------------------------------- /build/exclude: -------------------------------------------------------------------------------- 1 | /.git/ 2 | /.github/ 3 | /.idea/ 4 | /bin/ 5 | /build/ 6 | /docs/ 7 | /js/msls-widget-block/ 8 | /legacy-tests/ 9 | /release/ 10 | /multisite-language-switcher/ 11 | /node_modules/ 12 | /tests/ 13 | .distignore 14 | .gitattributes 15 | .gitignore 16 | *.json 17 | *.lock 18 | *.sh 19 | *.md 20 | *.phar 21 | *.xml 22 | *.yml 23 | *.zip 24 | -------------------------------------------------------------------------------- /build/phploc.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ae.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/am.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/at.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ax.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/az.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/bb.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/bd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/be.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/bf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/bg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/bh.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/bj.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/bl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/bq.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/bs.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/bv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/bw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ca.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/cd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/cf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/cg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ci.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/cl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/co.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/cr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/cu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/cz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/de.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/dj.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/dk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/dz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ee.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/es-ca.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/fi.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/fo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/fr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ga.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/gb-eng.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/gb-sct.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/gb.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/gf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/gg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/gh.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/gl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/gm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/gn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/gp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/gy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/hu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/id.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ie.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/is.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/it.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/jm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/jp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/kw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/la.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/lc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/lt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/lu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/lv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ly.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ma.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/mc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/mf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/mg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/mk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ml.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/mq.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/mr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/mu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/mv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ne.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ng.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/nl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/no.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/nr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/pa.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/pl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/pm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/pr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ps.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/pw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/qa.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/re.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ro.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ru.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/sc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/sd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/sj.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/sl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/sn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/so.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/sr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ss.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/sy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/td.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/th.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/tl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/to.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/tr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/tt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/tz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ua.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/vc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/vn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/wf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/ye.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/1x1/yt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ae.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/am.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/at.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ax.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/az.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/bb.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/bd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/be.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/bf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/bg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/bh.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/bj.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/bl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/bq.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/bs.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/bv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/bw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/cd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/cg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ci.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/cl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/co.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/cr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/cu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/cz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/de.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/dj.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/dk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/dz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ee.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/es-ca.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/fi.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/fo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/fr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ga.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/gb-eng.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/gb-sct.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/gb.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/gf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/gg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/gh.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/gl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/gm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/gn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/gp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/gy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/hu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/id.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ie.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/is.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/it.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/jm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/jp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/kw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/la.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/lc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/lt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/lu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/lv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ly.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ma.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/mc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/mf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/mg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/mk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ml.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/mq.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/mr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/mu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/mv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ne.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ng.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/nl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/no.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/nr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/pl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/pm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/pr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ps.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/pw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/qa.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/re.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ro.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ru.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/sc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/sd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/sj.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/sl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/sn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/so.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/sr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ss.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/sy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/td.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/th.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/tl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/to.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/tr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/tt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/tz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ua.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/vc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/vn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/wf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ws.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/ye.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css-flags/flags/4x3/yt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /css/index.php: -------------------------------------------------------------------------------- 1 | ' . implode( '', explode( '_', $language ) ) . ''; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /includes/Component/Wrapper.php: -------------------------------------------------------------------------------- 1 | element = $element; 13 | $this->content = $content; 14 | } 15 | 16 | public function render(): string { 17 | return sprintf( '<%1$s>%2$s', esc_html( $this->element ), wp_kses( $this->content, self::get_allowed_html() ) ); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /includes/ContentImport/LogWriters/LogWriter.php: -------------------------------------------------------------------------------- 1 | $data An array of data to log. 10 | * 11 | * @return mixed 12 | */ 13 | public function write( array $data ); 14 | } 15 | -------------------------------------------------------------------------------- /includes/LinkInterface.php: -------------------------------------------------------------------------------- 1 | '; 18 | 19 | /** 20 | * Get the description 21 | * 22 | * @return string 23 | */ 24 | public static function get_description(): string { 25 | return __( 'Flag only', 'multisite-language-switcher' ); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /includes/MslsLinkTextImage.php: -------------------------------------------------------------------------------- 1 | '; 18 | 19 | /** 20 | * Get the description 21 | * 22 | * @return string 23 | */ 24 | public static function get_description(): string { 25 | return __( 'Description and flag', 'multisite-language-switcher' ); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /includes/MslsLinkTextOnly.php: -------------------------------------------------------------------------------- 1 | is_excluded() ) { 19 | return ''; 20 | } 21 | 22 | ob_start(); 23 | the_widget( MslsWidget::class ); 24 | $output = ob_get_clean(); 25 | 26 | return $output; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /includes/OptionsInterface.php: -------------------------------------------------------------------------------- 1 | sql_cache = $sql_cache; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /includes/Query/AuthorPostsCounterQuery.php: -------------------------------------------------------------------------------- 1 | sql_cache->prepare( 18 | "SELECT count(ID) FROM {$this->sql_cache->posts} WHERE post_author = %d AND post_status = 'publish'", 19 | $author_id 20 | ); 21 | 22 | return (int) $this->sql_cache->get_var( $query ); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /includes/Query/CleanupOptionsQuery.php: -------------------------------------------------------------------------------- 1 | sql_cache->prepare( 14 | "DELETE FROM {$this->sql_cache->options} WHERE option_name LIKE %s", 15 | 'msls_%' 16 | ); 17 | 18 | return (bool) $this->sql_cache->query( $sql ); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /includes/Query/MonthPostsCounterQuery.php: -------------------------------------------------------------------------------- 1 | sql_cache->prepare( 18 | "SELECT count(ID) FROM {$this->sql_cache->posts} WHERE YEAR(post_date) = %d AND MONTH(post_date) = %d AND post_status = 'publish'", 19 | $year, 20 | $monthnum 21 | ); 22 | 23 | return (int) $this->sql_cache->get_var( $query ); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /includes/Query/YearPostsCounterQuery.php: -------------------------------------------------------------------------------- 1 | sql_cache->prepare( 14 | "SELECT count(ID) FROM {$this->sql_cache->posts} WHERE YEAR(post_date) = %d AND post_status = 'publish'", 15 | $year 16 | ); 17 | 18 | return (int) $this->sql_cache->get_var( $query ); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /includes/index.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | API - Multisite Language Switcher 4 | 5 | docs/.vuepress/public/api-documentation/cache 6 | 7 | 8 | docs/.vuepress/public/api-documentation 9 | 10 | 11 | includes 12 | tests 13 | vendor 14 | 15 | 16 | -------------------------------------------------------------------------------- /phpstan.neon.dist: -------------------------------------------------------------------------------- 1 | parameters: 2 | level: 6 3 | inferPrivatePropertyTypeFromConstructor: true 4 | treatPhpDocTypesAsCertain: false 5 | paths: 6 | - MultisiteLanguageSwitcher.php 7 | - includes 8 | excludePaths: 9 | - vendor 10 | bootstrapFiles: 11 | - tests/phpstan/bootstrap.php 12 | ignoreErrors: 13 | - '/^Class lloc\\Msls\\MslsWidget extends generic class WP_Widget but does not specify its types: T$/' -------------------------------------------------------------------------------- /src/index.php: -------------------------------------------------------------------------------- 1 | 8 | < ServerSideRender 9 | block = "lloc/msls-widget-block" 10 | attributes = { props.attributes } 11 | / > 12 | < / div > 13 | ); 14 | } -------------------------------------------------------------------------------- /src/msls-widget-block/index.js: -------------------------------------------------------------------------------- 1 | import { registerBlockType } from '@wordpress/blocks'; 2 | 3 | import Edit from './edit'; 4 | import metadata from './block.json'; 5 | 6 | registerBlockType( 7 | metadata.name, 8 | { 9 | edit: Edit 10 | } 11 | ); 12 | -------------------------------------------------------------------------------- /src/msls-widget-block/index.php: -------------------------------------------------------------------------------- 1 | shouldReceive( 'get_importer_for' )->andReturn( 'post-fields' ); 14 | 15 | $result = ( new Map() )->make( $coordinates ); 16 | 17 | $this->assertNotEmpty( $result ); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /tests/phpunit/ContentImport/TestRelations.php: -------------------------------------------------------------------------------- 1 | assertIsArray( $test->get_data() ); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /tests/phpunit/TestMslsContentTypes.php: -------------------------------------------------------------------------------- 1 | twice()->andReturn( array() ); 13 | 14 | $obj = MslsContentTypes::create(); 15 | 16 | $this->assertInstanceOf( MslsPostType::class, $obj ); 17 | } 18 | 19 | public function test_is_taxonomy(): void { 20 | $this->assertFalse( MslsContentTypes::create()->is_taxonomy() ); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /tests/phpunit/TestMslsLinkImageOnly.php: -------------------------------------------------------------------------------- 1 | assertIsSTring( MslsLinkImageOnly::get_description() ); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /tests/phpunit/TestMslsLinkTextImage.php: -------------------------------------------------------------------------------- 1 | assertIsSTring( MslsLinkTextImage::get_description() ); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /tests/phpunit/TestMslsLinkTextOnly.php: -------------------------------------------------------------------------------- 1 | assertIsSTring( MslsLinkTextOnly::get_description() ); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /tests/phpunit/TestMslsOptionsTaxTermCategory.php: -------------------------------------------------------------------------------- 1 | once()->andReturn( array() ); 12 | 13 | $obj = new MslsOptionsTaxTermCategory( 0 ); 14 | 15 | $this->assertIsSTring( $obj->get_postlink( '' ) ); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /tests/phpunit/TestMslsRegistry.php: -------------------------------------------------------------------------------- 1 | assertEquals( null, $obj->get_object( 'test_var' ) ); 13 | $obj->set_object( 'test_var', 1 ); 14 | $this->assertEquals( 1, $obj->get_object( 'test_var' ) ); 15 | $obj->set_object( 'test_var', null ); 16 | $this->assertEquals( null, $obj->get_object( 'test_var' ) ); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /tests/phpunit/WP_CLI.php: -------------------------------------------------------------------------------- 1 |