├── lib ├── common │ ├── error.dart │ ├── ip.dart │ ├── path.dart │ ├── list.dart │ ├── file.dart │ ├── version.dart │ ├── os.dart │ ├── extension.dart │ └── bloc_observer.dart ├── app │ ├── server │ │ ├── server.dart │ │ └── vx_config_routing.dart │ ├── log │ │ └── log_setting.dart │ ├── home │ │ └── proxy_selector.dart │ ├── settings │ │ └── ads.dart │ ├── blocs │ │ └── inbound.dart │ └── layout_provider.dart ├── utils │ ├── error.dart │ ├── root.dart │ ├── mac.dart │ ├── process.dart │ ├── permission.dart │ ├── encrypt.dart │ ├── device.dart │ ├── ui.dart │ └── http.dart ├── widgets │ ├── divider.dart │ ├── pro_icon.dart │ ├── add_button.dart │ ├── circular_progress_indicator.dart │ ├── adaptive_dialog.dart │ ├── dialog_shell.dart │ ├── bottom_sheet_shell.dart │ ├── form_container.dart │ ├── text_divider.dart │ └── delete_menu_anchor.dart ├── init.dart ├── auth │ └── user.dart └── iap │ └── iap.dart ├── linux ├── .gitignore ├── main.cc ├── flutter │ └── generated_plugin_registrant.h └── my_application.h ├── test ├── unit_test │ ├── database_test.dart │ ├── upload_log │ │ ├── tunnel_logs │ │ │ └── latest.txt │ │ └── flutter_logs │ │ │ └── latest.txt │ ├── read_from_clipboard_test.dart │ ├── desktop_app_info_test.dart │ ├── ip_test.dart │ ├── cert_test.dart │ ├── github_release_test.dart │ ├── file_encryption │ │ └── file_encryption_test.dart │ └── net_test.dart └── drift │ └── x_database │ └── build │ └── .last_build_id ├── assets ├── icons │ ├── flags │ │ ├── other │ │ │ ├── chequered.svg │ │ │ ├── jolly_roger.svg │ │ │ ├── un.svg │ │ │ ├── checkered.svg │ │ │ ├── mars.svg │ │ │ ├── lgbt-transgender.svg │ │ │ ├── lgbt.svg │ │ │ ├── klingon.svg │ │ │ ├── lgbt-progress.svg │ │ │ ├── united_nations.svg │ │ │ └── nato.svg │ │ ├── ad.svg.vec │ │ ├── ae.svg.vec │ │ ├── af.svg.vec │ │ ├── ag.svg.vec │ │ ├── ai.svg.vec │ │ ├── al.svg.vec │ │ ├── am.svg.vec │ │ ├── an.svg.vec │ │ ├── ao.svg.vec │ │ ├── aq.svg.vec │ │ ├── ar.svg.vec │ │ ├── as.svg.vec │ │ ├── at.svg.vec │ │ ├── au.svg.vec │ │ ├── aw.svg.vec │ │ ├── ax.svg.vec │ │ ├── az.svg.vec │ │ ├── ba.svg.vec │ │ ├── bb.svg.vec │ │ ├── bd.svg.vec │ │ ├── be.svg.vec │ │ ├── bf.svg.vec │ │ ├── bg.svg.vec │ │ ├── bh.svg.vec │ │ ├── bi.svg.vec │ │ ├── bj.svg.vec │ │ ├── bl.svg.vec │ │ ├── bm.svg.vec │ │ ├── bn.svg.vec │ │ ├── bo.svg.vec │ │ ├── br.svg.vec │ │ ├── bs.svg.vec │ │ ├── bt.svg.vec │ │ ├── bw.svg.vec │ │ ├── by.svg.vec │ │ ├── bz.svg.vec │ │ ├── ca.svg.vec │ │ ├── cc.svg.vec │ │ ├── cd.svg.vec │ │ ├── cf.svg.vec │ │ ├── cg.svg.vec │ │ ├── ch.svg.vec │ │ ├── ci.svg.vec │ │ ├── ck.svg.vec │ │ ├── cl.svg.vec │ │ ├── cm.svg.vec │ │ ├── cn.svg.vec │ │ ├── co.svg.vec │ │ ├── cq.svg.vec │ │ ├── cr.svg.vec │ │ ├── cu.svg.vec │ │ ├── cv.svg.vec │ │ ├── cw.svg.vec │ │ ├── cx.svg.vec │ │ ├── cy.svg.vec │ │ ├── cz.svg.vec │ │ ├── de.svg.vec │ │ ├── dj.svg.vec │ │ ├── dk.svg.vec │ │ ├── dm.svg.vec │ │ ├── do.svg.vec │ │ ├── dz.svg.vec │ │ ├── ec.svg.vec │ │ ├── ee.svg.vec │ │ ├── eg.svg.vec │ │ ├── eh.svg.vec │ │ ├── eo.svg.vec │ │ ├── er.svg.vec │ │ ├── es.svg.vec │ │ ├── et.svg.vec │ │ ├── ewe.svg.vec │ │ ├── fi.svg.vec │ │ ├── fj.svg.vec │ │ ├── fk.svg.vec │ │ ├── fm.svg.vec │ │ ├── fo.svg.vec │ │ ├── fr.svg.vec │ │ ├── ga.svg.vec │ │ ├── gb.svg.vec │ │ ├── gd.svg.vec │ │ ├── ge.svg.vec │ │ ├── gf.svg.vec │ │ ├── gg.svg.vec │ │ ├── gh.svg.vec │ │ ├── gi.svg.vec │ │ ├── gl.svg.vec │ │ ├── gm.svg.vec │ │ ├── gn.svg.vec │ │ ├── gp.svg.vec │ │ ├── gq.svg.vec │ │ ├── gr.svg.vec │ │ ├── gs.svg.vec │ │ ├── gt.svg.vec │ │ ├── gu.svg.vec │ │ ├── gw.svg.vec │ │ ├── gy.svg.vec │ │ ├── hk.svg.vec │ │ ├── hn.svg.vec │ │ ├── hr.svg.vec │ │ ├── ht.svg.vec │ │ ├── hu.svg.vec │ │ ├── ia.svg.vec │ │ ├── id.svg.vec │ │ ├── ie.svg.vec │ │ ├── il.svg.vec │ │ ├── im.svg.vec │ │ ├── in.svg.vec │ │ ├── io.svg.vec │ │ ├── iq.svg.vec │ │ ├── ir.svg.vec │ │ ├── is.svg.vec │ │ ├── it.svg.vec │ │ ├── je.svg.vec │ │ ├── jm.svg.vec │ │ ├── jo.svg.vec │ │ ├── jp.svg.vec │ │ ├── ke.svg.vec │ │ ├── kg.svg.vec │ │ ├── kh.svg.vec │ │ ├── ki.svg.vec │ │ ├── km.svg.vec │ │ ├── kn.svg.vec │ │ ├── kp.svg.vec │ │ ├── kr.svg.vec │ │ ├── kw.svg.vec │ │ ├── ky.svg.vec │ │ ├── kz.svg.vec │ │ ├── la.svg.vec │ │ ├── lb.svg.vec │ │ ├── lc.svg.vec │ │ ├── li.svg.vec │ │ ├── lk.svg.vec │ │ ├── lr.svg.vec │ │ ├── ls.svg.vec │ │ ├── lt.svg.vec │ │ ├── lu.svg.vec │ │ ├── lv.svg.vec │ │ ├── ly.svg.vec │ │ ├── ma.svg.vec │ │ ├── mc.svg.vec │ │ ├── md.svg.vec │ │ ├── me.svg.vec │ │ ├── mf.svg.vec │ │ ├── mg.svg.vec │ │ ├── mh.svg.vec │ │ ├── mk.svg.vec │ │ ├── ml.svg.vec │ │ ├── mm.svg.vec │ │ ├── mn.svg.vec │ │ ├── mo.svg.vec │ │ ├── mp.svg.vec │ │ ├── mq.svg.vec │ │ ├── mr.svg.vec │ │ ├── ms.svg.vec │ │ ├── mt.svg.vec │ │ ├── mu.svg.vec │ │ ├── mv.svg.vec │ │ ├── mw.svg.vec │ │ ├── mx.svg.vec │ │ ├── my.svg.vec │ │ ├── mz.svg.vec │ │ ├── na.svg.vec │ │ ├── nc.svg.vec │ │ ├── ne.svg.vec │ │ ├── nf.svg.vec │ │ ├── ng.svg.vec │ │ ├── ni.svg.vec │ │ ├── nl.svg.vec │ │ ├── no.svg.vec │ │ ├── non.svg.vec │ │ ├── np.svg.vec │ │ ├── nr.svg.vec │ │ ├── nu.svg.vec │ │ ├── nz.svg.vec │ │ ├── om.svg.vec │ │ ├── pa.svg.vec │ │ ├── pe.svg.vec │ │ ├── pf.svg.vec │ │ ├── pg.svg.vec │ │ ├── ph.svg.vec │ │ ├── pk.svg.vec │ │ ├── pl.svg.vec │ │ ├── pm.svg.vec │ │ ├── pn.svg.vec │ │ ├── pr.svg.vec │ │ ├── ps.svg.vec │ │ ├── pt.svg.vec │ │ ├── pw.svg.vec │ │ ├── py.svg.vec │ │ ├── qa.svg.vec │ │ ├── re.svg.vec │ │ ├── ro.svg.vec │ │ ├── rs.svg.vec │ │ ├── ru.svg.vec │ │ ├── rw.svg.vec │ │ ├── sa.svg.vec │ │ ├── sb.svg.vec │ │ ├── sc.svg.vec │ │ ├── sd.svg.vec │ │ ├── se.svg.vec │ │ ├── sg.svg.vec │ │ ├── si.svg.vec │ │ ├── sk.svg.vec │ │ ├── sl.svg.vec │ │ ├── sm.svg.vec │ │ ├── sn.svg.vec │ │ ├── so.svg.vec │ │ ├── sr.svg.vec │ │ ├── ss.svg.vec │ │ ├── st.svg.vec │ │ ├── sv.svg.vec │ │ ├── sx.svg.vec │ │ ├── sy.svg.vec │ │ ├── sz.svg.vec │ │ ├── tc.svg.vec │ │ ├── td.svg.vec │ │ ├── tf.svg.vec │ │ ├── tg.svg.vec │ │ ├── th.svg.vec │ │ ├── tj.svg.vec │ │ ├── tk.svg.vec │ │ ├── tl.svg.vec │ │ ├── tm.svg.vec │ │ ├── tn.svg.vec │ │ ├── to.svg.vec │ │ ├── tr.svg.vec │ │ ├── tt.svg.vec │ │ ├── tv.svg.vec │ │ ├── tw.svg.vec │ │ ├── tz.svg.vec │ │ ├── ua.svg.vec │ │ ├── ug.svg.vec │ │ ├── us.svg.vec │ │ ├── uy.svg.vec │ │ ├── uz.svg.vec │ │ ├── va.svg.vec │ │ ├── vc.svg.vec │ │ ├── ve.svg.vec │ │ ├── vg.svg.vec │ │ ├── vi.svg.vec │ │ ├── vn.svg.vec │ │ ├── vo.svg.vec │ │ ├── vu.svg.vec │ │ ├── wf.svg.vec │ │ ├── ws.svg.vec │ │ ├── xk.svg.vec │ │ ├── xx.svg.vec │ │ ├── ye.svg.vec │ │ ├── yi.svg.vec │ │ ├── yt.svg.vec │ │ ├── yu.svg.vec │ │ ├── za.svg.vec │ │ ├── zm.svg.vec │ │ ├── zw.svg.vec │ │ ├── au-nt.svg.vec │ │ ├── au-sa.svg.vec │ │ ├── au-wa.svg.vec │ │ ├── bq-bo.svg.vec │ │ ├── bq-sa.svg.vec │ │ ├── bq-se.svg.vec │ │ ├── ca-bc.svg.vec │ │ ├── ca-qc.svg.vec │ │ ├── ch-gr.svg.vec │ │ ├── cn-xj.svg.vec │ │ ├── earth.svg.vec │ │ ├── ec-w.svg.vec │ │ ├── en-au.svg.vec │ │ ├── en-ca.svg.vec │ │ ├── en-gh.svg.vec │ │ ├── en-hk.svg.vec │ │ ├── en-ie.svg.vec │ │ ├── en-in.svg.vec │ │ ├── en-ke.svg.vec │ │ ├── en-ng.svg.vec │ │ ├── en-nz.svg.vec │ │ ├── en-ph.svg.vec │ │ ├── en-sg.svg.vec │ │ ├── en-tz.svg.vec │ │ ├── en-us.svg.vec │ │ ├── en-za.svg.vec │ │ ├── es-ar.svg.vec │ │ ├── es-ce.svg.vec │ │ ├── es-cn.svg.vec │ │ ├── es-ct.svg.vec │ │ ├── es-ga.svg.vec │ │ ├── es-ib.svg.vec │ │ ├── es-ml.svg.vec │ │ ├── es-mx.svg.vec │ │ ├── es-pv.svg.vec │ │ ├── et-af.svg.vec │ │ ├── et-am.svg.vec │ │ ├── et-be.svg.vec │ │ ├── et-ga.svg.vec │ │ ├── et-ha.svg.vec │ │ ├── et-or.svg.vec │ │ ├── et-si.svg.vec │ │ ├── et-sn.svg.vec │ │ ├── et-so.svg.vec │ │ ├── et-sw.svg.vec │ │ ├── et-ti.svg.vec │ │ ├── fr-cp.svg.vec │ │ ├── ge-ab.svg.vec │ │ ├── hausa.svg.vec │ │ ├── hmong.svg.vec │ │ ├── id-jb.svg.vec │ │ ├── id-jt.svg.vec │ │ ├── in-as.svg.vec │ │ ├── in-gj.svg.vec │ │ ├── in-ka.svg.vec │ │ ├── in-mn.svg.vec │ │ ├── in-mz.svg.vec │ │ ├── in-or.svg.vec │ │ ├── in-tg.svg.vec │ │ ├── in-tn.svg.vec │ │ ├── iq-kr.svg.vec │ │ ├── kongo.svg.vec │ │ ├── lgbt.svg.vec │ │ ├── maori.svg.vec │ │ ├── mars.svg.vec │ │ ├── nato.svg.vec │ │ ├── nl-fr.svg.vec │ │ ├── otomi.svg.vec │ │ ├── pk-jk.svg.vec │ │ ├── pk-sd.svg.vec │ │ ├── pt-20.svg.vec │ │ ├── pt-30.svg.vec │ │ ├── pt-br.svg.vec │ │ ├── ru-ba.svg.vec │ │ ├── ru-ce.svg.vec │ │ ├── ru-cu.svg.vec │ │ ├── ru-da.svg.vec │ │ ├── ru-ko.svg.vec │ │ ├── ru-ta.svg.vec │ │ ├── ru-ud.svg.vec │ │ ├── sami.svg.vec │ │ ├── sh-ac.svg.vec │ │ ├── sh-hl.svg.vec │ │ ├── sh-ta.svg.vec │ │ ├── tibet.svg.vec │ │ ├── au-act.svg.vec │ │ ├── au-nsw.svg.vec │ │ ├── au-qld.svg.vec │ │ ├── au-tas.svg.vec │ │ ├── au-vic.svg.vec │ │ ├── fr-20r.svg.vec │ │ ├── fr-bre.svg.vec │ │ ├── gb-con.svg.vec │ │ ├── gb-eng.svg.vec │ │ ├── gb-nir.svg.vec │ │ ├── gb-ork.svg.vec │ │ ├── gb-sct.svg.vec │ │ ├── gb-wls.svg.vec │ │ ├── guarani.svg.vec │ │ ├── kanuri.svg.vec │ │ ├── kikuyu.svg.vec │ │ ├── klingon.svg.vec │ │ ├── malayali.svg.vec │ │ ├── mq-old.svg.vec │ │ ├── olympics.svg.vec │ │ ├── pirate.svg.vec │ │ ├── quechua.svg.vec │ │ ├── ru-dpr.svg.vec │ │ ├── ru-lpr.svg.vec │ │ ├── wiphala.svg.vec │ │ ├── af-emirate.svg.vec │ │ ├── checkered.svg.vec │ │ ├── es-variant.svg.vec │ │ ├── occitania.svg.vec │ │ ├── somaliland.svg.vec │ │ ├── yorubaland.svg.vec │ │ ├── aq-true_south.svg.vec │ │ ├── au-aboriginal.svg.vec │ │ ├── easter_island.svg.vec │ │ ├── interslavic.svg.vec │ │ ├── lgbt-progress.svg.vec │ │ ├── south_ossetia.svg.vec │ │ ├── soviet_union.svg.vec │ │ ├── transnistria.svg.vec │ │ ├── european_union.svg.vec │ │ ├── northern_cyprus.svg.vec │ │ ├── united_nations.svg.vec │ │ ├── lgbt-transgender.svg.vec │ │ ├── east_african_federation.svg.vec │ │ └── au-torres_strait_islands.svg.vec │ ├── V.png │ ├── ad.png │ ├── google.png │ ├── ios_icon.png │ ├── log_fill.png │ ├── youtube.png │ ├── V_outline.png │ ├── home_fill.png │ ├── macos_icon.png │ ├── speed_fill.png │ ├── home_outline.png │ ├── log_outline.png │ ├── speed_outline.png │ ├── telegram_icon.png │ ├── windows_icon.ico │ ├── x_logo_black.png │ ├── x_logo_white.png │ ├── microsoft_logo.png │ ├── windows_icon_outline.ico │ ├── V.svg │ ├── V_outline.svg │ ├── github-mark.svg │ └── github-mark-white.svg ├── dev │ ├── icon.png │ ├── win.png │ ├── 512 x 512.png │ ├── ads │ │ ├── Group 1.png │ │ ├── Rectangle 24.png │ │ ├── Rectangle 25.png │ │ ├── Rectangle 26.png │ │ ├── Rectangle 28.png │ │ ├── Rectangle 29.png │ │ ├── Rectangle 34.png │ │ ├── Rectangle 37.png │ │ ├── Rectangle 38.png │ │ ├── Rectangle 39.png │ │ ├── Rectangle 46.png │ │ ├── Rectangle 51.png │ │ ├── Rectangle 24 (1).png │ │ └── Rectangle 24 (2).png │ ├── c.svg │ ├── a.svg │ └── b.svg ├── configs │ └── 1_hysteria.yaml └── oss │ └── hys ├── android ├── Gemfile ├── app │ ├── src │ │ ├── main │ │ │ ├── res │ │ │ │ ├── mipmap-hdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── launcher_icon.png │ │ │ │ ├── mipmap-mdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── launcher_icon.png │ │ │ │ ├── mipmap-xhdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── launcher_icon.png │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── launcher_icon.png │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── launcher_icon.png │ │ │ │ ├── xml │ │ │ │ │ └── provider_paths.xml │ │ │ │ ├── drawable │ │ │ │ │ └── launch_background.xml │ │ │ │ └── drawable-v21 │ │ │ │ │ └── launch_background.xml │ │ │ └── kotlin │ │ │ │ └── com5vnetwork │ │ │ │ └── vproxy │ │ │ │ └── MainActivity.kt │ │ ├── apk │ │ │ └── AndroidManifest.xml │ │ ├── debug │ │ │ └── AndroidManifest.xml │ │ └── profile │ │ │ └── AndroidManifest.xml │ └── google-services.json ├── gradle.properties ├── fastlane │ └── Appfile ├── gradle │ └── wrapper │ │ └── gradle-wrapper.properties ├── .gitignore ├── build.gradle.kts └── settings.gradle.kts ├── ios ├── Gemfile ├── Runner │ ├── Runner-Bridging-Header.h │ ├── Assets.xcassets │ │ ├── LaunchImage.imageset │ │ │ ├── LaunchImage.png │ │ │ ├── LaunchImage@2x.png │ │ │ ├── LaunchImage@3x.png │ │ │ ├── README.md │ │ │ └── Contents.json │ │ └── AppIcon.appiconset │ │ │ ├── Icon-App-20x20@1x.png │ │ │ ├── Icon-App-20x20@2x.png │ │ │ ├── Icon-App-20x20@3x.png │ │ │ ├── Icon-App-29x29@1x.png │ │ │ ├── Icon-App-29x29@2x.png │ │ │ ├── Icon-App-29x29@3x.png │ │ │ ├── Icon-App-40x40@1x.png │ │ │ ├── Icon-App-40x40@2x.png │ │ │ ├── Icon-App-40x40@3x.png │ │ │ ├── Icon-App-50x50@1x.png │ │ │ ├── Icon-App-50x50@2x.png │ │ │ ├── Icon-App-57x57@1x.png │ │ │ ├── Icon-App-57x57@2x.png │ │ │ ├── Icon-App-60x60@2x.png │ │ │ ├── Icon-App-60x60@3x.png │ │ │ ├── Icon-App-72x72@1x.png │ │ │ ├── Icon-App-72x72@2x.png │ │ │ ├── Icon-App-76x76@1x.png │ │ │ ├── Icon-App-76x76@2x.png │ │ │ ├── Icon-App-1024x1024@1x.png │ │ │ └── Icon-App-83.5x83.5@2x.png │ ├── Runner.entitlements │ ├── RunnerDebug-staging.entitlements │ ├── RunnerRelease-staging.entitlements │ ├── RunnerDebug-production.entitlements │ ├── RunnerRelease-production.entitlements │ ├── AppDelegate.swift │ └── GoogleService-Info.plist ├── Flutter │ ├── Debug.xcconfig │ ├── Release.xcconfig │ └── AppFrameworkInfo.plist ├── Runner.xcodeproj │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata │ │ ├── WorkspaceSettings.xcsettings │ │ └── IDEWorkspaceChecks.plist ├── ImageNotification │ ├── NotificationService.h │ └── Info.plist ├── Runner.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ ├── WorkspaceSettings.xcsettings │ │ └── IDEWorkspaceChecks.plist ├── RunnerTests │ └── RunnerTests.swift ├── fastlane │ ├── Appfile │ ├── report.xml │ ├── Matchfile │ └── README.md ├── PacketTunnel │ ├── PacketTunnel.entitlements │ ├── PacketTunnelDebug-staging.entitlements │ ├── PacketTunnelDebug-production.entitlements │ ├── PacketTunnelRelease-staging.entitlements │ └── Info.plist └── .gitignore ├── darwin └── Library.swift ├── macos ├── dmg │ ├── icon.icns │ └── dmg.json ├── Runner │ ├── Configs │ │ ├── Release.xcconfig │ │ ├── Debug.xcconfig │ │ ├── Warnings.xcconfig │ │ └── AppInfo.xcconfig │ ├── Assets.xcassets │ │ └── AppIcon.appiconset │ │ │ ├── app_icon_1024.png │ │ │ ├── app_icon_128.png │ │ │ ├── app_icon_16.png │ │ │ ├── app_icon_256.png │ │ │ ├── app_icon_32.png │ │ │ ├── app_icon_512.png │ │ │ └── app_icon_64.png │ ├── MainFlutterWindow.swift │ ├── Release.entitlements │ ├── Assets │ │ └── x.svg │ ├── GoogleService-Info.plist │ └── RunnerRelease-staging.entitlements ├── .gitignore ├── Flutter │ ├── Flutter-Debug.xcconfig │ └── Flutter-Release.xcconfig ├── SystemExtension │ ├── main.swift │ ├── SystemExtensionDebug-pkg.entitlements │ ├── SystemExtensionRelease-pkg.entitlements │ └── Info.plist ├── Runner.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ └── IDEWorkspaceChecks.plist ├── Runner.xcodeproj │ └── project.xcworkspace │ │ └── xcshareddata │ │ └── IDEWorkspaceChecks.plist ├── RunnerTests │ └── RunnerTests.swift ├── PacketTunnel │ ├── Info.plist │ ├── PacketTunnel.entitlements │ ├── PacketTunnelDebug-pkg.entitlements │ ├── PacketTunnelRelease-production.entitlements │ ├── PacketTunnelDebug-staging.entitlements │ └── PacketTunnelRelease-staging.entitlements └── ExportOptions.plist ├── windows ├── runner │ ├── Runner.aps │ ├── resources │ │ └── app_icon.ico │ ├── guid.h │ ├── resource.h │ ├── guid.cpp │ └── runner.exe.manifest ├── .gitignore └── flutter │ └── generated_plugin_registrant.h ├── .gitmodules ├── devtools_options.yaml ├── distribute_options.yaml ├── ffigen.yaml ├── ffigen_linux.yaml ├── pigeons ├── android.dart ├── darwin.dart └── windows.dart └── flutter_launcher_icons.yaml /lib/common/error.dart: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /lib/common/ip.dart: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /lib/common/path.dart: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /lib/app/server/server.dart: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /linux/.gitignore: -------------------------------------------------------------------------------- 1 | flutter/ephemeral 2 | -------------------------------------------------------------------------------- /test/unit_test/database_test.dart: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/flags/other/chequered.svg: -------------------------------------------------------------------------------- 1 | checkered.svg -------------------------------------------------------------------------------- /assets/icons/flags/other/jolly_roger.svg: -------------------------------------------------------------------------------- 1 | pirate.svg -------------------------------------------------------------------------------- /assets/icons/flags/other/un.svg: -------------------------------------------------------------------------------- 1 | united_nations.svg -------------------------------------------------------------------------------- /test/unit_test/upload_log/tunnel_logs/latest.txt: -------------------------------------------------------------------------------- 1 | testLatest -------------------------------------------------------------------------------- /test/unit_test/upload_log/flutter_logs/latest.txt: -------------------------------------------------------------------------------- 1 | testLatest -------------------------------------------------------------------------------- /lib/app/log/log_setting.dart: -------------------------------------------------------------------------------- 1 | 2 | class LogSetting { 3 | 4 | } -------------------------------------------------------------------------------- /android/Gemfile: -------------------------------------------------------------------------------- 1 | source "https://rubygems.org" 2 | 3 | gem "fastlane" 4 | -------------------------------------------------------------------------------- /ios/Gemfile: -------------------------------------------------------------------------------- 1 | source "https://rubygems.org" 2 | 3 | gem "fastlane" 4 | -------------------------------------------------------------------------------- /lib/utils/error.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/material.dart'; 2 | 3 | -------------------------------------------------------------------------------- /darwin/Library.swift: -------------------------------------------------------------------------------- 1 | import Foundation 2 | 3 | public class Library {} 4 | -------------------------------------------------------------------------------- /ios/Runner/Runner-Bridging-Header.h: -------------------------------------------------------------------------------- 1 | #import "GeneratedPluginRegistrant.h" 2 | -------------------------------------------------------------------------------- /test/drift/x_database/build/.last_build_id: -------------------------------------------------------------------------------- 1 | ae30582a806dc4248fd237072391b5a0 -------------------------------------------------------------------------------- /test/unit_test/read_from_clipboard_test.dart: -------------------------------------------------------------------------------- 1 | 2 | void main() { 3 | 4 | } -------------------------------------------------------------------------------- /assets/dev/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/icon.png -------------------------------------------------------------------------------- /assets/dev/win.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/win.png -------------------------------------------------------------------------------- /assets/icons/V.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/V.png -------------------------------------------------------------------------------- /assets/icons/ad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/ad.png -------------------------------------------------------------------------------- /macos/dmg/icon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/macos/dmg/icon.icns -------------------------------------------------------------------------------- /assets/dev/512 x 512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/512 x 512.png -------------------------------------------------------------------------------- /assets/icons/google.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/google.png -------------------------------------------------------------------------------- /assets/icons/ios_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/ios_icon.png -------------------------------------------------------------------------------- /assets/icons/log_fill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/log_fill.png -------------------------------------------------------------------------------- /assets/icons/youtube.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/youtube.png -------------------------------------------------------------------------------- /windows/runner/Runner.aps: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/windows/runner/Runner.aps -------------------------------------------------------------------------------- /assets/dev/ads/Group 1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Group 1.png -------------------------------------------------------------------------------- /assets/icons/V_outline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/V_outline.png -------------------------------------------------------------------------------- /assets/icons/home_fill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/home_fill.png -------------------------------------------------------------------------------- /assets/icons/macos_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/macos_icon.png -------------------------------------------------------------------------------- /assets/icons/speed_fill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/speed_fill.png -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "vx-core"] 2 | path = vx-core 3 | url = https://github.com/5VNetwork/vx-core 4 | -------------------------------------------------------------------------------- /assets/icons/flags/ad.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ad.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ae.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ae.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/af.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/af.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ag.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ag.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ai.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ai.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/al.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/al.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/am.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/am.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/an.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/an.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ao.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ao.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/aq.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/aq.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ar.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ar.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/as.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/as.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/at.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/at.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/au.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/au.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/aw.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/aw.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ax.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ax.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/az.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/az.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ba.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ba.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bb.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bb.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bd.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bd.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/be.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/be.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bf.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bf.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bg.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bg.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bh.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bh.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bi.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bi.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bj.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bj.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bl.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bl.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bm.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bm.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bo.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bo.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/br.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/br.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bs.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bs.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bt.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bt.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bw.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bw.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/by.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/by.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bz.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bz.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ca.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ca.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cc.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cc.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cd.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cd.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cf.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cf.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cg.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cg.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ch.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ch.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ci.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ci.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ck.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ck.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cl.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cl.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cm.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cm.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/co.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/co.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cq.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cq.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cu.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cu.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cv.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cv.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cw.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cw.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cx.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cx.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cy.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cy.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cz.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cz.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/de.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/de.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/dj.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/dj.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/dk.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/dk.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/dm.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/dm.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/do.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/do.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/dz.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/dz.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ec.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ec.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ee.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ee.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/eg.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/eg.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/eh.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/eh.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/eo.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/eo.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/er.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/er.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/es.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/es.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/et.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/et.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ewe.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ewe.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/fi.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/fi.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/fj.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/fj.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/fk.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/fk.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/fm.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/fm.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/fo.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/fo.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/fr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/fr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ga.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ga.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gb.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gb.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gd.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gd.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ge.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ge.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gf.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gf.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gg.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gg.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gh.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gh.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gi.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gi.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gl.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gl.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gm.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gm.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gp.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gp.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gq.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gq.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gs.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gs.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gt.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gt.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gu.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gu.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gw.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gw.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gy.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gy.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/hk.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/hk.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/hn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/hn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/hr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/hr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ht.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ht.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/hu.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/hu.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ia.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ia.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/id.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/id.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ie.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ie.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/il.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/il.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/im.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/im.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/in.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/in.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/io.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/io.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/iq.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/iq.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ir.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ir.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/is.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/is.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/it.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/it.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/je.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/je.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/jm.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/jm.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/jo.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/jo.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/jp.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/jp.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ke.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ke.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/kg.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/kg.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/kh.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/kh.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ki.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ki.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/km.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/km.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/kn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/kn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/kp.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/kp.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/kr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/kr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/kw.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/kw.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ky.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ky.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/kz.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/kz.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/la.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/la.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/lb.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/lb.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/lc.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/lc.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/li.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/li.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/lk.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/lk.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/lr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/lr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ls.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ls.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/lt.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/lt.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/lu.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/lu.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/lv.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/lv.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ly.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ly.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ma.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ma.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mc.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mc.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/md.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/md.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/me.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/me.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mf.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mf.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mg.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mg.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mh.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mh.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mk.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mk.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ml.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ml.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mm.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mm.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mo.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mo.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mp.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mp.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mq.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mq.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ms.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ms.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mt.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mt.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mu.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mu.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mv.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mv.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mw.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mw.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mx.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mx.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/my.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/my.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mz.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mz.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/na.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/na.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/nc.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/nc.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ne.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ne.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/nf.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/nf.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ng.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ng.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ni.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ni.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/nl.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/nl.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/no.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/no.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/non.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/non.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/np.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/np.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/nr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/nr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/nu.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/nu.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/nz.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/nz.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/om.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/om.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pa.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pa.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pe.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pe.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pf.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pf.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pg.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pg.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ph.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ph.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pk.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pk.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pl.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pl.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pm.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pm.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ps.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ps.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pt.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pt.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pw.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pw.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/py.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/py.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/qa.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/qa.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/re.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/re.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ro.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ro.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/rs.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/rs.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ru.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ru.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/rw.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/rw.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sa.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sa.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sb.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sb.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sc.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sc.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sd.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sd.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/se.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/se.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sg.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sg.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/si.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/si.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sk.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sk.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sl.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sl.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sm.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sm.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/so.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/so.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ss.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ss.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/st.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/st.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sv.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sv.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sx.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sx.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sy.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sy.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sz.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sz.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tc.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tc.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/td.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/td.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tf.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tf.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tg.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tg.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/th.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/th.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tj.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tj.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tk.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tk.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tl.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tl.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tm.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tm.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/to.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/to.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tt.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tt.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tv.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tv.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tw.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tw.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tz.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tz.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ua.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ua.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ug.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ug.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/us.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/us.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/uy.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/uy.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/uz.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/uz.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/va.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/va.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/vc.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/vc.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ve.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ve.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/vg.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/vg.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/vi.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/vi.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/vn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/vn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/vo.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/vo.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/vu.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/vu.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/wf.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/wf.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ws.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ws.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/xk.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/xk.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/xx.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/xx.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ye.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ye.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/yi.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/yi.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/yt.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/yt.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/yu.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/yu.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/za.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/za.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/zm.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/zm.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/zw.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/zw.svg.vec -------------------------------------------------------------------------------- /assets/icons/home_outline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/home_outline.png -------------------------------------------------------------------------------- /assets/icons/log_outline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/log_outline.png -------------------------------------------------------------------------------- /assets/icons/speed_outline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/speed_outline.png -------------------------------------------------------------------------------- /assets/icons/telegram_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/telegram_icon.png -------------------------------------------------------------------------------- /assets/icons/windows_icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/windows_icon.ico -------------------------------------------------------------------------------- /assets/icons/x_logo_black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/x_logo_black.png -------------------------------------------------------------------------------- /assets/icons/x_logo_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/x_logo_white.png -------------------------------------------------------------------------------- /assets/dev/ads/Rectangle 24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Rectangle 24.png -------------------------------------------------------------------------------- /assets/dev/ads/Rectangle 25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Rectangle 25.png -------------------------------------------------------------------------------- /assets/dev/ads/Rectangle 26.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Rectangle 26.png -------------------------------------------------------------------------------- /assets/dev/ads/Rectangle 28.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Rectangle 28.png -------------------------------------------------------------------------------- /assets/dev/ads/Rectangle 29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Rectangle 29.png -------------------------------------------------------------------------------- /assets/dev/ads/Rectangle 34.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Rectangle 34.png -------------------------------------------------------------------------------- /assets/dev/ads/Rectangle 37.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Rectangle 37.png -------------------------------------------------------------------------------- /assets/dev/ads/Rectangle 38.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Rectangle 38.png -------------------------------------------------------------------------------- /assets/dev/ads/Rectangle 39.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Rectangle 39.png -------------------------------------------------------------------------------- /assets/dev/ads/Rectangle 46.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Rectangle 46.png -------------------------------------------------------------------------------- /assets/dev/ads/Rectangle 51.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Rectangle 51.png -------------------------------------------------------------------------------- /assets/icons/flags/au-nt.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/au-nt.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/au-sa.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/au-sa.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/au-wa.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/au-wa.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bq-bo.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bq-bo.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bq-sa.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bq-sa.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/bq-se.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/bq-se.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ca-bc.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ca-bc.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ca-qc.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ca-qc.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ch-gr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ch-gr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/cn-xj.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/cn-xj.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/earth.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/earth.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ec-w.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ec-w.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-au.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-au.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-ca.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-ca.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-gh.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-gh.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-hk.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-hk.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-ie.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-ie.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-in.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-in.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-ke.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-ke.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-ng.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-ng.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-nz.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-nz.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-ph.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-ph.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-sg.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-sg.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-tz.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-tz.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-us.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-us.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/en-za.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/en-za.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/es-ar.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/es-ar.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/es-ce.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/es-ce.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/es-cn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/es-cn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/es-ct.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/es-ct.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/es-ga.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/es-ga.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/es-ib.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/es-ib.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/es-ml.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/es-ml.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/es-mx.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/es-mx.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/es-pv.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/es-pv.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/et-af.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/et-af.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/et-am.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/et-am.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/et-be.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/et-be.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/et-ga.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/et-ga.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/et-ha.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/et-ha.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/et-or.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/et-or.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/et-si.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/et-si.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/et-sn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/et-sn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/et-so.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/et-so.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/et-sw.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/et-sw.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/et-ti.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/et-ti.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/fr-cp.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/fr-cp.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ge-ab.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ge-ab.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/hausa.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/hausa.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/hmong.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/hmong.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/id-jb.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/id-jb.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/id-jt.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/id-jt.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/in-as.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/in-as.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/in-gj.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/in-gj.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/in-ka.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/in-ka.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/in-mn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/in-mn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/in-mz.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/in-mz.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/in-or.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/in-or.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/in-tg.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/in-tg.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/in-tn.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/in-tn.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/iq-kr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/iq-kr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/kongo.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/kongo.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/lgbt.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/lgbt.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/maori.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/maori.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mars.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mars.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/nato.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/nato.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/nl-fr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/nl-fr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/otomi.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/otomi.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pk-jk.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pk-jk.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pk-sd.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pk-sd.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pt-20.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pt-20.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pt-30.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pt-30.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pt-br.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pt-br.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ru-ba.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ru-ba.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ru-ce.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ru-ce.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ru-cu.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ru-cu.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ru-da.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ru-da.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ru-ko.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ru-ko.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ru-ta.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ru-ta.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ru-ud.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ru-ud.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sami.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sami.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sh-ac.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sh-ac.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sh-hl.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sh-hl.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/sh-ta.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/sh-ta.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/tibet.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/tibet.svg.vec -------------------------------------------------------------------------------- /assets/icons/microsoft_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/microsoft_logo.png -------------------------------------------------------------------------------- /assets/dev/ads/Rectangle 24 (1).png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Rectangle 24 (1).png -------------------------------------------------------------------------------- /assets/dev/ads/Rectangle 24 (2).png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/dev/ads/Rectangle 24 (2).png -------------------------------------------------------------------------------- /assets/icons/flags/au-act.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/au-act.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/au-nsw.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/au-nsw.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/au-qld.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/au-qld.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/au-tas.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/au-tas.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/au-vic.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/au-vic.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/fr-20r.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/fr-20r.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/fr-bre.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/fr-bre.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gb-con.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gb-con.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gb-eng.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gb-eng.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gb-nir.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gb-nir.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gb-ork.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gb-ork.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gb-sct.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gb-sct.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/gb-wls.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/gb-wls.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/guarani.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/guarani.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/kanuri.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/kanuri.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/kikuyu.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/kikuyu.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/klingon.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/klingon.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/malayali.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/malayali.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/mq-old.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/mq-old.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/olympics.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/olympics.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/pirate.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/pirate.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/quechua.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/quechua.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ru-dpr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ru-dpr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/ru-lpr.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/ru-lpr.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/wiphala.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/wiphala.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/af-emirate.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/af-emirate.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/checkered.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/checkered.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/es-variant.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/es-variant.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/occitania.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/occitania.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/somaliland.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/somaliland.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/yorubaland.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/yorubaland.svg.vec -------------------------------------------------------------------------------- /assets/icons/windows_icon_outline.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/windows_icon_outline.ico -------------------------------------------------------------------------------- /windows/runner/resources/app_icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/windows/runner/resources/app_icon.ico -------------------------------------------------------------------------------- /assets/icons/flags/aq-true_south.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/aq-true_south.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/au-aboriginal.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/au-aboriginal.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/easter_island.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/easter_island.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/interslavic.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/interslavic.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/lgbt-progress.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/lgbt-progress.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/south_ossetia.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/south_ossetia.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/soviet_union.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/soviet_union.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/transnistria.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/transnistria.svg.vec -------------------------------------------------------------------------------- /macos/Runner/Configs/Release.xcconfig: -------------------------------------------------------------------------------- 1 | #include "../../Flutter/Flutter-Release.xcconfig" 2 | #include "Warnings.xcconfig" 3 | -------------------------------------------------------------------------------- /assets/icons/flags/european_union.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/european_union.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/northern_cyprus.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/northern_cyprus.svg.vec -------------------------------------------------------------------------------- /assets/icons/flags/united_nations.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/united_nations.svg.vec -------------------------------------------------------------------------------- /macos/.gitignore: -------------------------------------------------------------------------------- 1 | # Flutter-related 2 | **/Flutter/ephemeral/ 3 | **/Pods/ 4 | 5 | # Xcode-related 6 | **/dgph 7 | **/xcuserdata/ 8 | -------------------------------------------------------------------------------- /assets/icons/flags/lgbt-transgender.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/lgbt-transgender.svg.vec -------------------------------------------------------------------------------- /ios/Flutter/Debug.xcconfig: -------------------------------------------------------------------------------- 1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" 2 | #include "Generated.xcconfig" 3 | -------------------------------------------------------------------------------- /assets/icons/flags/east_african_federation.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/east_african_federation.svg.vec -------------------------------------------------------------------------------- /ios/Flutter/Release.xcconfig: -------------------------------------------------------------------------------- 1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" 2 | #include "Generated.xcconfig" 3 | -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/android/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/android/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /assets/icons/flags/au-torres_strait_islands.svg.vec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/assets/icons/flags/au-torres_strait_islands.svg.vec -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-hdpi/launcher_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/android/app/src/main/res/mipmap-hdpi/launcher_icon.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-mdpi/launcher_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/android/app/src/main/res/mipmap-mdpi/launcher_icon.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xhdpi/launcher_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/android/app/src/main/res/mipmap-xhdpi/launcher_icon.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png -------------------------------------------------------------------------------- /assets/configs/1_hysteria.yaml: -------------------------------------------------------------------------------- 1 | # listen: :443 2 | auth: 3 | type: password 4 | password: __UUID__ 5 | 6 | tls: 7 | cert: __CERTIFICATE_PATH__ 8 | key: __KEY_PATH__ -------------------------------------------------------------------------------- /macos/Flutter/Flutter-Debug.xcconfig: -------------------------------------------------------------------------------- 1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" 2 | #include "ephemeral/Flutter-Generated.xcconfig" 3 | -------------------------------------------------------------------------------- /macos/Flutter/Flutter-Release.xcconfig: -------------------------------------------------------------------------------- 1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" 2 | #include "ephemeral/Flutter-Generated.xcconfig" 3 | -------------------------------------------------------------------------------- /macos/Runner/Configs/Debug.xcconfig: -------------------------------------------------------------------------------- 1 | #include "../../Flutter/Flutter-Debug.xcconfig" 2 | #include "../../Flutter/Flutter-Debug.xcconfig" 3 | #include "Warnings.xcconfig" 4 | -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png -------------------------------------------------------------------------------- /macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png -------------------------------------------------------------------------------- /macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png -------------------------------------------------------------------------------- /macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png -------------------------------------------------------------------------------- /macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png -------------------------------------------------------------------------------- /macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png -------------------------------------------------------------------------------- /macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png -------------------------------------------------------------------------------- /macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png -------------------------------------------------------------------------------- /windows/runner/guid.h: -------------------------------------------------------------------------------- 1 | #ifndef GUID_H 2 | #define GUID_H 3 | 4 | #include 5 | 6 | extern const GUID PROVIDER_KEY; 7 | extern const GUID SUBLAYER_KEY; 8 | 9 | #endif -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/5VNetwork/VX/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png -------------------------------------------------------------------------------- /android/gradle.properties: -------------------------------------------------------------------------------- 1 | org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError 2 | android.useAndroidX=true 3 | android.enableJetifier=true 4 | -------------------------------------------------------------------------------- /linux/main.cc: -------------------------------------------------------------------------------- 1 | #include "my_application.h" 2 | 3 | int main(int argc, char** argv) { 4 | g_autoptr(MyApplication) app = my_application_new(); 5 | return g_application_run(G_APPLICATION(app), argc, argv); 6 | } 7 | -------------------------------------------------------------------------------- /ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /devtools_options.yaml: -------------------------------------------------------------------------------- 1 | description: This file stores settings for Dart & Flutter DevTools. 2 | documentation: https://docs.flutter.dev/tools/devtools/extensions#configure-extension-enablement-states 3 | extensions: 4 | - provider: true -------------------------------------------------------------------------------- /android/fastlane/Appfile: -------------------------------------------------------------------------------- 1 | #json_key_file("/Users/shan/fastlane-play-store.json") # Path to the json secret file - Follow https://docs.fastlane.tools/actions/supply/#setup to get one 2 | package_name("com5vnetwork.vproxy") # e.g. com.krausefx.app 3 | -------------------------------------------------------------------------------- /android/app/src/main/res/xml/provider_paths.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | -------------------------------------------------------------------------------- /assets/dev/c.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/dev/a.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/dev/b.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Wed Mar 26 11:10:45 CST 2025 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip 5 | zipStoreBase=GRADLE_USER_HOME 6 | zipStorePath=wrapper/dists 7 | -------------------------------------------------------------------------------- /macos/SystemExtension/main.swift: -------------------------------------------------------------------------------- 1 | // 2 | // main.swift 3 | // SystemExtension 4 | // 5 | // Created by v on 2025-09-10. 6 | // 7 | 8 | import Foundation 9 | import NetworkExtension 10 | 11 | autoreleasepool { 12 | NEProvider.startSystemExtensionMode() 13 | } 14 | 15 | dispatchMain() 16 | -------------------------------------------------------------------------------- /ios/ImageNotification/NotificationService.h: -------------------------------------------------------------------------------- 1 | // 2 | // NotificationService.h 3 | // ImageNotification 4 | // 5 | // Created by v on 2025-08-13. 6 | // 7 | 8 | #import 9 | 10 | @interface NotificationService : UNNotificationServiceExtension 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /lib/utils/root.dart: -------------------------------------------------------------------------------- 1 | 2 | import 'dart:io'; 3 | 4 | Future checkLinuxRootPrivileges() async { 5 | try { 6 | final result = await Process.run('id', ['-u']); 7 | return result.exitCode == 0 && result.stdout.toString().trim() == '0'; 8 | } catch (e) { 9 | return false; 10 | } 11 | } -------------------------------------------------------------------------------- /ios/Runner.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreviewsEnabled 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /macos/Runner.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /assets/icons/flags/other/checkered.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /lib/widgets/divider.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/material.dart'; 2 | 3 | const divider = Divider( 4 | indent: 0, 5 | endIndent: 0, 6 | thickness: 0, 7 | height: 0, 8 | ); 9 | 10 | const verticalDivider = VerticalDivider( 11 | indent: 0, 12 | endIndent: 0, 13 | thickness: 0, 14 | width: 0, 15 | ); 16 | 17 | -------------------------------------------------------------------------------- /test/unit_test/desktop_app_info_test.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter_test/flutter_test.dart'; 2 | import 'package:vx/utils/desktop_installed_apps.dart'; 3 | 4 | 5 | void main() { 6 | test('DesktopInstalledApps', () async { 7 | final apps = await DesktopInstalledApps.getInstalledApps(); 8 | print(apps); 9 | }); 10 | } -------------------------------------------------------------------------------- /ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreviewsEnabled 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /test/unit_test/ip_test.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter_test/flutter_test.dart'; 2 | import 'package:http/http.dart' as http; 3 | 4 | void main() { 5 | test('test https://ipapi.co/json', () async { 6 | // get a response 7 | final response = await http.get(Uri.parse('https://ipapi.co/json')); 8 | print(response.body); 9 | }); 10 | } 11 | -------------------------------------------------------------------------------- /assets/icons/flags/other/mars.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /distribute_options.yaml: -------------------------------------------------------------------------------- 1 | output: dist/ 2 | releases: 3 | - name: release 4 | jobs: 5 | # Build and publish your apk pkg to pgyer 6 | - name: release-linux 7 | package: 8 | platform: linux 9 | target: deb 10 | build_args: 11 | target-platform: linux 12 | publish_to: github 13 | -------------------------------------------------------------------------------- /lib/utils/mac.dart: -------------------------------------------------------------------------------- 1 | import 'dart:convert'; 2 | import 'package:crypto/crypto.dart'; 3 | 4 | String generateHMAC_SHA256(String message, List secretBytes) { 5 | final messageBytes = utf8.encode(message); 6 | final hmacSha256 = Hmac(sha256, secretBytes); 7 | final digest = hmacSha256.convert(messageBytes); 8 | return digest.toString(); 9 | } 10 | -------------------------------------------------------------------------------- /lib/init.dart: -------------------------------------------------------------------------------- 1 | part of 'main.dart'; 2 | 3 | Future _initDatabase({QueryInterceptor? interceptor}) async { 4 | try { 5 | database = AppDatabase(interceptor: interceptor); 6 | } catch (e) { 7 | logger.e('Error initializing database', error: e); 8 | reportError("init database", e); 9 | } 10 | 11 | logger.d('Database initialized'); 12 | } 13 | -------------------------------------------------------------------------------- /ios/RunnerTests/RunnerTests.swift: -------------------------------------------------------------------------------- 1 | import Flutter 2 | import UIKit 3 | import XCTest 4 | 5 | class RunnerTests: XCTestCase { 6 | 7 | func testExample() { 8 | // If you add code to the Runner application, consider adding tests here. 9 | // See https://developer.apple.com/documentation/xctest for more information about using XCTest. 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /test/unit_test/cert_test.dart: -------------------------------------------------------------------------------- 1 | import 'dart:convert'; 2 | 3 | import 'package:flutter_test/flutter_test.dart'; 4 | import 'package:vx/utils/cert.dart'; 5 | 6 | void main() { 7 | test('test generate cert', () async { 8 | final cert = await getCertificate(); 9 | print(utf8.decode(cert.certificate)); 10 | print(utf8.decode(cert.key)); 11 | }); 12 | } 13 | -------------------------------------------------------------------------------- /android/app/src/apk/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /macos/RunnerTests/RunnerTests.swift: -------------------------------------------------------------------------------- 1 | import FlutterMacOS 2 | import Cocoa 3 | import XCTest 4 | 5 | class RunnerTests: XCTestCase { 6 | 7 | func testExample() { 8 | // If you add code to the Runner application, consider adding tests here. 9 | // See https://developer.apple.com/documentation/xctest for more information about using XCTest. 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /ios/fastlane/Appfile: -------------------------------------------------------------------------------- 1 | app_identifier("com.5vnetwork.x") # The bundle identifier of your app 2 | apple_id(ENV["APPLE_ID"]) # Your Apple Developer Portal username 3 | 4 | itc_team_id("126215122") # App Store Connect Team ID 5 | team_id("K4FDLB3LLD") # Developer Portal Team ID 6 | 7 | # For more information about the Appfile, see: 8 | # https://docs.fastlane.tools/advanced/#appfile 9 | -------------------------------------------------------------------------------- /lib/utils/process.dart: -------------------------------------------------------------------------------- 1 | import 'dart:io'; 2 | 3 | Future runCmds(List args, String sudoPassword) async { 4 | final process = await Process.start('sudo', ['-S', ...args]); 5 | process.stdin.write('$sudoPassword\n'); 6 | process.stdin.close(); 7 | stdout.addStream(process.stdout); 8 | stderr.addStream(process.stderr); 9 | return process.exitCode; 10 | } 11 | -------------------------------------------------------------------------------- /lib/common/list.dart: -------------------------------------------------------------------------------- 1 | List stableMoveToFront(List list, bool Function(T) condition) { 2 | final result = []; 3 | final deferred = []; 4 | 5 | for (final item in list) { 6 | if (condition(item)) { 7 | result.add(item); 8 | } else { 9 | deferred.add(item); 10 | } 11 | } 12 | 13 | result.addAll(deferred); 14 | return result; 15 | } -------------------------------------------------------------------------------- /lib/widgets/pro_icon.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/material.dart'; 2 | import 'package:vx/theme.dart'; 3 | 4 | const proIcon = Icon(Icons.stars_rounded, color: XBlue); 5 | const proIconExtraSmall = Icon(Icons.stars_rounded, color: XBlue, size: 16); 6 | const proIconSmall = Icon(Icons.stars_rounded, color: XBlue, size: 18); 7 | const largeProIcon = Icon(Icons.stars_rounded, color: XBlue, size: 32); -------------------------------------------------------------------------------- /windows/.gitignore: -------------------------------------------------------------------------------- 1 | flutter/ephemeral/ 2 | 3 | # Visual Studio user-specific files. 4 | *.suo 5 | *.user 6 | *.userosscache 7 | *.sln.docstates 8 | 9 | # Visual Studio build-related files. 10 | x64/ 11 | x86/ 12 | 13 | # Visual Studio cache files 14 | # files ending in .cache can be ignored 15 | *.[Cc]ache 16 | # but keep track of directories ending in .cache 17 | !*.[Cc]ache/ 18 | 19 | -------------------------------------------------------------------------------- /android/.gitignore: -------------------------------------------------------------------------------- 1 | gradle-wrapper.jar 2 | /.gradle 3 | /captures/ 4 | /gradlew 5 | /gradlew.bat 6 | /local.properties 7 | GeneratedPluginRegistrant.java 8 | 9 | # Remember to never publicly share your keystore. 10 | # See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app 11 | key.properties 12 | **/*.keystore 13 | **/*.jks 14 | 15 | 16 | app/.cxx/ 17 | /app/.cxx/ -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md: -------------------------------------------------------------------------------- 1 | # Launch Screen Assets 2 | 3 | You can customize the launch screen with your own desired assets by replacing the image files in this directory. 4 | 5 | You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. -------------------------------------------------------------------------------- /linux/flutter/generated_plugin_registrant.h: -------------------------------------------------------------------------------- 1 | // 2 | // Generated file. Do not edit. 3 | // 4 | 5 | // clang-format off 6 | 7 | #ifndef GENERATED_PLUGIN_REGISTRANT_ 8 | #define GENERATED_PLUGIN_REGISTRANT_ 9 | 10 | #include 11 | 12 | // Registers Flutter plugins. 13 | void fl_register_plugins(FlPluginRegistry* registry); 14 | 15 | #endif // GENERATED_PLUGIN_REGISTRANT_ 16 | -------------------------------------------------------------------------------- /windows/flutter/generated_plugin_registrant.h: -------------------------------------------------------------------------------- 1 | // 2 | // Generated file. Do not edit. 3 | // 4 | 5 | // clang-format off 6 | 7 | #ifndef GENERATED_PLUGIN_REGISTRANT_ 8 | #define GENERATED_PLUGIN_REGISTRANT_ 9 | 10 | #include 11 | 12 | // Registers Flutter plugins. 13 | void RegisterPlugins(flutter::PluginRegistry* registry); 14 | 15 | #endif // GENERATED_PLUGIN_REGISTRANT_ 16 | -------------------------------------------------------------------------------- /test/unit_test/github_release_test.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter_test/flutter_test.dart'; 2 | import 'package:vx/utils/github_release.dart'; 3 | 4 | void main() { 5 | group('GitHubReleaseService', () { 6 | test('should check for updates', () async { 7 | final versionAndUrl = await GitHubReleaseService.checkForUpdates('1.0.0'); 8 | expect(versionAndUrl, isNotNull); 9 | }); 10 | }); 11 | } 12 | -------------------------------------------------------------------------------- /lib/utils/permission.dart: -------------------------------------------------------------------------------- 1 | import 'dart:io'; 2 | 3 | Future userId() async { 4 | if (Platform.isLinux) { 5 | return await Process.run('id', ['-u']).then((value) => int.parse(value.stdout)); 6 | } 7 | return 0; 8 | } 9 | 10 | Future groupId() async { 11 | if (Platform.isLinux) { 12 | return await Process.run('id', ['-g']).then((value) => int.parse(value.stdout)); 13 | } 14 | return 0; 15 | } -------------------------------------------------------------------------------- /lib/app/home/proxy_selector.dart: -------------------------------------------------------------------------------- 1 | part of 'home.dart'; 2 | 3 | class ProxySelectorHome extends StatelessWidget { 4 | const ProxySelectorHome({super.key}); 5 | 6 | @override 7 | Widget build(BuildContext context) { 8 | return HomeCard( 9 | title: AppLocalizations.of(context)!.selector, 10 | icon: Icons.filter_alt_outlined, 11 | child: const DefaultProxySelector(), 12 | ); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /android/app/src/debug/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /lib/widgets/add_button.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/material.dart'; 2 | 3 | Widget getSmallAddButton({ 4 | required Function() onPressed, 5 | }) { 6 | return IconButton.filledTonal( 7 | onPressed: onPressed, 8 | style: IconButton.styleFrom( 9 | visualDensity: VisualDensity.compact, 10 | padding: const EdgeInsets.all(0), 11 | ), 12 | icon: const Icon(Icons.add_rounded, size: 18)); 13 | } 14 | -------------------------------------------------------------------------------- /android/app/src/profile/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /lib/widgets/circular_progress_indicator.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/material.dart'; 2 | 3 | const smallCircularProgressIndicator = SizedBox( 4 | width: 12, 5 | height: 12, 6 | child: CircularProgressIndicator( 7 | strokeWidth: 2, 8 | ), 9 | ); 10 | 11 | const mdCircularProgressIndicator = SizedBox( 12 | width: 24, 13 | height: 24, 14 | child: CircularProgressIndicator( 15 | strokeWidth: 3, 16 | ), 17 | ); 18 | -------------------------------------------------------------------------------- /lib/common/file.dart: -------------------------------------------------------------------------------- 1 | import 'dart:io'; 2 | import 'dart:typed_data'; 3 | 4 | import 'package:path/path.dart'; 5 | 6 | /// Atomically write data to a file 7 | Future atomicWriteToFile( 8 | Directory dir, String name, Uint8List data) async { 9 | final tmpFile = 10 | File(join(dir.path, '${DateTime.now().millisecondsSinceEpoch}.tmp')); 11 | tmpFile.writeAsBytesSync(data); 12 | tmpFile.renameSync(join(dir.path, name)); 13 | } 14 | -------------------------------------------------------------------------------- /lib/app/server/vx_config_routing.dart: -------------------------------------------------------------------------------- 1 | part of 'vx_config.dart'; 2 | 3 | class _Routing extends StatelessWidget { 4 | const _Routing({super.key, required this.config}); 5 | final ServerConfig config; 6 | 7 | @override 8 | Widget build(BuildContext context) { 9 | return Padding( 10 | padding: const EdgeInsets.symmetric(horizontal: 8), 11 | child: UnmodifiableRouteConfig(routerConfig: config.router), 12 | ); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /macos/dmg/dmg.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "VX", 3 | "icon": "icon.icns", 4 | "background-color": "#FFFFFF", 5 | "contents": [ 6 | { 7 | "x": 448, 8 | "y": 344, 9 | "type": "link", 10 | "path": "/Applications" 11 | }, 12 | { 13 | "x": 192, 14 | "y": 344, 15 | "type": "file", 16 | "path": "VX.app" 17 | } 18 | ] 19 | } -------------------------------------------------------------------------------- /assets/icons/flags/other/lgbt-transgender.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /macos/SystemExtension/SystemExtensionDebug-pkg.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.networking.networkextension 6 | 7 | packet-tunnel-provider 8 | 9 | com.apple.security.app-sandbox 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /lib/common/version.dart: -------------------------------------------------------------------------------- 1 | bool versionNewerThan(String version1, String version2) { 2 | final version1Parts = version1.split('.'); 3 | final version2Parts = version2.split('.'); 4 | for (int i = 0; i < version1Parts.length; i++) { 5 | if (int.parse(version1Parts[i]) > int.parse(version2Parts[i])) { 6 | return true; 7 | } else if (int.parse(version1Parts[i]) < int.parse(version2Parts[i])) { 8 | return false; 9 | } 10 | } 11 | return false; 12 | } 13 | -------------------------------------------------------------------------------- /ios/ImageNotification/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | NSExtension 6 | 7 | NSExtensionPointIdentifier 8 | com.apple.usernotifications.service 9 | NSExtensionPrincipalClass 10 | NotificationService 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /linux/my_application.h: -------------------------------------------------------------------------------- 1 | #ifndef FLUTTER_MY_APPLICATION_H_ 2 | #define FLUTTER_MY_APPLICATION_H_ 3 | 4 | #include 5 | 6 | G_DECLARE_FINAL_TYPE(MyApplication, my_application, MY, APPLICATION, 7 | GtkApplication) 8 | 9 | /** 10 | * my_application_new: 11 | * 12 | * Creates a new Flutter-based application. 13 | * 14 | * Returns: a new #MyApplication. 15 | */ 16 | MyApplication* my_application_new(); 17 | 18 | #endif // FLUTTER_MY_APPLICATION_H_ 19 | -------------------------------------------------------------------------------- /assets/icons/V.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /lib/widgets/adaptive_dialog.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/material.dart'; 2 | import 'package:provider/provider.dart'; 3 | import 'package:vx/app/layout_provider.dart'; 4 | 5 | void showAdaptiveDialog(BuildContext context, Widget child) { 6 | if (context.read().isCompact) { 7 | showModalBottomSheet( 8 | useRootNavigator: true, context: context, builder: (context) => child); 9 | } else { 10 | showDialog(context: context, builder: (context) => child); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /assets/icons/flags/other/lgbt.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /windows/runner/resource.h: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Visual C++ generated include file. 3 | // Used by Runner.rc 4 | // 5 | #define IDI_APP_ICON 101 6 | 7 | // Next default values for new objects 8 | // 9 | #ifdef APSTUDIO_INVOKED 10 | #ifndef APSTUDIO_READONLY_SYMBOLS 11 | #define _APS_NEXT_RESOURCE_VALUE 102 12 | #define _APS_NEXT_COMMAND_VALUE 40001 13 | #define _APS_NEXT_CONTROL_VALUE 1001 14 | #define _APS_NEXT_SYMED_VALUE 101 15 | #endif 16 | #endif 17 | -------------------------------------------------------------------------------- /android/app/src/main/res/drawable/launch_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 12 | 13 | -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-v21/launch_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 12 | 13 | -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "LaunchImage.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "LaunchImage@2V.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "LaunchImage@3V.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /ios/Runner/Runner.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | aps-environment 6 | development 7 | com.apple.developer.networking.networkextension 8 | 9 | packet-tunnel-provider 10 | 11 | com.apple.security.application-groups 12 | 13 | group.com.5vnetwork.x 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /macos/PacketTunnel/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | ITSAppUsesNonExemptEncryption 6 | 7 | NSExtension 8 | 9 | NSExtensionPointIdentifier 10 | com.apple.networkextension.packet-tunnel 11 | NSExtensionPrincipalClass 12 | $(PRODUCT_MODULE_NAME).PacketTunnelProvider 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /lib/widgets/dialog_shell.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/material.dart'; 2 | 3 | class DialogShell extends StatelessWidget { 4 | const DialogShell({super.key, required this.child}); 5 | final Widget child; 6 | @override 7 | Widget build(BuildContext context) { 8 | return Center( 9 | child: ConstrainedBox( 10 | constraints: const BoxConstraints(maxWidth: 560), 11 | child: Card( 12 | clipBehavior: Clip.hardEdge, 13 | margin: const EdgeInsets.symmetric(vertical: 24), 14 | child: child), 15 | ), 16 | ); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /assets/icons/flags/other/klingon.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ffigen.yaml: -------------------------------------------------------------------------------- 1 | # Run with `dart run ffigen --config ffigen.yaml`. 2 | name: XApiBindings 3 | description: | 4 | Bindings for `src/tm_windows.h`. 5 | 6 | Regenerate bindings with `dart run ffigen --config ffigen.yaml`. 7 | output: 'lib/utils/x_api_bindings_generated.dart' 8 | headers: 9 | entry-points: 10 | - '../vx-core/x_dll/x.h' 11 | include-directives: 12 | - '../vx-core/x_dll/x.h' 13 | preamble: | 14 | // ignore_for_file: always_specify_types 15 | // ignore_for_file: camel_case_types 16 | // ignore_for_file: non_constant_identifier_names 17 | comments: 18 | style: any 19 | length: full 20 | -------------------------------------------------------------------------------- /lib/auth/user.dart: -------------------------------------------------------------------------------- 1 | import 'package:equatable/equatable.dart'; 2 | 3 | class User extends Equatable { 4 | const User( 5 | {required this.id, 6 | required this.email, 7 | this.proExpiredAt, 8 | required this.pro}); 9 | final String id; 10 | final String email; 11 | final DateTime? proExpiredAt; 12 | final bool pro; 13 | 14 | @override 15 | List get props => [id, email, proExpiredAt, pro]; 16 | 17 | bool get isProUser { 18 | return pro; 19 | } 20 | 21 | bool get unlockPro => isProUser; 22 | 23 | bool get lifetimePro => pro && proExpiredAt == null; 24 | } 25 | -------------------------------------------------------------------------------- /android/build.gradle.kts: -------------------------------------------------------------------------------- 1 | allprojects { 2 | repositories { 3 | google() 4 | mavenCentral() 5 | } 6 | } 7 | 8 | val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get() 9 | rootProject.layout.buildDirectory.value(newBuildDir) 10 | 11 | subprojects { 12 | val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name) 13 | project.layout.buildDirectory.value(newSubprojectBuildDir) 14 | } 15 | subprojects { 16 | project.evaluationDependsOn(":app") 17 | } 18 | 19 | tasks.register("clean") { 20 | delete(rootProject.layout.buildDirectory) 21 | } 22 | -------------------------------------------------------------------------------- /assets/icons/V_outline.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ios/fastlane/report.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /ffigen_linux.yaml: -------------------------------------------------------------------------------- 1 | # Run with `dart run ffigen --config ffigen.yaml`. 2 | name: XApiLinuxBindings 3 | description: | 4 | Bindings for `src/tm_linux.h`. 5 | 6 | Regenerate bindings with `dart run ffigen --config ffigen_linux.yaml`. 7 | output: 'lib/utils/x_api_linux_bindings_generated.dart' 8 | headers: 9 | entry-points: 10 | - '../vx-core/x_linux/x.h' 11 | include-directives: 12 | - '../vx-core/x_linux/x.h' 13 | preamble: | 14 | // ignore_for_file: always_specify_types 15 | // ignore_for_file: camel_case_types 16 | // ignore_for_file: non_constant_identifier_names 17 | comments: 18 | style: any 19 | length: full 20 | -------------------------------------------------------------------------------- /lib/widgets/bottom_sheet_shell.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/material.dart'; 2 | 3 | class DragHandle extends StatelessWidget { 4 | const DragHandle({super.key}); 5 | 6 | @override 7 | Widget build(BuildContext context) { 8 | return SizedBox( 9 | height: 36, 10 | width: 32, 11 | child: Center( 12 | child: Container( 13 | height: 4, 14 | width: 32, 15 | decoration: BoxDecoration( 16 | borderRadius: BorderRadius.circular(4 / 2), 17 | color: Theme.of(context).colorScheme.onSurfaceVariant, 18 | ), 19 | ), 20 | ), 21 | ); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /lib/common/os.dart: -------------------------------------------------------------------------------- 1 | import 'dart:io'; 2 | 3 | String getCpuArch() { 4 | // Get the Dart VM version string which contains architecture information 5 | final vmVersion = Platform.version.toLowerCase(); 6 | 7 | if (vmVersion.contains('arm64') || vmVersion.contains('aarch64')) { 8 | return 'arm64'; 9 | } else if (vmVersion.contains('x64') || vmVersion.contains('x86_64') || vmVersion.contains('amd64')) { 10 | return 'amd64'; 11 | } else if (vmVersion.contains('arm')) { 12 | return 'arm'; 13 | } else if (vmVersion.contains('x86') || vmVersion.contains('ia32')) { 14 | return 'x86'; 15 | } else { 16 | return 'unknown'; 17 | } 18 | } -------------------------------------------------------------------------------- /lib/utils/encrypt.dart: -------------------------------------------------------------------------------- 1 | import 'dart:convert'; 2 | import 'dart:typed_data'; 3 | import 'package:vx/data/sync.pb.dart'; 4 | import 'package:vx/utils/file.dart'; 5 | 6 | /// Encrypt raw bytes to base64 string (general purpose) 7 | String encryptToBase64(Uint8List data, String password) { 8 | final encryptedBytes = encryptBytes(data, password); 9 | return base64Encode(encryptedBytes); 10 | } 11 | 12 | /// Decrypt base64 string back to raw bytes (general purpose) 13 | Uint8List decryptFromBase64(String encryptedBase64, String password) { 14 | final encryptedBytes = base64Decode(encryptedBase64); 15 | return decryptBytes(encryptedBytes, password); 16 | } 17 | -------------------------------------------------------------------------------- /macos/Runner/Configs/Warnings.xcconfig: -------------------------------------------------------------------------------- 1 | WARNING_CFLAGS = -Wall -Wconditional-uninitialized -Wnullable-to-nonnull-conversion -Wmissing-method-return-type -Woverlength-strings 2 | GCC_WARN_UNDECLARED_SELECTOR = YES 3 | CLANG_UNDEFINED_BEHAVIOR_SANITIZER_NULLABILITY = YES 4 | CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE 5 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES 6 | CLANG_WARN_PRAGMA_PACK = YES 7 | CLANG_WARN_STRICT_PROTOTYPES = YES 8 | CLANG_WARN_COMMA = YES 9 | GCC_WARN_STRICT_SELECTOR_MATCH = YES 10 | CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES 11 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES 12 | GCC_WARN_SHADOW = YES 13 | CLANG_WARN_UNREACHABLE_CODE = YES 14 | -------------------------------------------------------------------------------- /macos/Runner/Configs/AppInfo.xcconfig: -------------------------------------------------------------------------------- 1 | // Application-level settings for the Runner target. 2 | // 3 | // This may be replaced with something auto-generated from metadata (e.g., pubspec.yaml) in the 4 | // future. If not, the values below would default to using the project name when this becomes a 5 | // 'flutter create' template. 6 | 7 | // The application's name. By default this is also the title of the Flutter window. 8 | PRODUCT_NAME = VX 9 | 10 | // The application's bundle identifier 11 | PRODUCT_BUNDLE_IDENTIFIER = com.5vnetwork.x 12 | 13 | // The copyright displayed in application information 14 | PRODUCT_COPYRIGHT = Copyright © 2025 5V Network LLC. All rights reserved. 15 | -------------------------------------------------------------------------------- /ios/Runner/RunnerDebug-staging.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | aps-environment 6 | development 7 | com.apple.developer.applesignin 8 | 9 | Default 10 | 11 | com.apple.developer.networking.networkextension 12 | 13 | packet-tunnel-provider 14 | 15 | com.apple.security.application-groups 16 | 17 | group.com.5vnetwork.x 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /ios/Runner/RunnerRelease-staging.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | aps-environment 6 | development 7 | com.apple.developer.applesignin 8 | 9 | Default 10 | 11 | com.apple.developer.networking.networkextension 12 | 13 | packet-tunnel-provider 14 | 15 | com.apple.security.application-groups 16 | 17 | group.com.5vnetwork.x 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /ios/Runner/RunnerDebug-production.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | aps-environment 6 | development 7 | com.apple.developer.applesignin 8 | 9 | Default 10 | 11 | com.apple.developer.networking.networkextension 12 | 13 | packet-tunnel-provider 14 | 15 | com.apple.security.application-groups 16 | 17 | group.com.5vnetwork.x 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /ios/Runner/RunnerRelease-production.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | aps-environment 6 | development 7 | com.apple.developer.applesignin 8 | 9 | Default 10 | 11 | com.apple.developer.networking.networkextension 12 | 13 | packet-tunnel-provider 14 | 15 | com.apple.security.application-groups 16 | 17 | group.com.5vnetwork.x 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /android/app/src/main/kotlin/com5vnetwork/vproxy/MainActivity.kt: -------------------------------------------------------------------------------- 1 | package com5vnetwork.vproxy 2 | 3 | import AndroidHostApi 4 | import AndroidHostApiImpl 5 | import io.flutter.embedding.android.FlutterActivity 6 | import androidx.annotation.NonNull 7 | import io.flutter.embedding.engine.FlutterEngine 8 | import io.flutter.plugin.common.MethodChannel 9 | 10 | class MainActivity: FlutterActivity() { 11 | override fun configureFlutterEngine(@NonNull flutterEngine: FlutterEngine) { 12 | super.configureFlutterEngine(flutterEngine) 13 | val hostApi = AndroidHostApiImpl(this) 14 | AndroidHostApi.setUp(flutterEngine.dartExecutor.binaryMessenger, hostApi) 15 | 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ios/PacketTunnel/PacketTunnel.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.networking.networkextension 6 | 7 | packet-tunnel-provider 8 | 9 | com.apple.security.application-groups 10 | 11 | group.com.5vnetwork.x 12 | 13 | com.apple.security.network.server 14 | 15 | com.apple.security.network.client 16 | 17 | com.apple.security.app-sandbox 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /ios/PacketTunnel/PacketTunnelDebug-staging.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.networking.networkextension 6 | 7 | packet-tunnel-provider 8 | 9 | com.apple.security.app-sandbox 10 | 11 | com.apple.security.application-groups 12 | 13 | group.com.5vnetwork.x 14 | 15 | com.apple.security.network.client 16 | 17 | com.apple.security.network.server 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /ios/PacketTunnel/PacketTunnelDebug-production.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.networking.networkextension 6 | 7 | packet-tunnel-provider 8 | 9 | com.apple.security.app-sandbox 10 | 11 | com.apple.security.application-groups 12 | 13 | group.com.5vnetwork.x 14 | 15 | com.apple.security.network.client 16 | 17 | com.apple.security.network.server 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /ios/PacketTunnel/PacketTunnelRelease-staging.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.networking.networkextension 6 | 7 | packet-tunnel-provider 8 | 9 | com.apple.security.app-sandbox 10 | 11 | com.apple.security.application-groups 12 | 13 | group.com.5vnetwork.x 14 | 15 | com.apple.security.network.client 16 | 17 | com.apple.security.network.server 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /macos/PacketTunnel/PacketTunnel.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.security.app-sandbox 6 | 7 | com.apple.security.application-groups 8 | 9 | $(TeamIdentifierPrefix)com.5vnetwork.x 10 | 11 | com.apple.security.network.client 12 | 13 | com.apple.security.network.server 14 | 15 | com.apple.developer.networking.networkextension 16 | 17 | packet-tunnel-provider 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /macos/Runner/MainFlutterWindow.swift: -------------------------------------------------------------------------------- 1 | import Cocoa 2 | import FlutterMacOS 3 | 4 | class MainFlutterWindow: NSWindow { 5 | 6 | override func awakeFromNib() { 7 | let flutterViewController = FlutterViewController() 8 | let windowFrame = self.frame 9 | self.contentViewController = flutterViewController 10 | self.setFrame(windowFrame, display: true) 11 | 12 | // setup host api 13 | let api = DarwinHostApiImpl() 14 | DarwinHostApiSetup.setUp(binaryMessenger: flutterViewController.engine.binaryMessenger, api: api) 15 | 16 | 17 | RegisterGeneratedPlugins(registry: flutterViewController) 18 | 19 | super.awakeFromNib() 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /macos/PacketTunnel/PacketTunnelDebug-pkg.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.networking.networkextension 6 | 7 | packet-tunnel-provider 8 | 9 | com.apple.security.app-sandbox 10 | 11 | com.apple.security.application-groups 12 | 13 | $(TeamIdentifierPrefix)com.5vnetwork.x 14 | 15 | com.apple.security.network.client 16 | 17 | com.apple.security.network.server 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /ios/.gitignore: -------------------------------------------------------------------------------- 1 | **/dgph 2 | *.mode1v3 3 | *.mode2v3 4 | *.moved-aside 5 | *.pbxuser 6 | *.perspectivev3 7 | **/*sync/ 8 | .sconsign.dblite 9 | .tags* 10 | **/.vagrant/ 11 | **/DerivedData/ 12 | Icon? 13 | **/Pods/ 14 | **/.symlinks/ 15 | profile 16 | xcuserdata 17 | **/.generated/ 18 | Flutter/App.framework 19 | Flutter/Flutter.framework 20 | Flutter/Flutter.podspec 21 | Flutter/Generated.xcconfig 22 | Flutter/ephemeral/ 23 | Flutter/app.flx 24 | Flutter/app.zip 25 | Flutter/flutter_assets/ 26 | Flutter/flutter_export_environment.sh 27 | ServiceDefinitions.json 28 | Runner/GeneratedPluginRegistrant.* 29 | 30 | # Exceptions to above rules. 31 | !default.mode1v3 32 | !default.mode2v3 33 | !default.pbxuser 34 | !default.perspectivev3 35 | -------------------------------------------------------------------------------- /pigeons/android.dart: -------------------------------------------------------------------------------- 1 | import 'package:pigeon/pigeon.dart'; 2 | 3 | @ConfigurePigeon( 4 | PigeonOptions( 5 | dartOut: 'lib/app/android_host_api.g.dart', 6 | dartOptions: DartOptions(), 7 | kotlinOut: 'android/app/src/main/kotlin/com5vnetwork/vproxy/Messages.g.kt', 8 | kotlinOptions: KotlinOptions(), 9 | ), 10 | ) 11 | @HostApi() 12 | abstract class AndroidHostApi { 13 | @async 14 | void startXApiServer(Uint8List config); 15 | Uint8List generateTls(); 16 | void redirectStdErr(String path); 17 | void requestAddTile(); 18 | } 19 | 20 | // class SplitTunnelSettings { 21 | // SplitTunnelSettings({this.blackList, this.whiteList}); 22 | // List? blackList; 23 | // List? whiteList; 24 | // } 25 | -------------------------------------------------------------------------------- /lib/widgets/form_container.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/material.dart'; 2 | 3 | class FormContainer extends StatelessWidget { 4 | const FormContainer({super.key, required this.children}); 5 | final List children; 6 | @override 7 | Widget build(BuildContext context) { 8 | return Container( 9 | decoration: BoxDecoration( 10 | border: Border.all(color: Colors.grey), 11 | color: Theme.of(context).colorScheme.surfaceContainerLow, 12 | borderRadius: BorderRadius.circular(10), 13 | ), 14 | padding: const EdgeInsets.all(16.0), 15 | child: Column( 16 | crossAxisAlignment: CrossAxisAlignment.start, 17 | children: children, 18 | ), 19 | ); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /macos/PacketTunnel/PacketTunnelRelease-production.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.networking.networkextension 6 | 7 | packet-tunnel-provider 8 | 9 | com.apple.security.app-sandbox 10 | 11 | com.apple.security.application-groups 12 | 13 | $(TeamIdentifierPrefix)com.5vnetwork.x 14 | 15 | com.apple.security.network.client 16 | 17 | com.apple.security.network.server 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /macos/PacketTunnel/PacketTunnelDebug-staging.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.networking.networkextension 6 | 7 | packet-tunnel-provider 8 | 9 | com.apple.security.app-sandbox 10 | 11 | com.apple.security.application-groups 12 | 13 | $(TeamIdentifierPrefix)com.5vnetwork.x.staging 14 | 15 | com.apple.security.network.client 16 | 17 | com.apple.security.network.server 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /macos/PacketTunnel/PacketTunnelRelease-staging.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.networking.networkextension 6 | 7 | packet-tunnel-provider 8 | 9 | com.apple.security.app-sandbox 10 | 11 | com.apple.security.application-groups 12 | 13 | $(TeamIdentifierPrefix)com.5vnetwork.x.staging 14 | 15 | com.apple.security.network.client 16 | 17 | com.apple.security.network.server 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /macos/SystemExtension/SystemExtensionRelease-pkg.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.networking.networkextension 6 | 7 | packet-tunnel-provider-systemextension 8 | 9 | com.apple.security.app-sandbox 10 | 11 | com.apple.security.application-groups 12 | 13 | K4FDLB3LLD.com.5vnetwork.x.system 14 | 15 | com.apple.security.network.client 16 | 17 | com.apple.security.network.server 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /lib/utils/device.dart: -------------------------------------------------------------------------------- 1 | import 'dart:io'; 2 | import 'package:device_info_plus/device_info_plus.dart'; 3 | import 'package:shared_preferences/shared_preferences.dart'; 4 | import 'package:uuid/uuid.dart'; 5 | 6 | Future getUniqueDeviceId() async { 7 | final prefs = await SharedPreferences.getInstance(); 8 | const key = 'unique_device_id'; 9 | 10 | // Check if we already have a stored device ID 11 | String? deviceId = prefs.getString(key); 12 | if (deviceId != null && deviceId.isNotEmpty) { 13 | return deviceId; 14 | } 15 | 16 | // Fallback to UUID if hardware ID is not available 17 | deviceId ??= const Uuid().v4(); 18 | 19 | // Store for future use 20 | await prefs.setString(key, deviceId); 21 | return deviceId; 22 | } 23 | -------------------------------------------------------------------------------- /macos/ExportOptions.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | destination 6 | export 7 | method 8 | developer-id 9 | provisioningProfiles 10 | 11 | com.5vnetwork.x.system 12 | pkg 13 | com.5vnetwork.x.system.se 14 | pkg se 15 | 16 | signingCertificate 17 | Developer ID Application 18 | signingStyle 19 | manual 20 | teamID 21 | K4FDLB3LLD 22 | 23 | 24 | -------------------------------------------------------------------------------- /flutter_launcher_icons.yaml: -------------------------------------------------------------------------------- 1 | # flutter pub run flutter_launcher_icons 2 | flutter_launcher_icons: 3 | android: "launcher_icon" 4 | image_path_android: "assets/dev/icon.png" 5 | min_sdk_android: 21 # android min sdk min:16, default 21 6 | 7 | ios: true 8 | image_path_ios: "assets/icons/ios_icon.png" 9 | #remove_alpha_channel_ios: true 10 | # image_path_ios_dark_transparent: "assets/icon/icon_dark.png" 11 | # image_path_ios_tinted_grayscale: "assets/icon/icon_tinted.png" 12 | # desaturate_tinted_to_grayscale_ios: true 13 | 14 | windows: 15 | generate: true 16 | image_path: "assets/dev/win.png" 17 | icon_size: 256 # min:48, max:256, default: 48 18 | 19 | macos: 20 | generate: true 21 | image_path: "assets/icons/macos_icon.png" 22 | -------------------------------------------------------------------------------- /macos/SystemExtension/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | NetworkExtension 6 | 7 | NEMachServiceName 8 | $(TeamIdentifierPrefix)com.5vnetwork.x.system.se 9 | NEProviderClasses 10 | 11 | com.apple.networkextension.packet-tunnel 12 | $(PRODUCT_MODULE_NAME).PacketTunnelProvider 13 | 14 | CFBundleShortVersionString 15 | $(FLUTTER_BUILD_NAME) 16 | CFBundleVersion 17 | $(FLUTTER_BUILD_NUMBER) 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /assets/icons/flags/other/lgbt-progress.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /lib/app/settings/ads.dart: -------------------------------------------------------------------------------- 1 | import 'dart:io'; 2 | 3 | import 'package:flutter/material.dart'; 4 | import 'package:vx/app/control.dart'; 5 | import 'package:vx/app/settings/setting.dart'; 6 | import 'package:vx/common/common.dart'; 7 | import 'package:vx/l10n/app_localizations.dart'; 8 | 9 | class PromotionPage extends StatelessWidget { 10 | const PromotionPage({super.key, this.showAppBar = true}); 11 | final bool showAppBar; 12 | @override 13 | Widget build(BuildContext context) { 14 | return Scaffold( 15 | appBar: showAppBar 16 | ? getAdaptiveAppBar( 17 | context, 18 | Text(AppLocalizations.of(context)!.promote), 19 | ) 20 | : null, 21 | body: Platform.isMacOS && !isPkg ? null : const Promotion(), 22 | ); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /windows/runner/guid.cpp: -------------------------------------------------------------------------------- 1 | #include "guid.h" 2 | 3 | // // {F8645546-E91B-414A-9DEE-88A67B87EA91} 4 | // DEFINE_GUID(PROVIDER_KEY, 5 | // 0xf8645546, 0xe91b, 0x414a, 0x9d, 0xee, 0x88, 0xa6, 0x7b, 0x87, 0xea, 0x91); 6 | // // {3582102E-BE36-4181-8E44-92D95CC7E7B0} 7 | // DEFINE_GUID(SUBLAYER_KEY, 8 | // 0x3582102e, 0xbe36, 0x4181, 0x8e, 0x44, 0x92, 0xd9, 0x5c, 0xc7, 0xe7, 0xb0); 9 | // // {A5D1C7A2-4384-40D9-B654-36A3B8D2EA12} 10 | // // DEFINE_GUID(DNS_SUBLAYER_KEY, 11 | // // 0xa5d1c7a2, 0x4384, 0x40d9, 0xb6, 0x54, 0x36, 0xa3, 0xb8, 0xd2, 0xea, 0x12); 12 | 13 | const GUID PROVIDER_KEY = {0xf8645546, 0xe91b, 0x414a, 0x9d, 0xee, 0x88, 0xa6, 0x7b, 0x87, 0xea, 0x91}; 14 | const GUID SUBLAYER_KEY = {0x3582102e, 0xbe36, 0x4181, 0x8e, 0x44, 0x92, 0xd9, 0x5c, 0xc7, 0xe7, 0xb0}; 15 | -------------------------------------------------------------------------------- /ios/fastlane/Matchfile: -------------------------------------------------------------------------------- 1 | # Use environment variable for GitHub token 2 | # Set GITHUB_TOKEN environment variable before running fastlane 3 | git_url(ENV["MATCH_FILE_GITHUB_URL"]) 4 | 5 | storage_mode("git") 6 | 7 | type("appstore") # The default type, can be: appstore, adhoc, enterprise or development 8 | 9 | # Specify all bundle identifiers for your targets 10 | app_identifier([ 11 | "com.5vnetwork.x", # Main app 12 | "com.5vnetwork.x.PacketTunnel", # PacketTunnel extension 13 | "com.5vnetwork.x.ImageNotification" # ImageNotification extension 14 | ]) 15 | 16 | 17 | # For all available options run `fastlane match --help` 18 | # Remove the # in the beginning of the line to enable the other options 19 | 20 | # The docs are available on https://docs.fastlane.tools/actions/match 21 | -------------------------------------------------------------------------------- /android/app/google-services.json: -------------------------------------------------------------------------------- 1 | { 2 | "project_info": { 3 | "project_number": "479311300497", 4 | "project_id": "vproxy-1407e", 5 | "storage_bucket": "vproxy-1407e.firebasestorage.app" 6 | }, 7 | "client": [ 8 | { 9 | "client_info": { 10 | "mobilesdk_app_id": "1:479311300497:android:7daf8b25965b3c1489bc30", 11 | "android_client_info": { 12 | "package_name": "com5vnetwork.vproxy" 13 | } 14 | }, 15 | "oauth_client": [], 16 | "api_key": [ 17 | { 18 | "current_key": "AIzaSyDCPgguh3Ga7OAoCX3FAsckTLAjZmpDUzA" 19 | } 20 | ], 21 | "services": { 22 | "appinvite_service": { 23 | "other_platform_oauth_client": [] 24 | } 25 | } 26 | } 27 | ], 28 | "configuration_version": "1" 29 | } -------------------------------------------------------------------------------- /lib/utils/ui.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/material.dart'; 2 | import 'package:vx/common/extension.dart'; 3 | import 'package:vx/l10n/app_localizations.dart'; 4 | 5 | bool isCompact(BuildContext context) { 6 | return MediaQuery.of(context).size.isCompact; 7 | } 8 | 9 | String formatDuration(BuildContext context, Duration duration) { 10 | final l10n = AppLocalizations.of(context); 11 | if (duration.inDays > 0) { 12 | return '${duration.inDays} ${l10n!.days} ${duration.inHours % 24} ${l10n.hours}'; 13 | } else if (duration.inHours > 0) { 14 | return '${duration.inHours} ${l10n!.hours} ${duration.inMinutes % 60} ${l10n.minutes}'; 15 | } else if (duration.inMinutes > 0) { 16 | return '${duration.inMinutes} ${l10n!.minutes}'; 17 | } else { 18 | return '${duration.inSeconds} ${l10n!.seconds}'; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /ios/Runner/AppDelegate.swift: -------------------------------------------------------------------------------- 1 | import UIKit 2 | import Flutter 3 | 4 | @main 5 | @objc class AppDelegate: FlutterAppDelegate { 6 | override func application( 7 | _ application: UIApplication, 8 | didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? 9 | ) -> Bool { 10 | let controller : FlutterViewController = window?.rootViewController as! FlutterViewController 11 | let api = DarwinHostApiImpl() 12 | DarwinHostApiSetup.setUp(binaryMessenger: controller.binaryMessenger, api: api) 13 | 14 | if #available(iOS 10.0, *) { 15 | UNUserNotificationCenter.current().delegate = self as? UNUserNotificationCenterDelegate 16 | } 17 | 18 | GeneratedPluginRegistrant.register(with: self) 19 | 20 | return super.application(application, didFinishLaunchingWithOptions: launchOptions) 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /test/unit_test/file_encryption/file_encryption_test.dart: -------------------------------------------------------------------------------- 1 | import 'dart:io'; 2 | 3 | import 'package:flutter_test/flutter_test.dart'; 4 | import 'package:vx/utils/file.dart'; 5 | 6 | void main() { 7 | test('test file encryption and decryption', () async { 8 | File('./test/unit_test/file_encryption/a.txt').writeAsStringSync('test'); 9 | final inputFile = File('./test/unit_test/file_encryption/a.txt'); 10 | print(inputFile.path); 11 | final encryptedFile = await encryptFile(inputFile, 'test'); 12 | expect(await encryptedFile.exists(), true); 13 | final decryptedFile = await decryptFile(encryptedFile, 'test'); 14 | expect(await decryptedFile.exists(), true); 15 | expect(await inputFile.readAsBytes(), await decryptedFile.readAsBytes()); 16 | await encryptedFile.delete(); 17 | await decryptedFile.delete(); 18 | await inputFile.delete(); 19 | }); 20 | } 21 | -------------------------------------------------------------------------------- /test/unit_test/net_test.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter_test/flutter_test.dart'; 2 | import 'package:tm/protos/common/net/net.pb.dart'; 3 | import 'package:vx/common/net.dart'; 4 | 5 | void main() { 6 | test('test portRangesToString', () async { 7 | // get a response 8 | final response = portRangesToString([PortRange(from: 1, to: 10)]); 9 | expect(response, '1-10'); 10 | 11 | final response2 = portRangesToString([PortRange(from: 1, to: 10), PortRange(from: 11, to: 20)]); 12 | expect(response2, '1-10,11-20'); 13 | 14 | final response3 = portRangesToString([PortRange(from: 1, to: 10), PortRange(from: 11, to: 11)]); 15 | expect(response3, '1-10,11'); 16 | 17 | final response4 = portRangesToString([]); 18 | expect(response4, ''); 19 | 20 | final response5 = portRangesToString([PortRange(from: 1, to: 1)]); 21 | expect(response5, '1'); 22 | }); 23 | } 24 | -------------------------------------------------------------------------------- /assets/icons/flags/other/united_nations.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ios/Flutter/AppFrameworkInfo.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | App 9 | CFBundleIdentifier 10 | io.flutter.flutter.app 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | App 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1.0 23 | MinimumOSVersion 24 | 15.0 25 | 26 | 27 | -------------------------------------------------------------------------------- /pigeons/darwin.dart: -------------------------------------------------------------------------------- 1 | import 'package:pigeon/pigeon.dart'; 2 | 3 | @ConfigurePigeon( 4 | PigeonOptions( 5 | dartOut: 'lib/app/darwin_host_api.g.dart', 6 | dartOptions: DartOptions(), 7 | swiftOut: 'darwin/Messages.g.swift', 8 | swiftOptions: SwiftOptions(), 9 | ), 10 | ) 11 | @HostApi() 12 | abstract class DarwinHostApi { 13 | String appGroupPath(); 14 | @async 15 | void startXApiServer(Uint8List config); 16 | @async 17 | void redirectStdErr(String path); 18 | Uint8List generateTls(); 19 | void setupShutdownNotification(); 20 | } 21 | 22 | @FlutterApi() 23 | abstract class DarwinFlutterApi { 24 | void onSystemWillShutdown(); 25 | void onSystemWillRestart(); 26 | void onSystemWillSleep(); 27 | } 28 | 29 | // class SplitTunnelSettings { 30 | // SplitTunnelSettings({this.blackList, this.whiteList}); 31 | // List? blackList; 32 | // List? whiteList; 33 | // } 34 | -------------------------------------------------------------------------------- /lib/iap/iap.dart: -------------------------------------------------------------------------------- 1 | import 'package:in_app_purchase/in_app_purchase.dart'; 2 | 3 | // Gives the option to override in tests. 4 | class IAPConnection { 5 | static InAppPurchase? _instance; 6 | static set instance(InAppPurchase value) { 7 | _instance = value; 8 | } 9 | 10 | static InAppPurchase get instance { 11 | _instance ??= InAppPurchase.instance; 12 | return _instance!; 13 | } 14 | } 15 | 16 | class ProductData { 17 | final String productId; 18 | final ProductType type; 19 | 20 | const ProductData(this.productId, this.type); 21 | } 22 | 23 | enum ProductType { 24 | subscription, 25 | nonSubscription, 26 | } 27 | 28 | const productDataMap = { 29 | 'vproxy_pro_lifetime': ProductData( 30 | 'vproxy_pro_lifetime', 31 | ProductType.nonSubscription, 32 | ), 33 | 'vproxy_pro_android': ProductData( 34 | 'vproxy_pro_android', 35 | ProductType.nonSubscription, 36 | ), 37 | }; 38 | -------------------------------------------------------------------------------- /assets/icons/flags/other/nato.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /lib/app/blocs/inbound.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter_bloc/flutter_bloc.dart'; 2 | import 'package:vx/app/blocs/proxy_selector/proxy_selector_bloc.dart'; 3 | import 'package:vx/app/x_controller.dart'; 4 | import 'package:vx/main.dart'; 5 | import 'package:vx/pref_helper.dart'; 6 | import 'package:vx/utils/logger.dart'; 7 | 8 | class InboundCubit extends Cubit { 9 | InboundCubit(this.prefHelper, this.xController) 10 | : super(prefHelper.inboundMode); 11 | 12 | final PrefHelper prefHelper; 13 | final XController xController; 14 | 15 | void setInboundMode(InboundMode mode) async { 16 | emit(mode); 17 | prefHelper.setInboundMode(mode); 18 | try { 19 | await xController.changeInboundMode(); 20 | } catch (e) { 21 | logger.e('changeInboundMode error', error: e); 22 | snack(rootLocalizations()?.failedToChangeInboundMode); 23 | // await reportError(e, StackTrace.current); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /lib/common/extension.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/material.dart'; 2 | 3 | extension BreakpointUtils on BoxConstraints { 4 | bool get isCompact => maxWidth < 600; 5 | bool get isMedium => maxWidth >= 600 && maxWidth < 840; 6 | bool get isExpanded => maxWidth >= 840 && maxWidth < 1200; 7 | bool get isLarge => maxWidth >= 1200 && maxWidth < 1600; 8 | bool get isSuperLarge => maxWidth >= 1600; 9 | // Layout get layout { 10 | // if (isCompact) { 11 | // return Layout.compact; 12 | // } 13 | // } 14 | } 15 | 16 | extension LayoutUtils on Size { 17 | bool get isCompact => width < 600; 18 | bool get isMedium => width >= 600 && width < 840; 19 | bool get compactOrMedium => width < 840; 20 | bool get isExpanded => width >= 840 && width < 1200; 21 | bool get isLarge => width >= 1200 && width < 1600; 22 | bool get isSuperLarge => width >= 1600; 23 | } 24 | 25 | enum Layout { compact, medium, expanded, large, superLarge } 26 | -------------------------------------------------------------------------------- /assets/icons/github-mark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /assets/icons/github-mark-white.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ios/fastlane/README.md: -------------------------------------------------------------------------------- 1 | fastlane documentation 2 | ---- 3 | 4 | # Installation 5 | 6 | Make sure you have the latest version of the Xcode command line tools installed: 7 | 8 | ```sh 9 | xcode-select --install 10 | ``` 11 | 12 | For _fastlane_ installation instructions, see [Installing _fastlane_](https://docs.fastlane.tools/#installing-fastlane) 13 | 14 | # Available Actions 15 | 16 | ## iOS 17 | 18 | ### ios beta 19 | 20 | ```sh 21 | [bundle exec] fastlane ios beta 22 | ``` 23 | 24 | Push a new beta build to TestFlight 25 | 26 | ### ios release 27 | 28 | ```sh 29 | [bundle exec] fastlane ios release 30 | ``` 31 | 32 | 33 | 34 | ---- 35 | 36 | This README.md is auto-generated and will be re-generated every time [_fastlane_](https://fastlane.tools) is run. 37 | 38 | More information about _fastlane_ can be found on [fastlane.tools](https://fastlane.tools). 39 | 40 | The documentation of _fastlane_ can be found on [docs.fastlane.tools](https://docs.fastlane.tools). 41 | -------------------------------------------------------------------------------- /lib/app/layout_provider.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/material.dart'; 2 | import 'package:vx/common/common.dart'; 3 | 4 | enum Layout { compact, medium, expanded, superExpanded } 5 | 6 | class MyLayout { 7 | double? width; 8 | double? height; 9 | Layout? layout; 10 | 11 | AppLifecycleState appstate = AppLifecycleState.resumed; 12 | bool get isDesktop => width == null ? false : width! >= 1200; 13 | bool get isCompact => width == null ? true : width! < 600; 14 | bool get compactOrMedium => width == null ? true : width! < 840; 15 | 16 | bool fullScreen() { 17 | if (desktopPlatforms && isCompact) { 18 | return true; 19 | } else if (!desktopPlatforms && compactOrMedium) { 20 | return true; 21 | } else { 22 | return false; 23 | } 24 | } 25 | 26 | void setFields(double width, double height) { 27 | // if (appstate == AppLifecycleState.paused) return; 28 | this.width = width; 29 | this.height = height; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /lib/common/bloc_observer.dart: -------------------------------------------------------------------------------- 1 | import 'package:bloc/bloc.dart'; 2 | import 'package:vx/utils/logger.dart'; 3 | 4 | class AppBlocObserver extends BlocObserver { 5 | const AppBlocObserver(); 6 | 7 | @override 8 | void onEvent(Bloc bloc, Object? event) { 9 | super.onEvent(bloc, event); 10 | // print(event); 11 | } 12 | 13 | @override 14 | void onError(BlocBase bloc, Object error, StackTrace stackTrace) { 15 | logger.e('Bloc error', error: error, stackTrace: stackTrace); 16 | super.onError(bloc, error, stackTrace); 17 | } 18 | 19 | @override 20 | void onChange(BlocBase bloc, Change change) { 21 | super.onChange(bloc, change); 22 | // print(change); 23 | } 24 | 25 | @override 26 | void onTransition( 27 | Bloc bloc, 28 | Transition transition, 29 | ) { 30 | super.onTransition(bloc, transition); 31 | logger.d(transition); 32 | } 33 | } 34 | 35 | -------------------------------------------------------------------------------- /lib/widgets/text_divider.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/material.dart'; 2 | 3 | class TextDivider extends StatelessWidget { 4 | final String text; 5 | final double thickness; 6 | 7 | const TextDivider({ 8 | super.key, 9 | required this.text, 10 | this.thickness = 1.0, 11 | }); 12 | 13 | @override 14 | Widget build(BuildContext context) { 15 | return Row( 16 | children: [ 17 | Expanded( 18 | child: Divider( 19 | thickness: thickness, 20 | endIndent: 10.0, 21 | ), 22 | ), 23 | Text( 24 | text, 25 | style: Theme.of(context).textTheme.labelMedium!.copyWith( 26 | color: Theme.of(context).colorScheme.onSurfaceVariant, 27 | ), 28 | ), 29 | Expanded( 30 | child: Divider( 31 | thickness: thickness, 32 | indent: 10.0, 33 | ), 34 | ), 35 | ], 36 | ); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /windows/runner/runner.exe.manifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PerMonitorV2 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /ios/PacketTunnel/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleIdentifier 6 | $(PRODUCT_BUNDLE_IDENTIFIER) 7 | CFBundleName 8 | $(PRODUCT_NAME) 9 | CFBundleShortVersionString 10 | $(FLUTTER_BUILD_NAME) 11 | CFBundleVersion 12 | $(FLUTTER_BUILD_NUMBER) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundlePackageType 16 | $(PRODUCT_BUNDLE_PACKAGE_TYPE) 17 | NSExtension 18 | 19 | NSExtensionPointIdentifier 20 | com.apple.networkextension.packet-tunnel 21 | NSExtensionPrincipalClass 22 | $(PRODUCT_MODULE_NAME).PacketTunnelProvider 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /lib/utils/http.dart: -------------------------------------------------------------------------------- 1 | 2 | // import 'package:dio/io.dart'; 3 | // import 'package:dio/dio.dart'; 4 | 5 | // Dio createHttpClientWithCustomTLS({ 6 | // required String trustedCertificates, 7 | // // String? clientCertPath, 8 | // // String? clientKeyPath, 9 | // }) { 10 | // Dio dio = Dio(); 11 | // (dio.httpClientAdapter as IOHttpClientAdapter).createHttpClient = () { 12 | // // client.badCertificateCallback = 13 | // // (X509Certificate cert, String host, int port) => true; 14 | 15 | // SecurityContext context = SecurityContext(withTrustedRoots: true); 16 | 17 | // context.setTrustedCertificatesBytes(utf8.encode(trustedCertificates)); 18 | 19 | // // context.useCertificateChainBytes(clientCertificate.buffer.asUint8List()); 20 | 21 | // // context.usePrivateKeyBytes(privateKey.buffer.asUint8List()); 22 | // HttpClient httpClient = HttpClient(context: context); 23 | 24 | // return httpClient; 25 | // }; 26 | // return dio; 27 | // } 28 | -------------------------------------------------------------------------------- /pigeons/windows.dart: -------------------------------------------------------------------------------- 1 | import 'package:pigeon/pigeon.dart'; 2 | 3 | @ConfigurePigeon( 4 | PigeonOptions( 5 | dartOut: 'lib/app/windows_host_api.g.dart', 6 | dartOptions: DartOptions(), 7 | cppOptions: CppOptions(namespace: 'x'), 8 | cppHeaderOut: 'windows/runner/messages.g.h', 9 | cppSourceOut: 'windows/runner/messages.g.cpp'), 10 | ) 11 | @HostApi() 12 | abstract class WindowsHostApi { 13 | // dns requests that is not from the current process and interface index is 14 | // not [index] will be blocked. 15 | // Windows only 16 | void disableDNS({required int index}); 17 | // Windows only 18 | void undoDisableDNS(); 19 | bool isRunningAsAdmin(); 20 | } 21 | 22 | // class SplitTunnelSettings { 23 | // SplitTunnelSettings({this.blackList, this.whiteList}); 24 | // List? blackList; 25 | // List? whiteList; 26 | // } 27 | 28 | @FlutterApi() 29 | abstract class MessageFlutterApi { 30 | @async 31 | void notifyShutdown(); 32 | } -------------------------------------------------------------------------------- /macos/Runner/Release.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.aps-environment 6 | development 7 | com.apple.developer.networking.networkextension 8 | 9 | packet-tunnel-provider 10 | 11 | com.apple.security.app-sandbox 12 | 13 | com.apple.security.application-groups 14 | 15 | $(TeamIdentifierPrefix)com.5vnetwork.x 16 | 17 | com.apple.security.files.user-selected.read-only 18 | 19 | com.apple.security.network.client 20 | 21 | com.apple.security.network.server 22 | 23 | keychain-access-groups 24 | 25 | $(AppIdentifierPrefix)com.google.GIDSignIn 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /macos/Runner/Assets/x.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ios/Runner/GoogleService-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | API_KEY 6 | AIzaSyDi3g5HgcoSi20RZEfdrRmgGRNzFF5hk6o 7 | GCM_SENDER_ID 8 | 479311300497 9 | PLIST_VERSION 10 | 1 11 | BUNDLE_ID 12 | com.5vnetwork.x 13 | PROJECT_ID 14 | vproxy-1407e 15 | STORAGE_BUCKET 16 | vproxy-1407e.firebasestorage.app 17 | IS_ADS_ENABLED 18 | 19 | IS_ANALYTICS_ENABLED 20 | 21 | IS_APPINVITE_ENABLED 22 | 23 | IS_GCM_ENABLED 24 | 25 | IS_SIGNIN_ENABLED 26 | 27 | GOOGLE_APP_ID 28 | 1:479311300497:ios:24983b421f94721d89bc30 29 | 30 | -------------------------------------------------------------------------------- /android/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | pluginManagement { 2 | val flutterSdkPath = run { 3 | val properties = java.util.Properties() 4 | file("local.properties").inputStream().use { properties.load(it) } 5 | val flutterSdkPath = properties.getProperty("flutter.sdk") 6 | require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" } 7 | flutterSdkPath 8 | } 9 | 10 | includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") 11 | 12 | repositories { 13 | google() 14 | mavenCentral() 15 | gradlePluginPortal() 16 | } 17 | } 18 | 19 | plugins { 20 | id("dev.flutter.flutter-plugin-loader") version "1.0.0" 21 | id("com.android.application") version "8.7.0" apply false 22 | // START: FlutterFire Configuration 23 | id("com.google.gms.google-services") version("4.3.15") apply false 24 | // END: FlutterFire Configuration 25 | id("org.jetbrains.kotlin.android") version "2.1.21" apply false 26 | } 27 | 28 | include(":app") 29 | -------------------------------------------------------------------------------- /macos/Runner/GoogleService-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | API_KEY 6 | AIzaSyDi3g5HgcoSi20RZEfdrRmgGRNzFF5hk6o 7 | GCM_SENDER_ID 8 | 479311300497 9 | PLIST_VERSION 10 | 1 11 | BUNDLE_ID 12 | com.5vnetwork.x 13 | PROJECT_ID 14 | vproxy-1407e 15 | STORAGE_BUCKET 16 | vproxy-1407e.firebasestorage.app 17 | IS_ADS_ENABLED 18 | 19 | IS_ANALYTICS_ENABLED 20 | 21 | IS_APPINVITE_ENABLED 22 | 23 | IS_GCM_ENABLED 24 | 25 | IS_SIGNIN_ENABLED 26 | 27 | GOOGLE_APP_ID 28 | 1:479311300497:ios:24983b421f94721d89bc30 29 | 30 | -------------------------------------------------------------------------------- /macos/Runner/RunnerRelease-staging.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.aps-environment 6 | development 7 | com.apple.developer.networking.networkextension 8 | 9 | packet-tunnel-provider 10 | 11 | com.apple.security.app-sandbox 12 | 13 | com.apple.security.application-groups 14 | 15 | $(TeamIdentifierPrefix)com.5vnetwork.x.staging 16 | 17 | com.apple.security.files.user-selected.read-only 18 | 19 | com.apple.security.network.client 20 | 21 | com.apple.security.network.server 22 | 23 | keychain-access-groups 24 | 25 | $(AppIdentifierPrefix)com.google.GIDSignIn 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /assets/oss/hys: -------------------------------------------------------------------------------- 1 | Copyright 2023 Toby 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 4 | 5 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 6 | 7 | THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -------------------------------------------------------------------------------- /lib/widgets/delete_menu_anchor.dart: -------------------------------------------------------------------------------- 1 | import 'package:flutter/cupertino.dart'; 2 | import 'package:flutter/material.dart'; 3 | import 'package:vx/l10n/app_localizations.dart'; 4 | 5 | class DeleteMenuAnchor extends StatelessWidget { 6 | const DeleteMenuAnchor( 7 | {super.key, required this.child, required this.onDelete}); 8 | final Widget child; 9 | final Function(BuildContext)? onDelete; 10 | 11 | @override 12 | Widget build(BuildContext context) { 13 | return MenuAnchor( 14 | builder: (context, controller, child) { 15 | return GestureDetector( 16 | onSecondaryTap: () => controller.open(), 17 | onLongPress: () => controller.open(), 18 | child: child, 19 | ); 20 | }, 21 | menuChildren: [ 22 | MenuItemButton( 23 | onPressed: 24 | onDelete != null ? () => onDelete?.call(context) : null, 25 | child: Text(AppLocalizations.of(context)!.delete)), 26 | ], 27 | child: child); 28 | } 29 | } 30 | --------------------------------------------------------------------------------